Breadcrumbs
- Information Security
- Diplomarbeiten
- Fuzzing – Brute-Force CVE Generator
Fuzzing – Brute-Force CVE Generator
Master-Studiengang Information SecurityDipl.-Ing. Kevin Schneider, BSc
Betreuer: Dipl.-Ing. Dr. Martin Pirker, Bakk.
Ausgangslage
Das Testen von Software stellt eine wichtige Aufgabe in der Qualitätssicherung dar. Fuzzing ist eine der Möglichkeiten, die beim Software Testing benutzt werden kann, um Fehler und Sicherheitslücken möglichst automatisiert zu entdecken. Die Entwicklung verschiedenster Typen von Fuzzern hat das Thema Fuzzing zu einer praktisch relevanten Vorgangsweise beim Testen von Software gemacht. Obwohl Fuzzing als aufwendige „Brute-Force“ Möglichkeit bekannt ist, kann ein modernes Fuzzing bereits sehr gute Ergebnisse erzielen – folgt man den Veröffentlichungen und Berichten von Fuzzing-Projekten und großer Unternehmen der IT-Branche, mit deren scheinbar endlosen Auflistungen an gefundenen Fehlern und bestätigten Schwachstellen (CVEs) in verschiedenster Software.
Ziel
Diese Arbeit beschäftigte sich erstens mit der Auswahl passender Fuzzer oder Services zu einem konkreten Szenario. Zweites Ziel war die praktische Erprobung von Fuzzern. Die praktischen Ergebnisse eines Stabilitätstests eines Windows Drivers mittels Fuzzing und den dabei auftretenden Problemen lieferte in weiterer Folge die Ausgangslage für die Entwicklung eines neuen, besseren Fuzzing-Konzepts.
Ergebnis
Im durchgeführten Stabilitätstest konnten mehrere Fehler mittels Fuzzing entdeckt werden. Die Fehler wurden den Entwicklern des Windows Drivers weitergemeldet und somit konnte eine Verbesserung durch den Einsatz von Fuzzing erzielt werden. Basierend auf der durchgeführten Methodik des Stabilitätstests konnten aufgetretene Probleme und Verbesserungspotential im Anwendungsbereich Kernel Fuzzing von Closed-Source Systemen erkannt werden. Zum Abschluss wurde ein Konzept vorgestellt, welches eine zukünftige Anwendung von Fuzzern in diesem Bereich unterstützen soll.
Ausblick
Mit dem Aufkommen von neuen Konzepten und Technologien könnte auch ein weiterer Fortschritt im Fuzzing gelingen. Besonders die Entwicklungen hin zu neuen Dienstleistungen wie „Fuzzing as a Service“ könnten in der Zukunft eine wichtige Rolle spielen.