Statische vs. dynamische Analysen – wer findet den Fehler besser?

Analyse LupeEiner der Gründe für das gesteigerte Interesse an Anwendungssicherheit, gerade in den letzten Jahren, ist der sichtbare Anstieg von Hackerangriffen. Schwachstellen in Web-Anwendungen und Anwendungscodes zählen dabei zu den größten Einfalltoren für Cyberkriminelle.

Es gibt mittlerweile eine Vielzahl von Testmethoden auf dem Markt. Ganz oben auf der Liste stehen statische und dynamische Analyseverfahren. Diese sollten in keiner Test-Infrastruktur fehlen. Doch was ist das und welche Vorteile bieten sie?

Anzeige
Static Analysis (SAST)

Die Binary-SAST-Technologie – auch bekannt als White Box-Testing – analysiert Anwendungen auf Sicherheitsschwachstellen im Code – ohne Zugang zum Quellcode zu benötigen. Die statische Binär-Analyse ist die Grundlage für die Einführung einer sicheren Entwicklung und bildet oft den ersten Schritt in der Test-Infrastruktur. Denn: Zum einem liefert sie das zurzeit umfassendste Ergebnis für Sicherheitstests von Anwendungen. Zum anderen gibt sie der Entwicklung alle notwendigen Informationen an die Hand, um die gefundenen Probleme leicht zu beheben. Ein weiteres Plus: Durch die Nutzung werden Entwickler konstant in der sicheren Software-Entwicklung geschult.

Dynamic Analysis (DAST)

Dynamic Application Security Testing (DAST) – Black Box Testing– identifiziert Schwachstellen in der Architektur und in Web-Anwendungen, bevor Cyberkriminelle diese entdecken und ausnutzen. Der Tester verfährt dabei wie die Angreifer selbst, wenn diese auf die Suche nach möglichen Angriffszielen gehen, und führt mit der dynamischen Analyse automatisiert Angriffe auf kritische Webanwendungen wie Formulare oder Online-Shops durch.

Vor- und Nachteile

Die Schwachstellen, die nur von DAST gefunden werden – darunter solche in der Deployment und Server-Konfiguration – liegen außerhalb des Anwendungscode-Kontextes, haben aber einen umfassenden Einfluss auf die Betriebslaufzeit der Anwendung. Das kann dazu führen, dass private Web-Anwendungsressourcen (z.B. Konfigurationsdateien) leaken oder auf den Betrieb über einen unsicheren Kanal herunterstufen.

Der Erfolg von dynamische Analyseverfahren beruht darauf, dass sie die Angriffsfläche einer Anwendung absuchen und analysieren. Das erfordert allerdings Zeit, um eine hohe Code-Abdeckung zu gewährleisten. Leider ist oft zu beobachten, dass Unternehmen beispielsweise aus Kostengründen die Zeitfenster für eine solche Analyse kürzen. Firmeneigene Workflows, die nicht automatisiert sind, stellen DAST ebenfalls vor Herausforderungen. Daher kann es sein, dass die Häufigkeit der von DAST entdeckten Schwachstellen die wirkliche Situation nicht korrekt abbilden kann.

Auch statische Analysen stoßen bei nicht-automatisierten, firmeneigenen Abläufen an ihre Grenzen. Denn: Ohne Ressourcen wie Datenbanken und Dateisysteme sind solche Analysen nicht wirklich verwertbar. Statische Analysen geben vor allem Auskunft über die Codequalität einer Anwendung. Codefehler sind meist sehr einfach zu beheben, weshalb statische Analysen eine höhere Fix-Rate (28 Prozent) aufweisen, als dynamische Analysen.

Nicht jedes der beiden Verfahren eignet sich für bestimmte Schwachstellen. Beide Bewertungstechniken unterscheiden sich grundlegend und weisen dadurch unterschiedliche Prävalenzen – Schwachstellenhäufigkeiten – auf:

Veracode: Testverfahren auf Fehlersuche

Anwendungsgebiete

Die Wahl des passenden Analyse-Tools hängt ganz allein vom Anwendungsgebiet ab. Möchte man eine schon bestehende Web-Anwendung testen, bietet DAST eindeutige Vorteile. Steckt eine Anwendung noch in der Entwicklungsphase, ist eine statische Analyse zu empfehlen. Allerdings reicht keines der beiden Tools aus, um eine wirklich sichere Applikation zu garantieren. Es geht nämlich nicht nur darum eine Schwachstelle zu finden, sondern sie auch zu reparieren.

Weitere Informationen zu diesem Thema finden Sie in Veracodes aktuellem State of Software Security Report hier zum Download.

http://de.veracode.net/

Anzeige

Weitere Artikel

Newsletter
Newsletter Box

Mit Klick auf den Button "Jetzt Anmelden" stimme ich der Datenschutzerklärung zu.