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.
Themen-Forum Penetration Tests