Qualität durch Zufall

Techniken wie Fuzzing stellen Qualitätssicherung der Softwarehersteller vor neue Herausforderungen.

vorlesen Druckansicht
Lesezeit: 2 Min.
Von

Ob kommerzielles Softwareunternehmen oder OpenSource-Gemeinde, ein Problem haben sie gemeinsam: Qualitätssicherung der Software. Hunderte Programmierer durchforsten die Quellcodes per Hand oder mit speziellen Code-Auditing-Werkzeugen nach Programmierfehlern, die zu Sicherheitslücken führen könnten.

Gerade Microsoft hat sich seit nunmehr zwei Jahren der Sicherheit verschrieben. Mit dem Service Pack 2 fĂĽr Windows XP hat das Unternehmen sein Betriebsystem und auch den Internet Explorer ĂĽberarbeitet mit dem Ziel, seinen Kunden ein sichereres System zu liefern.

Im Juli schickte sich jedoch ein 24-jähriger Sicherheitsexperte aus Texas an, den Weltkonzern vorzuführen. Der Metasploit-Entwickler H. D. Moore feierte einen Month of the Browser Bugs (MoBB) und demonstrierte jeden Tag im Juli einen Fehler in Webbrowsern. Microsofts Browser stürzte durch 25 dieser Lücken ab. Wieviele der Lecks sich zum Einschleusen von Schadcode eignen, ist noch unklar; einen Patch gibt es auch nach dem August-Patchday für keines davon.

Fuzzing-Werkzeuge, wie sie H. D. Moore genutzt hat, um mit fehlerhaften Webseiten, Bildern oder Netzwerkpaketen Schwachstellen aufzuspĂĽren, sind noch relativ neu. Sie nehmen gĂĽltige Ausgangsdaten und ersetzen darin gezielt Felder durch Zufallswerte. So lassen sich Fehler entdecken, die bei den traditionellen Code-Audits bislang nicht auffielen. Der drastische Anstieg der in Microsoft-Produkten gefundenen SicherheitslĂĽcken legt den Verdacht nahe, dass solche Fuzzer zunehmend eingesetzt werden: Die Anzahl der kritischen SicherheitslĂĽcken, die Microsoft diese Jahr gestopft hat, liegt schon jetzt weit ĂĽber der Gesamtanzahl der LĂĽcken im vergangenen Jahr. Und beispielsweise die jĂĽngst geschlossene Schwachstelle in Windows beim Verarbeiten von fehlerhaften DNS-Paketen sieht sehr danach aus, als sei sie mit einem Fuzzing-Tool entdeckt worden.

Solche Lücken werden laut Microsofts Patchday-Zusammenfassungen jedoch zumeist von externen Sicherheitsexperten und nicht von den eigenen Mitarbeitern gefunden. Offenbar reagiert die Qualitätssicherung nur langsam auf neue Techniken. Bislang nutzt kaum ein Unternehmen oder OpenSource-Projekt die zufallsbasierten Fehlersucher regelmäßig zur Softwareverbesserung. Doch neben automatischer, statischer Code-Analyse und manuellem Überprüfen von Programmquellen müssen zukünftig auch die bekannten Fuzzing-Tools zur Qualitätssicherung zum Einsatz kommen. Andernfalls ist mit dem Schlimmsten zu rechnen: Denn die Internetmafia hat ihre Zufallszahlengeneratoren mit Sicherheit schon angeworfen.

Dirk Knop (dmk)