22. November 2008

Neues von der Snake Oil Industrie

Category: Hacking,Internet,Produkte — Christian @ 17:42

Wenn es mir die Zeit erlaubt, spiele ich gerne ein wenig mit Virenscannern rum. Insbesondere die erschreckend schlechte Erkennungsquote bei trivialen Dateiveränderungen fasziniert mich immer wieder. Im Rahmen der Vorbereitung eines Vortrags habe ich ein paar Tests durchgeführt um zu sehen, wie es mit Virenscannern eigentlich so aussieht. Dafür habe ich ein bekanntes Schadprogramm verwendet, hier die Remote-Komponente von NetBus 1.70 und gekuckt, wie gut die Virenscanner diese Datei erkennen.

NetBus 1.70 ist zwar steinalt, im Kaspersky-Weblog (Viren-Almanach Nr. 8, September 2008)  stand jedoch, dass im September eine Variante von NetBus als bestgetarnter Schädling aufgetaucht ist, daher dachte ich, jeder Virenscannerhersteller müsste ein gesteigertes Interesse daran haben, dieses Programm zu erkennen.

Dazu habe ich die Patch.exe einmal direkt an Virustotal geschickt, einmal als UPX (UPX 3.03w, Optionen -f –ultra-brute) gepacktes Executable, einmal als Winzip-Archiv (Winzip Pro 10.0, bzip2-Archiv, maximale Kompression), und einmal als Winzip-gepacktes UPX.

Hier sind die Ergebnisse …

Das Programm Patch.exe wurde von den meisten Virenscannern (35/37, entspricht 94,6%) erkannt. (Die beiden Fehl-Erkennungen lasse ich mal außen vor, möglicherweise sind die Virenscanner bei Virustotal da nicht richtig konfiguriert, die lieferten bei keinem Schadprogramm ein Ergebnis.

Virustotal Netbus patch.exe Erkennungsrate

Als UPX-Binary sinkt die Erkennungsquote bereits deutlich. Nur noch 21/37 (56,76%) der Virenscanner sind korrekt dabei. Einige Virenscanner haben sich bereits auf „suspicious file“ zurückgezogen, vermutlich weil die Heuristik zwar die UPX-Kompression erkennt aber nicht mehr auspacken kann. Dabei ist UPX so weit verbreitet, dass eigentlich jeder Virenscanner damit zurechtkommen müsste.

Virustotal Netbus patch-upx.exe Erkennungsrate

Dramatisch wird es mit der BZIP2-Kompression. Mit einem Nicht-Standard-ZIP scheinen erstaunlich viele Virenscanner ein größeres Problem zu haben. Die Erkennungsquote ist bei schlappen 17/37 (45,95%). Einzig Sunbelt gibt mit der Fehlermeldung „<Corrupted Archive>“ zu, das Archivformat nicht lesen zu können. Die anderen Virenscanner täuschen Funktionalität vor die nicht vorhanden ist und melden keine Erkennung obwohl das File gar nicht korrekt gescannt werden konnte.

Virustotal Netbus patch-bzip2.exe Erkennungsrate

Und klar, die Kombination UPX+BZIP2 bricht dann alle Dämme. Die Erkennungsquote ist runter auf 14/36 (38,89%). Prevxl wurde in der Zwischenzeit vermutlich abgeschaltet, der war aber wohl falsch konfiguriert, der hat in meinen Tests nämlich nie irgendwas erkannt.

Virustotal Netbus patch-upx-bzip2.exe Erkennungsrate

Das spannende oder erschreckende dabei ist für mich, dass einfachste Methoden wie ein weit verbreiteter Binary-Packer oder ein etwas anderer Kompressionsalgorithmus im vermutlich am weitesten verbreiten Packprogramm bereits genügt, um eine Vielzahl von Virenscannern aussteigen zu lassen. Klar, sobald die Datei aus dem BZIP2-Archiv extrahiert wird, wird sie von einem Virenscanner erkannt. Aber eben nur, wenn auf dem Zielsystem dann auch ein Virenscanner installiert ist.  Und das wiederum ist auf Terminalservern oder in Produktionsanlagen nicht automatisch gegeben. Da muss man sich oft auf die Perimetersicherheit verlassen. Und dann ist man verlassen.

Ach ja,  die verwendeten vier Varianten von Netbus könnt Ihr Euch gerne hier als ZIP-Archiv herunterladen. Nur bitte Vorsicht damit! 🙂

Für die eventuell mitlesenden Teilnehmer der Secuta 2008: Das ist das, was aufgrund des schlechten Internetzugangs in dem billigen 4-*-Hotel nicht funktioniert hatte 🙁

1 Kommentar

  1. Kommentare gesperrt wegen Spam

    Comment by Christian — 7. Juni 2012 @ 17:15

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.