Studie zu Dekompressionsbomben

Steffen Weber
47 Kommentare

Eigentlich schon seit mehreren Jahren bekannt, doch noch immer bereiten sogenannte Dekompressionsbomben zahlreichen Antivirenprogrammen Kopfzerbrechen und führen im schlimmsten Fall zum Absturz des Systems, während der Untersuchung einer solchen Datei.

Dekompressionsbomben sind nur wenige Kilobyte kleine gepackte Dateien, die jedoch beim Entpacken bequem auf mehrere Gigabyte anwachsen können. Beispielsweise lässt sich eine riesige Datei mit einem sich nahezu unendlich wiederholenden Zeichen wie z.B. zahlreicher Nullen hervorragend auf wenige Kilobyte packen. Notfalls indem man die bereits gepackten Daten mehrere Male durch den Kompressions-Algorithmus schickt. Will das Antivirenprogramm in diesem Archiv nach Viren suchen und geht dabei unvorsichtig an die Sache heran, kann das System entweder für zumindest einige Minuten sehr träge werden oder gar komplett abstürzen, schließlich dauert einerseits das eigentliche Dekomprimieren und andererseits das Schreiben der ausgepackten Daten auf die Festplatte - denn der Arbeitsspeicher wird wohl kaum ausreichen - seine Zeit.

Wie können Antivirenprogramme bei dieser Angelegenheit vorsichtiger vorgehen? Gängige Archive enthalten im Header Informationen über die zu erwartende Größe der entpackten Dateien. Die Sache hat jedoch einen Haken, denn zum einen kennt das vor allem in der UNIX-Welt aufgrund beachtlicher Datenkompression bekannte BZIP2-Format keine solche Angabe und zum anderen lässt sich zumindest bei ZIP-Archiven, welche trotz ihrer vergleichsweise schlechten Komprimierung aufgrund breitflächiger Unterstützung vielerorts verwendet werden, diese Angabe, wie groß die entpackten Daten sein werden, im Nachhinein fälschen, sodass diese Information praktisch nutzlos ist.

Die Antivirenprogramme müssten also während des Dekomprimierens ständig die Größe der entpackten Daten im Auge behalten, um auf diese Weise eine Dekompressionsbombe ausfindig zu machen. Wie die Studie zeigt, sind dazu nur wenige Virenscanner in der Lage. Überzeugen können eigentlich nur der in erster Linie auf UNIX Mail-Servern eingesetzt Scanner Amavisd-New und AntiVir für Linux von H+BEDV. Kurios ist das Ergebnis des Kaspersky Virenscanners, denn während ältere Versionen die Bomben entdeckten, scheinen neuere Versionen dieses Feature wieder verlernt zu haben.

Doch auch Webbrowser sind anfällig für solche Attacken, schließlich ist die Unterstützung für komprimierte Auslieferung von HTML-, Javascript- oder CSS-Dateien mittlerweile Standard, zudem sind die im Web eingesetzten JPG-, GIF- und PNG-Bilder grundsätzlich komprimiert. Erstellt man ein einfarbiges Bild mit riesigen Ausmaßen, lässt sich dieses sehr gut komprimieren. Die Studie zeigt, dass lediglich Microsofts Internet Explorer in Version 5 mit der komprimierten HTML-Datei nicht überfordert gewesen zu sein scheint, neuere Versionen dieses Browser schneiden jedoch ähnlich schlecht ab wie die Konkurrenz. Während bei den komprimierten Bildern alle getesteten Browser mit Ausnahme von Konqueror beim GIF-Format keine Probleme haben, können bei PNG-Test lediglich der Internet Explorer 6 und Mozilla unter Windows zumindest Teilerfolge verbuchen. Mozilla stellt das Bild zwar nicht dar, stürzt jedoch auch nicht ab, und der Internet Explorer Fehlermeldungen aus.

Auch bei den anderen Anwendungen wie OpenOffice und The Gimp zeigen sich Schwächen. Während OpenOffice zwar mit der GIF- und PNG-Testdatei umgehen konnte, jedoch für Dekompressionsbomben in Form von ZIP-Dateien anfällig ist, fällt The Gimp beim PNG-Test durch. Insgesamt scheint es also erheblichen Nachbesserungsbedarf über alle Anwendungen hinweg zu geben, in erster Linie sollten sich jedoch die Virenscanner-Hersteller angesprochen fühlen.

25 Jahre ComputerBase!
Im Podcast erinnern sich Frank, Steffen und Jan daran, wie im Jahr 1999 alles begann.