Flashback-Trojaner: So funktioniert der Mac-Schädling

Laut einer Statistik des russischen Anti-Viren-Spezialisten Dr. Web hat Flashback über 700.000 Macs infiziert – mehr als jede andere Malware im Apple-Umfeld zuvor. Mac & i analysiert, wie der Trojaner funktioniert.

In Pocket speichern vorlesen Druckansicht 37 Kommentare lesen
Lesezeit: 17 Min.
Von
  • Markus Möller
Inhaltsverzeichnis

Nach Monaten eher mäßiger Verbreitung verhalf ausgerechnet Apple durch einen zu späten Java-Bugfix dem Flashback-Trojaner zu dessen Karrieresprung. Die ersten Versionen der Malware täuschten noch vor, ein Flash-Installer zu sein. Jüngere Varianten gehen allerdings einen anderen, effizienteren Weg, der das Zutun des Anwenders nicht mehr benötigt.

Ältere Versionen der Malware tarnten sich als Flash-Installer. Die aktuelle Variante braucht diese Hilfe nicht mehr und installiert sich bereits beim Besuch einer Webseite, sofern eine veraltete Java-Version auf dem Rechner des Anwenders installiert ist.

Ist Java im Browser aktiviert, kann Schadcode beim Besuch einer Webseite unbemerkt auf den Rechner gelangen (Drive-by-Infection). Der Fehler in Java tritt auf, wenn die Laufzeitumgebung die passend präparierte Java-Klasse AtomicReferenceArray verarbeitet. Damit wird dem Angreifer ermöglicht, mit Benutzer-Rechten Dateien auf die Festplatte zu schreiben und auszuführen. Das ermöglicht es der Malware, ein beliebiges Programm vom Server des Angreifers herunterzuladen und zu starten. Die Java-Sandbox für Applets verhindert normalerweise solche Zugriffe. Denn nur, wenn ein Applet sich mit einem Sicherheits-Zertifikat ausweisen kann und der Benutzer dieses Zertifikat akzeptiert, kann das Applet außerhalb der Sandbox laufen. Der beschriebene Java-Bug ist für Angriffe hervorragend geeignet und sehr einfach und zuverlässig auszulösen.

Laut Berechnungen des Antiviren-Herstellers Symantec geht die Zahl der mit dem Flashback-Trojaner infizierten Systeme bereits zurück.

(Bild: Symantec)

Es gibt auch weniger effiziente Flashback-Varianten. Diese verwenden den Sandbox-Escape-Bug zum autonomen Downloaden nicht, sondern lassen vom Benutzer ein ungültiges Applet-Zertifikat abnicken. Dieses Vorgehen ist nur bei aktualisiertem Java notwendig. Zur hohen Verbreitung von Flashback hat jedoch zweifellos seine Automatik-Variante beigetragen.

Damit die Malware auf den Mac gelangt, genügt es, eine kompromittierte WordPress-Seite anzusurfen, bei der das mit der Webseite geladene Applet die initialen Schädlings-Dateien automatisch auf die Platte schreibt: Im Benutzer-Verzeichnis des Anwenders landet ein Updater sowie ein LaunchAgent, um ihn zu starten. Im Ordner /tmp speichert Flashback zusätzlich einen Downloader. Ist diese erste Stufe der Infektion erfolgreich, meldet sich der Updater bei einem bestimmten Server und aktualisiert sich bei dieser Gelegenheit gegebenenfalls selbst. Den eigentlichen Schadcode, den Payload, versucht der Downloader anschließend täglich aktualisiert von einem der Command & Control-Server herunterzuladen, der ihn mit weiteren Befehlen oder Updates versorgt. Bemerkenswert ist, dass sogar eine Lastverteilung vorgesehen ist, die einen zufälligen Server aus allen möglichen C&C-Hosts auswählt. In den Apple-Discussions wird eine solche tatsächlich nachträglich heruntergeladene dynamische Library diskutiert.

Das dann automatisch gestartete Trojanische Pferd täuscht einen Software-Update-Dialog vor, um optional an Admin-Namen und -Passwort zu gelangen. Je nachdem, ob der Anwender darauf hereinfällt oder nicht, variiert die Malware ab hier ihr Vorgehen: Bekommt sie das Admin-Passwort, kann sie sich damit gegenüber dem System authentifizieren und auf Root wechseln. Anschließend legt sie eine dynamisch ladbare Library sowie eine Konfiguration innerhalb des Safari-Bundles ab, um diese beim Start von Safari zu laden. Damit sind dann alle Benutzer dieses Rechners, die Safari aufrufen, betroffen. Im Safari-Bundle ist die Library recht gut versteckt.

War der Anwender misstrauisch und hat keine Admin-Daten eingetippt, kann die Malware nicht an Root-Rechte kommen. Da sie ohne die notwendigen Rechte das Safari-Bundle nicht manipulieren kann, legt sie eine bösartige Library etwas weniger gut versteckt im gemeinsamen /users/shared-Verzeichnis ab. Diese konfiguriert sie im Verzeichnis des Benutzers so, dass sie nicht nur in Safari, sondern in jedes Programm injiziert wird. In diesem Fall ist zwar nur einer der Benutzer dieses Rechners betroffen, aber dafür jedes von ihm gestartete Programm. Primäres Ziel der aktuellen Flashback-Versionen ist in beiden Fällen immer, den Netzwerkverkehr des Safari-Browsers auszuspionieren und zu verändern. Das jedenfalls legt die Art der manipulierten Library-Funktionen nahe. Tatsächlich bestätigte Kaspersky gegenüber Mac & i, dass die Schadsoftware Suchmaschinen-Ergebnisse manipuliert. Damit ergaunern sich mutmaßlich osteuropäische Cyber-Gangs Kleinbeträge durch Werbeeinnahmen.