253889

Virenscanner und das Magic Byte

02.11.2005 | 15:31 Uhr |

Etliche Virenscanner haben Probleme mit der richtigen Erkennung des Dateityps.

Eine ganze Reihe von Virenscannern lassen sich nach Angaben zweier Sicherheitsforscher mit einem Trick davon abhalten bekannte Viren in einer ausführbaren Datei zu entdecken. Andrey Bayora und Wayne Langlois stellen diese Methode in kürzlich veröffentlichten Aufsätzen dar.

Die Windows-typische Unterscheidung von Dateitypen über die Endung des Dateinamens (etwa ".exe") hat bei den meisten Antivirus-Produkten längst ausgedient. Sie bietet Programmierern von Schädlingen einfach zuviele Möglichkeiten für die Umgehung von Virenscannern. Stattdessen versuchen Antivirus-Programme ausführbare und damit potenziell gefährliche Dateien an bestimmten Merkmalen zu erkennen.

So enthalten verschiedene Dateitypen einen Kopf ("Header"), der meist dazu dient, die Struktur der Datei oder deren Inhalt zu beschreiben. So enthält eine ZIP-Datei unter anderem eine Liste der in ihr enthaltenen komprimierten Dateien sowie Angaben über die Kompressionsmethode und die Dateigröße.

Typische EXE-Dateien für Windows beginnen mit "MZ" (hexadezimal: "4D5A"), gerne auch als "Magic Byte" bezeichnet. Es gibt jedoch auch Dateitypen, die keine Header haben, zum Beispiel einfache Textdateien. Schließlich gibt auch noch Dateitypen, deren Header keine festgelegte Position in der Datei haben. Sie müssen also nicht unbedingt am Anfang stehen, denn das öffnende Programm durchsucht die Datei nach ihnen. Das bedeutet, dass vor dem Header beliebige, bedeutungslose Daten stehen können. JPEG-Dateien sind ein Beispiel dafür.

Ausgehend von der im Jahr 2004 entdeckten JPEG-Sicherheitslücke MS04-028 entwickelte Andrey Bayora ein Konzept, bei dem eine Datei mehrere verschiedene Header enthalten kann. Wayne Langlois setzte die Idee in eine Demo-Datei um. Je nach Dateiendung (hier: EXE, HTML, EML) wird sie von Windows einem jeweils anderen Programm zum Öffnen vorgesetzt, das einen anderen Header auswertet. Zu jedem Header enthält die Datei einen passenden Code-Teil. Im Grunde ist es eine HTML-Datei, die in einer Mail steckt, die wiederum in einer EXE-Datei steckt. Die Demo-Datei ist ansonsten harmlos.

Um zu zeigen, dass Virenscanner mit eine solchen Methode getäuscht werden können, benutzt Bayora bekannte Script-Viren, die an sich aus Textdateien bestehen. Er stellt diesen Dateien den Header einer ausführbaren Datei voran. Damit hebelt er die Erkennungsroutinen vieler Antivirus-Programme aus. Die weiterhin funktionierenden Script-Viren, deren Programm-Code unangetastet bleibt, werden nicht mehr erkannt. Die anfälligen Virenscanner meinen eine EXE-Datei vor sich zu haben und prüfen sie wohl deshalb nicht mehr auf enthaltenen Script-Code.

Aktuell betroffen sind nach Angabe von Bayora unter anderem die Produkte und Hersteller AVG, Dr Web, Etrust, F-Prot, Ikarus, Kaspersky und Panda. Andrey Bayora gibt ferner an, diese Anfälligkeit Mitte Juni 2005 an die betreffenden Hersteller gemeldet zu haben. Da von diesen keine oder von ihm als unzureichend angesehene Reaktionen kamen, hat er sich Ende Oktober zur Veröffentlichung entschlossen.

Einführung, von Wayne Langlois
Advisory, von Andrey Bayora

0 Kommentare zu diesem Artikel
253889