Erster Banking-Trojaner für Linux analysiert

Avast hat den bislang wohl ersten Online-Banking-Trojaner, der es auf Linux-Nutzer abgesehen hat, in seinem Virenlabor untersucht. Dabei zeigte sich, dass sich der Entwickler große Mühe gegeben hat, damit sein Baby unentdeckt bleibt.

In Pocket speichern vorlesen Druckansicht 596 Kommentare lesen
Lesezeit: 3 Min.
Von
  • Ronald Eikenberg

Der Antivirenhersteller Avast hat den ersten Banking-Trojaner für Linux einer detaillierten Analyse unterzogen. Dabei zeigte sich, dass der Trojaner-Entwickler einigen Aufwand betrieben hat, um sein Werk selbst vor geschulten Augen zu verstecken.

Der Aufbau von "Hand of Thief". Das Gros des Codes ist verschlüsselt und wird erst freigegeben, wenn die Luft rein ist.

(Bild: Avast)

Es fängt damit an, dass die Linux-Malware Hand of Thief größtenteils verschlüsselt ist. Nach dem Start schaut sie sich erst mal ausführlich auf dem System um: Die Malware versucht herauszufinden, ob sie in einer virtuellen Maschine läuft – und damit potenziell unter Beobachtung eines Virenforscher steht. Hierzu durchsucht sie die von cpuinfo ausgegebenen Prozessorinformationen nach Zeichenfolgen wie "QEMU". Die SCSI-Geräte durchfilzt sie unter anderem nach "VMWARE". Wird der Schädling fündig, bricht er die Ausführung sofort ab. Das Gleiche geschieht auf Systemen, die mittels chroot abgesichert sind.

Wenn sich die Malware einigermaßen sicher ist, dass sie nicht auf dem virtuellen Analysesystem eines Virenlabors gelandet ist, beginnt sie mit der Infektion des Rechners. Damit der Schädling nach jedem Systemstart ausgeführt wird, legt er eine Konfigurationsdatei namens system-firewall.desktop im Pfad ~/.config/autostart an. Anschließend entschlüsselt er den eigentlichen Schadcode als update_db in den tmp-Ordner. Das Shared Object wird mit wenigen Ausnahmen in sämtliche Prozesse injiziert.

Es startet zwei Threads: Einer sorgt dafür, dass ein Formgrabber in Chrome, Chromium und Firefox injiziert wird, der in Web-Formulare eingetippte Daten abgreift. Der andere Thread kümmert sich um die Kommunikation mit dem Command-and-Control-Server (C&C-Server), welcher die eingesammelten Daten entgegen nimmt und der Malware neue Aufträge erteilen kann. Der Angreifer kann der Malware darüber etwa befehlen, eine Reverse Shell zu starten, durch die er aus der Ferne Zugang zum infizierten Rechner hat.

Der Entwickler des Linux-Trojaners hat offensichtlich ein Herz für ASCII-Art.

(Bild: Avast)

Auch nach der Infektion versucht der Trojaner zu vermeiden, dass sein Tun analysiert wird: Entdeckt er in der Prozessliste ein Netzwerkanalyse-Tool wie tcpdump oder Wireshark, stellt er die Kommunikation mit seinem C&C-Server vorübergehend ein. Avast entdeckte in der Malware außerdem eine exportierte Funktion namens drow_image(), durch die sich der Virenschreiber offenbar in seinem Werk verewigt hat: Die Funktion gibt ein ASCII-Art mit dem Schriftzug "Coded by Hand of Thief" aus, womit auch klar ist, woher die Malware ihren Namen hat.

Wie verbreitet der Linux-Trojaner ist, dazu macht Avast keine Angaben. Bekannt wurde der Schädling, nachdem die Sicherheitsfirma RSA ihn in einem Untergrundforum entdeckt hatte. Dort wurde er zu einem Preis von 2000 US-Dollar (rund 1500 Euro) zum Kauf angeboten. Laut RSA soll eine professionelle Truppe aus Russland dahinterstecken. Die Malware soll auf 15 Linux-Distributionen laufen – darunter Ubuntu, Fedora und Debian.

Update 28.8.2013, 9:20: Formulierung zur Reverse Shell geändert: Das ursprüngliche "volle Kontrolle" suggerierte, dass der Angreifer automatisch Root-Rechte bekäme. Die Shell läuft jedoch zunächst lediglich mit den Rechten des infizierten Anwenders. Root-Rechte kann der Angreifer dann jedoch durch Ausnutzen einer Local-Privilege-Escalation-Lücke erlangen. (rei)