Abo
  • IT-Karriere:

AVG: Viren-Heuristik ausgetrickst

Antiviren-Programme versuchen mittels Emulation, das Verhalten von unbekannten Programmen zu untersuchen und so verdächtigen Dateien auf die Spur zu kommen. Doch die Erkennung lässt sich oft trivial umgehen.

Artikel veröffentlicht am , Hanno Böck
Kyle Adams auf der BSides Las Vegas.
Kyle Adams auf der BSides Las Vegas. (Bild: Hanno Böck)

Täglich wird das Internet mit neuer Malware überschwemmt. Früher verließen sich Antiviren-Programme vor allem darauf, bekannte bösartige Programme anhand von Signaturen zu erkennen. Doch diese Methode funktioniert kaum noch. Inzwischen wird daher verstärkt versucht, generisch zu erkennen, ob sich ein Programm wie Malware verhält. Kyle Adams von der Firma Juniper zeigte auf der B-Sides-Konferenz in Las Vegas, wie einfach sich derartige heuristische Mechanismen austricksen lassen.

Stellenmarkt
  1. mWGmy World Germany GmbH, Köln
  2. Technische Informationsbibliothek (TIB), Hannover

Adams begann damit, einen trivialen Virus zu schreiben. Als Programmiersprache wählte er Javascript. Unter Windows lassen sich Standalone-Javascript-Programme in sogenannten Windows-Script-Files (Dateiendung WSF) ausführen. Die WSF-Datei wurde mittels des Windows-eigenen Tools IExpress in eine EXE-Datei umgewandelt. IExpress ist in der Lage, selbstentpackende Archive zu erstellen, die beim Aufrufen entpackt und ausgeführt werden.

Verhalten wie typische Malware

Das Beispielprogramm verhielt sich wie typische Malware: Es versuchte, sich in den Autostart-Ordner von Windows einzutragen. Falls es Administrator-Rechte besitzt, sorgt es dafür, dass es auch beim nächsten Systemstart mit entsprechenden Rechten geladen wird. Es lud von einem Kontrollserver Instruktionen, etwa zur Ausführung von weiterem Code, der online nachgeladen wird.

Adams sagte, dass er viele der Mechanismen, die Viren üblicherweise nutzten, in Threads auf gängigen Programmiererforen wie Stackoverflow oder dem Microsoft Developer Network (MSDN) erklärt gefunden habe. Oftmals war kaum zu übersehen, dass die gestellten Fragen sich auf die Programmierung von Malware bezogen.

Dennoch nicht erkannt

Obwohl das Beispielprogramm quasi das Musterbeispiel eines typischen Virus darstellte, erkannten vier getestete Antiviren-Engines - die Tools von Sophos, ESET, Avira und Symantec - das Programm nicht als Malware. Einzig das Programm AVG entdeckte den bösartigen Code.

AVG führte offenbar eine Emulation des Javascript-Codes durch und schlug wegen des verdächtigen Verhaltens Alarm. Doch sonderlich ausgefeilt waren die Methoden dabei nicht: Nach einigen Beobachtungen stellte Adams fest, dass die Emulation offenbar nur eine bestimmte feste Zahl von Instruktionen ausführte. Das simple Einfügen einer Schleife, die 80.000 mal nichts tat, führte schon dazu, dass AVG das Programm wieder für harmlos hielt.

Einfache Methoden hebeln Emulation aus

Obwohl dieser einfache Trick ausreichte, die Heuristik auszuhebeln, suchte Adams nach weiteren Methoden. So war es ihm möglich, mit verschiedenen Funktionen im Virencode zu erkennen, ob der Virus sich gerade in der Emulation befindet, und demnach zu entscheiden, ob verdächtiger Code ausgeführt wird. HTTP-Requests wurden beispielsweise automatisch mit einer korrekten Antwort (HTTP-Code 200) und einer leeren Datei beantwortet. Mit einem Zugriff auf eine nichtexistente Domain ließ sich das abfragen. Schreibzugriffe auf den Windows-Ordner System Volume Information sollten immer einen Zugriffsfehler erzeugen, die Emulation von AVG implementierte aber keinerlei Rechteverwaltung bei Dateisystemzugriffen. Dort ist ein Schreibzugriff immer möglich und erzeugt nie einen Fehler.

Insgesamt fand Adams sieben Möglichkeiten, die Heuristik von AVG auszutricksen. Würden alle sieben auf einmal umgesetzt, könnten wahrscheinlich die meisten oder sogar alle Antiviren-Programme überlistet werden.

Wie drastisch diese Probleme sein könnten, zeigte Adams in einem letzten Beispiel. Diesmal verwendete er nicht Javascript, sondern die Windows-Skriptsprache Visual Basic Script. Er nahm den Code des 14 Jahre alten ILOVEYOU-Virus, einer der am weitesten verbreiteten Computerviren aller Zeiten. Adams fügte lediglich eine Schleife ein, die 80.000 mal nichts tat. Auch dabei scheiterte die Erkennung von AVG.



Anzeige
Spiele-Angebote
  1. 39,99€ (Release am 3. Dezember)
  2. (-70%) 5,99€
  3. 17,99€
  4. 69,99€ (Release am 25. Oktober)

nille02 07. Aug 2014

Du solltest bei dem Thema noch mal komplett von vorne anfangen. Aber eine blühende...

Mithrandir 07. Aug 2014

Jeder, der unter Windows für Android entwickelt. Und ja, das sind ein paar Leute.

user unknown 06. Aug 2014

Das hatte ich bislang noch nicht überlegt, aber kam beim Lesen des Artikels drauf: Das...

Destroyer2442 06. Aug 2014

bin gerade beeindruckt, dass es Delphi überhaupt noch gibt, ewig nichts mehr von gehört ^^-

0xDEADC0DE 06. Aug 2014

Heuristik ist nicht deren einziges Geschäftsmodell, muss ich mich nun mit Troll Öl...


Folgen Sie uns
       


Nokia 2720 Flip - Hands on

Mit dem Nokia 2720 Flip hat HMD Global ein neues Klapphandy vorgestellt. Dank dem Betriebssystem KaiOS lassen sich auch Apps wie Google Maps oder Whatsapp verwenden.

Nokia 2720 Flip - Hands on Video aufrufen
IT-Sicherheit: Auch kleine Netze brauchen eine Firewall
IT-Sicherheit
Auch kleine Netze brauchen eine Firewall

Unternehmen mit kleinem Geldbeutel verzichten häufig auf eine Firewall. Das sollten sie aber nicht tun, wenn ihnen die Sicherheit ihres Netzwerks wichtig ist.
Von Götz Güttich

  1. Anzeige Wo Daten wirklich sicher liegen
  2. Erasure Coding Das Ende von Raid kommt durch Mathematik
  3. Endpoint Security IT-Sicherheit ist ein Cocktail mit vielen Zutaten

Funkstandards: Womit funkt das smarte Heim?
Funkstandards
Womit funkt das smarte Heim?

Ob Wohnung oder Haus: Smart soll es bitte sein. Und wenn das nicht von Anfang an klappt, soll die Nachrüstung zum Smart Home so wenig aufwendig wie möglich sein. Dafür kommen vor allem Funklösungen infrage, wir stellen die gebräuchlichsten vor.
Von Jan Rähm

  1. Local Home SDK Google bietet SDK für Smarthomesteuerung im lokalen Netzwerk
  2. GE Smarte Lampe mit 11- bis 13-stufigem Resetverfahren
  3. IoT Smart Homes ohne Internet, geht das? Ja!

WLAN-Kameras ausgeknipst: Wer hat die Winkekatze geklaut?
WLAN-Kameras ausgeknipst
Wer hat die Winkekatze geklaut?

Weg ist die Winkekatze - und keine unserer vier Überwachungskameras hat den Dieb gesehen. Denn WLAN-Cams von Abus, Nest, Yi Technology und Arlo lassen sich ganz einfach ausschalten.
Von Moritz Tremmel

  1. Wi-Fi 6 Router und Clients für den neuen WLAN-Standard
  2. Wi-Fi 6 und 802.11ax Was bringt der neue WLAN-Standard?
  3. Brandenburg Vodafone errichtet 1.200 kostenlose WLAN-Hotspots

    •  /