Werkzeuge zur Codeanalyse: Sicherheits- oder Hackertools?

Auch bei anderen Methoden, etwa der statischen Quellcodeanalyse, machen Experten durchaus ähnliche Vorbehalte geltend. Die statische Quellcodeanalyse analysiert mithilfe eines automatisierten Tools den vom Entwickler geschriebenen Code. Doch auch hier gilt: Viele Dinge lassen sich nicht entdecken, dafür gibt es sehr viele False Positives, deutlich mehr als als beim Fuzzing. Das Verfahren ist sehr aufwändig.

Tools zum automatisierten Testen können zwar viele Schwachstellen aufdecken, jedoch gibt es beim heutigen Stand der sogenannten künstlichen Intelligenz keine Möglichkeit, von Menschen geschriebenen Quelltext auch nur einigermaßen vollständig auf Sicherheitslücken zu untersuchen.

Das Sicherheitsverständnis der Entwickler ist dabei größer als oft angenommen. Druck kommt häufig von den Fachabteilungen und vom Management. Dort will man „Ergebnisse sehen“. Nötig ist jedoch, dass Code von Anfang an sicher designt wird. Das sogenannte Rapid Prototyping führt oft dazu, dass zu schnell Ergebnisse erwartet werden, wenn man schon etwas Lauffähiges vorführen konnte.

Wichtig sind daher klare Anforderungen, die vor dem eigentlichen Entwicklungsprozess definiert werden. Nach wie vor werden Sicherheitslücken fast ausschließlich durch Pufferüberläufe verursacht. So gehört in diese Anforderungen etwa ein Verbot von Funktionsaufrufen ohne die maximale Größe eines Puffers als Parameter. Gleiches gilt für den Umgang mit Schleifenkonstrukten. Eine Schleife darf niemals über eine vorgegebene Puffergröße hinauslaufen.

Die Einhaltung solcher Richtlinien gestaltet sich in der Praxis oft schwierig. Management und Projektleitung sind an eine Kontrollfunktion gewöhnt, die sie in diesem Fall mangels fachlicher Qualifikation nicht ausüben können. Häufig werden dazu klassische Unternehmensberatungen angeheuert.

Doch die IT-Spezialisten der Unternehmensberatungen sind oft ebenfalls nicht ausreichend qualifiziert. So kommt es vor, dass ein Code-Review-Spezialist nicht einmal ein Betriebssystem installieren kann. Daher ist es wichtig, den manuellen Code-Review von Entwicklern mit großer Erfahrung durchführen zu lassen.

Dieser Prozess ist mit Aufwand und Kosten verbunden. Sie müssen jedoch den Kosten, die durch einen möglichen Angriff entstehen, gegenübergestellt werden. Sollten sensible Daten gestohlen werden, so kann ein immenser Imageschaden entstehen, der mitunter die Existenz eines Unternehmens gefährdet.

Code-Reviews müssen immer begleitend zur Entwicklung erfolgen. Oft bieten Beratungsunternehmen einen Code-Review nach der eigentlichen Entwicklung an. Dabei ist problematisch, dass ein kleiner Designfehler einer Datenstruktur dazu führen kann, dass große Teile des Codes umgeschrieben werden werden müssen.

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

Digitale Produkte „cyberfit“ machen

Vernetzte Produkte müssen laut Cyber Resilience Act über Möglichkeiten zur Datenverschlüsselung und Zugangsverwaltung verfügen.

4 Tagen ago

Google schließt schwerwiegende Sicherheitslücken in Chrome 131

Das jüngste Update für Windows, macOS und Linux stopft drei Löcher. Eine Anfälligkeit setzt Nutzer…

4 Tagen ago

Apple schließt Zero-Day-Lücken in iOS, iPadOS und macOS

Zwei von Google-Mitarbeitern entdeckte Schwachstellen werden bereits aktiv gegen Mac-Systeme mit Intel-Prozessoren eingesetzt. Sie erlauben…

5 Tagen ago

Gefährliche Anzeigen für Passwortmanager Bitwarden verbreiten Malware

Die Hintermänner haben es unter anderem auf Daten von Facebook-Geschäftskonten abgesehen. Opfer werden über angebliche…

5 Tagen ago

Public Cloud: Gartner erwartet 2025 weltweite Ausgaben von 723 Milliarden Dollar

Bis 2027 werden 90 Prozent der Unternehmen eine Hybrid-Cloud-Strategie umsetzen.

5 Tagen ago

iPhone 15 ist bestverkauftes Smartphone im dritten Quartal

Apple belegt in der Statistik von Counterpoint die ersten drei Plätze. Samsungs Galaxy S24 schafft…

6 Tagen ago