Nach einem zweijährigen Rückgang von Ransomware ist nun eine neue Variante aufgetaucht. Die aktuelle Ransomware wird von der ESET Mobile Security als Android/Filecoder.C erkannt. Vermehrt taucht sie in Online-Foren auf. Mithilfe der Kontaktlisten der Opfer verbreitet sich die Malware via SMS inklusive schädlichem Link. Durch den bislang eingeschränkten Kreis potenzieller Opfer sowie Fehler in der Malware-Ausführung und Verschlüsselungsimplementierung halten sich die Auswirkungen der Verschlüsselungsmalware bislang in Grenzen. Beheben die Malware-Entwickler die angesprochen Schwächen, kann Android/Filecoder.C allerdings zu einer ernsthaften Bedrohung werden.
Die Ransomware ist seit mindestens dem 12. Juli 2019 aktiv. Wir stellten fest, dass Android/Filecoder.C über diverse schädliche Beiträge in Reddit- und XDA Developers-Foren verbreitet wurde. Beide Betreiber wissen bereits darüber Bescheid. XDA hat die Beiträge recht zügig entfernt, auf Reddit waren sie noch am 29.07.2019 zu finden.
Die Ransomware ist in der Lage, auf die Kontaktliste des Opfers zuzugreifen und an alle Kontakte eine SMS mit schädlichem Link zu versenden.
Nach dem Versand der schädlichen Textnachricht, verschlüsselt die Android-Ransomware die meisten Dateien des Users und verlangt anschließend ein Lösegeld.
ESET Mobile Security User werden gewarnt, falls sie eine SMS mit dem schädlichen Link erhalten sollten. Ignorieren sie die Warnung und laden die App dennoch herunter, blockiert die ESET-Sicherheitslösung für Android die Installation.
Verteilung der Android-Ransomware
Die von uns entdeckte Ransomware-Kampagne stützt auf zwei Domains (mehr dazu im IoC-Abschnitt), die von den Cyberkriminellen kontrolliert werden, um schädliche Android-Dateien zu verbreiten. Die Angreifer locken die potenziellen Opfer auf die Domains, in dem sie Beitrage oder Kommentare auf Reddit (Abb. 1) oder XDA Developers (Abb. 2) verfassen.
Die überwiegende Mehrheit der Posts enthielt pornografischen Inhalt. Alternativ sah man aber auch technische Beiträge. In allen Beiträgen oder Kommentaren hängten die Angreifer entweder schädliche Links oder QR-Codes an, die auf die Ransomware-App wiesen.
Einen Link, der auf Reddit verbreitet wurde, verschleierten die Angreifer mithilfe von bit.ly. Die Statistik zeigt, dass die URL am 11.06.2019 erstellt wurde. Bis zum Zeitpunkt der Erstellung dieses Artikels registrierte bit.ly 59 Klicks von verschiedenen Quellen sowie aus unterschiedlichen Ländern.
Ransomware-Verbreitung
Wie bereits erwähnt, verbreitet sich die Ransomware teilweise auch selbstständig via Schad-Link in SMS-Textnachrichten, die an alle Kontakte des Opfers gesendet werden.
Eine Nachricht enthält einen direkten Link zur Ransomware. Man versucht das Opfer glauben zu lassen, dass jemand Fotos von ihm missbräuchlich verwendet – wie in Abb. 4 zu sehen.
Um die Reichweite zu erhöhen, wurde der Text der Nachricht in 42 Sprachen übersetzt (Abb. 5). Vor dem Weiterverbreiten der Nachricht an die Kontakte des Opfers passt die Malware die Textsprache der Telefon-Spracheinstellung an. Um die Nachricht zu personalisieren, wird der Name in das Text-Template eingefügt.
Funktionsweise der Android-Ransomware
Die Ransomware-APK muss manuell installiert werden. Nach dem Start zeigt die App, was auch immer in den ursprünglichen Foren-Beiträgen angepriesen wurde. Öfters handelte es sich dabei um das Sex Simulator Online Game. Der Hauptzweck besteht allerdings in der C&C-Serverkommunikation, der Weiterverbreitung der schädlichen SMS-Textnachricht sowie der Verschlüsselung des Android-Smartphones.
Für die C&C-Serverkommunikation wird eine in der .apk festcodierte C&C-Serveradresse verwendet. Daneben existieren ebenfalls hardcodierte Bitcoin-Adressen im Quellcode. Allerdings können diese auch dynamisch übergeben werden; d.h. jederzeit von den Angreifern geändert werden. Dafür nutzen sie den Pastebin Service.
Die Ransomware durchsucht alle greifbaren Ordner im Speicher und verschlüsselt die meisten Dateien darin. Systemdateien bleiben verschont. Nach der Verschlüsselung zeigt die Malware einen Screen mit einer Lösegeldforderung in Englisch, wie in Abb. 7.
Richtig ist, dass ein Entfernen der App die Verschlüsselung nicht wieder aufhebt. Nach unseren Analysen enthält die Ransomware aber keinen Code, der die Behauptung stützt, dass nach Ablauf der 72 Stunden alle Dateien verloren wären.
Wie in Abb. 8 zu sehen, gestaltet sich die Berechnung des Lösegelds dynamisch. Ein Wert (0.01) ist festgeschrieben, der andere setz sich aus der UserID zusammen, welche die Malware generiert.
Diese einzigartige Praxis dient eventuell dazu, eingehende Zahlungen zu identifizieren. Normalerweise wird das bei Android-Ransomware dadurch erreicht, dass für jedes verschlüsselte Gerät eine eigene Bitcoin Wallet angelegt wird.
Basierend auf dem aktuellen Wechselkurs von ca. 9400 US-Dollar pro Bitcoin entsprechen die daraus gebildeten Lösegeldbeträge zwischen 94 und 188 US-Dollar (Annahme: zufällige Generierung der einzigartigen ID).
Im Gegensatz zu typischer Android-Ransomware blockiert Android/Filecoder.C die Verwendung des Geräts nicht, indem beispielsweise der Bildschirm gesperrt wird.
Zum Zeitpunkt der Erstellung dieses Artikels sind bis dato keine Bitcoin an die "Ransomware-Adresse" transferiert wurden (Abb. 9).
Datei-Verschlüsselungsmechanismus
Die Ransomware setzt auf symmetrische und asymmetrische Verschlüsselung. Zunächst generiert diese ein „private“ und „public“ Schlüsselpaar. Der „private“ Schlüssel wird mithilfe des RSA-Algorithmus mit einem im Code gespeicherten, festen Wert verschlüsselt und an den Server des Angreifers gesendet. Der Angreifer kann diesen privaten Schlüssel entschlüsseln und, nach Lösegeldeingang, dem Opfer den privaten Key zum Entschlüsseln seiner Dateien zukommen lassen.
Beim Verschlüsseln von Dateien generiert die Ransomware für jede zu verschlüsselnde Datei einen neuen AES-Schlüssel. Dieser AES-Schlüssel wird dann mit dem „public Key“ verschlüsselt und jeder verschlüsselten Datei vorangestellt. Dies ergibt das folgende Muster: ((AES) public_key + (File) AES).seven
Die Dateistruktur ist in Abbildung 10 dargestellt.
Die Ransomware verschlüsselt die folgenden Dateitypen, indem sie alle zugänglichen Speicherverzeichnisse durchsucht – wie beispielsweise:
“.doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".pst", ".ost", ".msg", ".eml", ".vsd", ".vsdx", ".txt", ".csv", ".rtf", ".123", ".wks", ".wk1", ".pdf", ".dwg", ".onetoc2", ".snt", ".jpeg", ".jpg", ".docb", ".docm", ".dot", ".dotm", ".dotx", ".xlsm", ".xlsb", ".xlw", ".xlt", ".xlm", ".xlc", ".xltx", ".xltm", ".pptm", ".pot", ".pps", ".ppsm", ".ppsx", ".ppam", ".potx", ".potm", ".edb", ".hwp", ".602", ".sxi", ".sti", ".sldx", ".sldm", ".sldm", ".vdi", ".vmdk", ".vmx", ".gpg", ".aes", ".ARC", ".PAQ", ".bz2", ".tbk", ".bak", ".tar", ".tgz", ".gz", ".7z", ".rar", ".zip", ".backup", ".iso", ".vcd", ".bmp", ".png", ".gif", ".raw", ".cgm", ".tif", ".tiff", ".nef", ".psd", ".ai", ".svg", ".djvu", ".m4u", ".m3u", ".mid", ".wma", ".flv", ".3g2", ".mkv", ".3gp", ".mp4", ".mov", ".avi", ".asf", ".mpeg", ".vob", ".mpg", ".wmv", ".fla", ".swf", ".wav", ".mp3", ".sh", ".class", ".jar", ".java", ".rb", ".asp", ".php", ".jsp", ".brd", ".sch", ".dch", ".dip", ".pl", ".vb", ".vbs", ".ps1", ".bat", ".cmd", ".js", ".asm", ".h", ".pas", ".cpp", ".c", ".cs", ".suo", ".sln", ".ldf", ".mdf", ".ibd", ".myi", ".myd", ".frm", ".odb", ".dbf", ".db", ".mdb", ".accdb", ".sql", ".sqlitedb", ".sqlite3", ".asc", ".lay6", ".lay", ".mml", ".sxm", ".otg", ".odg", ".uop", ".std", ".sxd", ".otp", ".odp", ".wb2", ".slk", ".dif", ".stc", ".sxc", ".ots", ".ods", ".3dm", ".max", ".3ds", ".uot", ".stw", ".sxw", ".ott", ".odt", ".pem", ".p12", ".csr", ".crt", ".key", ".pfx", ".der"
Von der Verschlüsselung verschont, bleiben alle Dateien die unter „.cache“, „tmp“ oder „temp“ zu finden sind, wie auch ZIP- und RAR-Archive sowie Dateien über 50 MB und .jpg, .jpeg und .png unter 150 KB.
Die obere Liste der Dateitypen enthält einige Einträge, die nichts mit Android gemein haben. Gleichzeitig fehlen einige typische Android-Erweiterungen wie .apk, .dex und .so. Anscheinend wurde einfach die Liste von der berüchtigten WannaCryptor aka WannaCry Ransomware kopiert.
Sobald die Dateien verschlüsselt sind, wird die Dateierweiterung „.seven“ an den ursprünglichen Dateinamen angehängt (siehe Abbildung 11).
Ransomware Entschlüsselungsmechanismus
Der Code zum Entschlüsseln der verschlüsselten Dateien ist schon in der Ransomware enthalten. Der Ransomware-Betreiber kann Lösegeldeingänge über die in Abb. 12 gezeigte Webseite prüfen und darauf hin den „private“ Schlüssel zum Opfer senden.
Wie schütze ich mich vor Android-Malware?
- Zunächst einmal sollte das Android-Gerät immer auf dem neusten Stand sein. Idealerweise werden Patches und Sicherheitsupdates automatisch heruntergeladen und installiert.
- Apps sollten nur über vertrauenswürdige Stores bezogen werden, wie dem Google Play Store. Diese besitzen eigene Gefahren-Abwehr-Teams, um die Verbreitung von Malware zu mindern.
- Bevor man eine Android-App installiert, sollten die Bewertungen und vor allem negativen Kommentare geprüft werden. Hier zeichnet sich schnell ab, wie vertrauenswürdig die Anwendung ist.
- Desweiteren sollten die Berechtigungen geprüft werden, welche die Anwendung verlangt.
- Bekannte Mobile Security Lösungen schützen Android Tablet und Smartphone vor vielen Gefahren.
Indicators of Compromise (IoCs)
Hash | ESET detection name |
---|---|
B502874681A709E48F3D1DDFA6AE398499F4BD23 | Android/Filecoder.C |
D5EF600AA1C01FA200ED46140C8308637F09DFCD | Android/Filecoder.C |
B502874681A709E48F3D1DDFA6AE398499F4BD23 | Android/Filecoder.C |
F31C67CCC0D1867DB1FBC43762FCF83746A408C2 | Android/Filecoder.C |
Bitcoin address |
---|
16KQjht4ePZxxGPr3es24VQyMYgR9UEkFy |
Servers |
---|
http://rich7[.]xyz |
http://wevx[.]xyz |
https://pastebin[.]com/raw/LQwGQ0RQ |
Contact e-mail address |
---|
h3athledger@yandex[.]ru |
Affected Android versions |
---|
Android 5.1 and above |