Im Dezember 2014 veröffentlichte ESET ein White Paper (in Englisch) über TorrentLocker, eine Crypto-Ransomware Familie. Die verteilten Spam-Mails wirkten wie E-Mails der örtlichen Post, des Energieversorgers oder eines Telekommunikationsunternehmens. Das Paper beschrieb den Verbreitungsmechanismus, einige Kernfunktionen, das Netzwerkprotokoll und legte Ähnlichkeiten mit dem Banking-Trojaner Hesperbot offen.
Während der letzten Monate stand diese Malware-Familie bei uns unter Beobachtung. Dieser Beitrag fasst die Ergebnisse unserer Analysen kurz zusammen und vergleicht sie mit der Bedrohungslage in 2016.
Im Jahr 2014 wurde TorrentLocker auch unter dem Namen „CryptoLocker“ bekannt. Aus unerklärlichen Gründen ersetze man ein Jahr später die „o“s durch Nullen, was in „Crypt0l0cker“ resultierte. Zwischen den Lockern gibt es keine signifikanten Unterschiede, was den Verbreitungsmechanismus, die C&C-Infrastruktur oder die Malware Samples betrifft und eine unterschiedliche Ransomware begründen würde. Wir glauben, dass beide von derselben Gang stammen. Um Verwirrungen zu vermeiden, haben wir uns dazu entschlossen, weiterhin den Namen TorrentLocker anstatt „Crypt0l0cker“ zu verwenden.
Verbreitungsmechanismus
Die derzeitige Verbreitung ist vergleichbar mit den Techniken, die ihm Jahr 2014 verwendet wurden. Es werden E-Mails mit einem Link zu einer Seite versendet, die dazu auffordern, ein „Dokument“ (Rechnung oder Tracking Code) herunterzuladen. Folgt der User dieser Forderung und öffnet den schädlichen Anhang, wird der TorrentLocker ausgeführt. Dieser beginnt sofort mit dem C&C-Server zu kommunizieren und Dateien des operierenden Systems zu verschlüsseln. Einige Beispiele der nachahmenden Mails finden sich hier:
- A1 Telekom (Austria)
- AGL (Australia)
- Australia Post (Australia)
- Australian Federal Police (Australia)
- British Gas (United Kingdom)
- Endesa (Spain)
- Enel (Italy)
- Österreichische Post (Austria)
- New Zealand Post (New Zealand)
- PGE Polska (Poland)
- PostNord (Sweden)
- PostNL (Netherlands)
- Telia (Sweden)
- Turkcell (Turkey)
- Verbund (Austria)
- Vodafone Italia (Italy)
Wie wir bereits in 2014 dokumentierten, sind die übergebenen URLs lediglich mit einer IP-Adresse aus einem Land erreichbar, welches auf der Auswahlliste der Angreifer steht. Das macht es für Forscher und Crawler aus dem Ausland sehr schwierig.
Selbst wenn sich die Schemata aus 2014 und 2016 ähneln, dahinter verbergen sich doch leichte Änderungen. Es wurden verschiedene Weiterleitungen in die Kette bis zur finalen ausführbaren Schaddatei integriert. Der Link in der Spam-Mail führt nun zu einem PHP-Skript, das auf einem kompromittierten Server gehostet wird. Dieses Skript überprüft, ob der User von einem anvisierten Land aus browst. Wenn dem so ist, wird der User zur nächsten Seite weitergeleitet, bei der die nächste Stufe der Malware heruntergeladen wird. Andernfalls landet man bei Google.
Die heruntergeladene ZIP-Datei beinhaltet eine verschleierte JScript-Datei. Diese läd die TorrentLocker-PE-Datei und führt sie aus. ReaQta veröffentlichte einen zweiteiligen Blogpost, welcher die Vorgehensweise detaillierter beschreibt.
Obfuskation
Ist die ZIP-Datei erst einmal entpackt, benutzt der TorrentLocker-Kern weitere Verschleierungstaktiken, um eine Analyse bzw. Reverse Engineering stark zu erschweren. Es gibt gegenüber 2014 zwei neue Techniken, die dabei zum Einsatz kommen. Zum einen werden Zeichenketten durch einen direkt eingebetteten Code (hardcoded) verschlüsselt. Der Schlüssel ist, bis auf die Ausnahme, dass er gestützt und verlängert wird, derselbe. Codierte Zeichenketten werden auf Anfrage durch einfaches XORing mit dem zurechtgestutzten Schlüssel entschlüsselt. Auf dem Github-Channel von ESET liegt ein IDA-Skript bereit, das die Entschlüsselung einer Zeichenkette eines entpackten Samples unterstützt.
C&C-Kommunikationen
Eine der bedeutenden Änderungen von TorrentLocker ist die Art und Weise wie er seinen C&C-Server kontaktieren kann. Zurück im Jahr 2014 versuchte die Malware eine im Code eingebettete Domain via HTTPS zu erreichen. Nun wird eine beliebige Subdomain vorangestellt. Die eingebetteten Domains haben in der Regel nur eine kurze Lebensdauer und werden schnell wieder abgeschaltet.
Interessant bei der 2016er Ransomware ist, dass bei einem Fehlschlag auf den Tor Hidden Service zurückgegriffen wird. Eine kleine Tor-Anwendung ist statisch in der Binary verlinkt, um sicherzustellen, dass eine erfolgreiche Verbindung zum Tor-Netzwerk nicht auf externen Abhängigkeiten beruht.
Ortsbestimmtes Verhalten
Ein bekanntes Feature vom TorrentLocker ist die gute Lokalisierung der Download-, Ransomware- und Bezahl-Seiten. Opfer erhalten Informationen in der Sprachen, die am Aufenthaltsort gängig ist. Eine Analyse sollte klarstellen, wie viele Länder davon betroffen waren und in wie vielen Sprachen die Ransomware agierte.
Die Basis-Seite ist in Englisch mit der Währung USD. Darauf aufbauend haben wir 22 Länder ausfindig gemacht, die eine lokalisierte Ransomware- und Bezahlaufforderungsseite bekamen. Die Liste enthält folgende Länder:
- Australien
- Österreich
- Belgien
- Tschechische Republik
- Dänemark
- Deutschland
- Frankreich
- Großbritannien
- Italien
- Japan
- Martinique
- Niederlande
- Norwegen
- Polen
- Portugal
- Republik Südkorea
- Spanien
- Schweden
- Schweiz
- Taiwan
- Thailand
- Türkei
Wir haben für alle fettgeschriebenen Länder TorrentLocker Spam-Kampagnen ausfindig machen können. Es ist aber unklar, ob die anderen vergangene oder zukünftige Ziele sind und einen anderen Verbreitungsmechanismus verfolgen.
Es gab auch Länder die von TorrentLocker verschont wurden. Dazu gehören:
- China
- Russland
- Ukraine
- USA
Kryptografie
Während sich das globale Verschlüsselungsschema von TorrentLocker nicht änderte, wurden aber einige Aspekte der Implementierung angepasst. Wie eingangs erwähnt, ist die Kommunikation zwischen Malware und C&C-Server verschlüsselt. Das ist auch für die Konfigurations- und State-File der Fall. Diese sind mittels AES-256 durch einen eingebetteten Schlüssel codiert. Dieser ändert sich mit jeder neuen Kampagne. Die Dateinamen sind nun zufällige Zeichenketten anstelle von fortlaufenden Nummern.
TorrentLocker stellt sicher, dass das operierende System benutzbar bleibt. Sein Vorgänger enthielt noch eine Liste mit Dateiendungen, die verschlüsselt werden sollten. Nun ist es andersrum. Folgende Dateien werden nicht codiert, um die Funktionalität des Betriebssystems zu gewährleisten:
- .exe
- .dll
- .sys
- .vdx
- .vxd
- .com
- .msi
- .scr
- .cpl
- .bat
- .cmd
- .lnk
- .url
- .log
- .log2
- .tmp
- .###
- .ini
- .chm
- .manifest
- .inf
- .html
- .txt
- .bmp
- .ttf
- .png
- .ico
- .gif
- .mp3
- .wav
- .avi
- .theme
- .evtx
- .folder
- .kdmp
Resümee
TorrentLocker ist immer noch sehr aktiv und verbreitet sich offensichtlich ohne viel Aufmerksamkeit zu erregen. Wie man sich gegen Ransomware schützen kann, verrät Lysa Myer in ihrem Artikel dazu.
TorrentLocker RSA-4096 Schlüssel – Verwendet in den Kampagnen main-9 bis main-13
-----BEGIN PUBLIC KEY-----
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0LrTxrnan3wlqkeCrO8j
L/BlcjS3yOh/YZ9vH5uRw4RvHY86JpsKaJLQ1WajkY9bgO6w9an9l9dtJch70joD
o+aQfzpQIb1HUwrOmrxICO18zyhvkH+vXBSuDmQBFvuPMu8g1R4cpo9TzR0XCSEn
BjDBhNirSBRmfSjhWMhLMcrrAUJ986+ucLdjQtBrDyTIlYZ8/H83T+rbkBE2sLbY
D7HSBtosPArg18hC6fgDJ2V4tADmLx/wk3k8JKeQ0OXbBqVbzWbYzODIJ/VibKNg
mE278RS9KR3f+0P38/ztf81SH4ZK5kjqN6qLL0AyUfQpm7bOpQHSpwOdhA0i/8M5
lMzZj1wdfp3UDoPpAyH4fc6mpgt1OjN5Rj5PjQj/bEPM/Rz67LCdFY3LbI5rCyxm
9V4UVTOJdAavByDUa8PKEY++XMKjEjTskDD4Io3tD+54rmr4/WPoRPlrQ+Bj4o7I
DSvrMGsnEudhcO7qMlQ5JszHDejk5QF8glsiWsCHVxmZqsHFNYxBKGgtvUxvokgv
+yxo6twfC/hC1wJHhWofINDABxIYqgVOg4GJEs0gA1v8FByNg6pss2W/oNcYDuiZ
7R/9vHAUHzMBVNaXq9Rz5h61pLFjEpIrfzO8ctAq3+wDdltyTbz40D7G4+zPHV2t
PW9R7I4fmgDQMM4SimN8NcUCAwEAAQ==
-----END PUBLIC KEY-----