Spionagetrojaner Flame gibt Geheimnisse preis
Anhand zweier erbeuteter Kontrollcenter gelang es einem internationalen Forscherteam, sowohl Informationen über die Funktionsweise des im Mai entdeckten Spionage-Trojaners Flame zu finden als auch Hinweise auf bisher unentdeckte Artverwandte.
- Gerald Himmelein
Sicherheitsforscher des BSI, der UN-Behörde ITU, Kaspersky Lab und Symantec haben einen umfassenden Bericht über die Kontrollserver vorgelegt, die unter anderem den aufgrund seines Umfangs als "Superspion" bezeichneten Trojaner Flame steuerten. Grundlage für die Untersuchungen waren zwei offengelegte Trojaner-Kontrollcenter.
Dort fanden die Forscher eine unauffällige Konfiguration aus OpenSource-Komponenten vor: Als Betriebssystem lief ein Debian 6, das virtualisiert in einem OpenVZ-Image lief. Der meiste Code war in PHP und Python geschrieben und griff auf eine MySQL-Datenbank zurück. Als Server diente Apache 2.x, der über die Ports 443 und 8080 per HTTPS zugänglich war. Das Web-Interface zur Steuerung des Kontrollservers lag in einem Ordner mit dem Namen /newsforyou/CP. Es war mit einem zehnstelligen ungesalzenen Kennwort gesichert, dessen Hash die Forscher in der lokalen MySQL-Datenbank fanden.
Auf den ersten Blick waren die Forscher von Kaspersky Lab von der Oberfläche enttäuscht: Sie sehe aus wie von Skript-Kiddies gestaltet. Die Zurückhaltung ergebe allerdings Sinn: Wo Botnet-Betreiber gern mit ihren Photoshop-Skillz angeben, sollte die Flame-Steuerung ja so wenig wie möglich auffallen.
Die durch Flame unterwanderten Rechner wurden auf eine ungewöhnliche Art ferngesteuert: Statt direkter Befehle über das Web-Interface sendete der Angreifer einen tar.gz-Container an das Kontrollcenter, aus deren Inhalt der Server die weiterzugebenden Anweisungen einlas. Die Drahtzieher konnten auf diesem Wege sowohl alle infizierten Systeme gleichzeitig als auch einzelne Rechner fernsteuern.
Alle vom Trojaner an das Kontrollcenter gesendeten Daten wurden dort durch ein Public-Key-System lokal verschlüsselt. So lassen sich die erbeuteten Daten nur mit dem privaten Schlüssel des Angreifers auslesen. Die verschlüsselten Daten wurden in halbstündigen Abständen vom Kontrollserver abgezogen. Allein einer der geknackten Server schleuste innerhalb einer Woche 5,5 Gbyte erbeutete Daten an die Angreifer durch. Den Analysen zufolge kontaktierte dieser Server innerhalb einer Woche über 5000 IP-Adressen, von denen über 3700 aus dem Iran stammten. An zweiter Stelle standen 1280 Netzaddressen aus dem Sudan. Insgesamt schätzen die Forscher, dass Flame über 10000 Rechner infizierte.
Eine Analyse der Kommunikationsprotokolle ergab, dass die Server vier Client-Typen steuern konnten. Sie tragen die Code-Namen IP, SP, SPE, und FL – letzteres ist der Flame-Trojaner. Aus diesen Eckdaten leiten die Forscher ab, dass es neben Flame noch drei weitere Trojanermodelle aus der gleichen Quelle gibt.
Von einem der Flame-Cousins hat Kaspersky Lab bereits erste Spuren gefunden; demzufolge ist SPE derzeit aktiv und bislang unentdeckt. Code-Bestandteile weisen darüber hinaus auf einen fünften Trojaner hin, der zum Zeitpunkt der Stilllegung von Flame noch nicht zuende entwickelt worden war.
Die Forensiker haben aus den Daten des Kontrollservers noch zahlreiche weitere Informationen extrahiert, darunter die Codenamen von vier Entwicklern, deren Gewohnheiten auf einen Windows-Hintergrund hinweisen. Dem Code nach begann die Entwicklung des Kontrollservers im Dezember 2006, was die Flame-Plattform deutlich älter macht als zuvor angenommen.
Der Bericht von Kaspersky legt nahe, dass die Entwickler des Kontrollservers in erster Linie mit Red-Hat-Distributionen vertraut sind. Dies würde dazu passen, dass die Kontrollcenter des Duqu-Trojaners auf CentOS basieren, das seinerseits von Red Hat Enterprise Linux abgeleitet ist.
Angesichts der eingesetzten kryptografischen Methoden, der Komplexität der Kontrollserver und der systematischen Verschlüsselung aller erbeuteten Daten geht Kaspersky Lab weiterhin davon aus, dass Flame aus einer staatlichen Quelle stammt. Einem Bericht der Washington Post zufolge wurden Flame und Stuxnet von Israel und den USA entwickelt.
Die Existenz der Flame-Spyware war erstmals im Mai 2012 publik geworden. Schnell stellte sich heraus, dass der Trojaner schon seit Jahren, aber sehr gezielt im Nahen Osten eingesetzt wurde. Der Spion trug eine gültige Signatur von Microsoft und kam als gefälschtes Windows-Update auf die Zielrechner. Bei den vom Trojaner ausgespähten Daten soll es sich vor allem um Office-Dokumente, PDF-Dateien und technische Zeichnungen gehandelt haben.
An der Untersuchung war das Computer Emergency Response Team (CERT) des Bundesamts für Sicherheit in der Informationstechnik (BSI), die IMPACT-Gruppe der International Telecommunications Union (International Multilateral Partnership Against Cyber Threats) sowie die Antivirus-Hersteller Kaspersky Lab und Symantec beteiligt.
[Update vom 18.9.2012, 13:40:] In der ursprünglichen Fassung der Meldung stand fälschlicherweise, der Kontrollserver habe tar.gz-Pakete an die infizierten Systeme gesendet. Tatsächlich übermittelten die Angreifer ihre Steuerungsbefehle über tar.gz-Pakete an den Kontrollserver. Der Text wurde dahingehend korrigiert. [/Update] (ghi)