ESET-Forscher haben eine schädliche Android-App entdeckt, die DDoS-Attacken durchführte. Aufgrund der Tatsache, dass es sich um die Webseite von ESET handelte, konnten die ESET-Forscher die App identifizieren, analysieren und dem Google Play Security Team melden. Es entfernte die App daraufhin umgehend aus dem Play Store.

Die DDoS-Attacke vom Januar 2020 richtete sich gegen die globale ESET-Webseite www.eset.com. Sie dauerte sieben Stunden und wurde mithilfe von mehr als 4.000 einzigartigen IP-Adressen durchgeführt. Die schädlichen IPs wurden für die Dauer des Angriffs blockiert.

ESETs Analysen ergaben, dass man die DDoS-Attacke mithilfe von Tausenden Instanzen der App „Updates for Android“ realisierte, welche damals regulär über den Google Play Store bezogen werden konnte. Die bösartige Funktionalität der Anwendung beruhte auf ihrer Fähigkeit, ein JavaScript vom Server der Angreifer zu laden und auf dem User Android-Endgerät auszuführen. Das erklärt auch, wie es die App in den Play Store schaffte.

Die App "Updates für Android" wurde erstmals am 9. September 2019 in den Play-Store hochgeladen. In der ursprünglichen Version fehlte die Funktion zum Laden des JavaScripts – was maßgeblich für die DDoS-Attacke verantwortlich war – diese wurde erst mit einem Update zwei Wochen vor dem Angriff implementiert. Die Anwendung erreichte über 50.000 Installationen; wir wissen nicht, wie viele "Updates für Android"-Apps mit dem Update versorgt werden konnten, oder wie viele überhaupt noch installiert waren. Nach unserer Benachrichtigung entfernte das Google Team die schädliche App rasch aus dem Play Store.

Um Legitimität zu signalisieren und Opfer „einzusammeln“ setzten die Cyber-Angreifer die Webseite i-updater[.]com auf. Diese bewirbt sich selbst mit „tägliches Nachrichten-Update“. (Die Website ist nach wie vor online. Es gibt keinen Grund, sie abschalten zu lassen, da diese selbst nicht bösartig ist.)

Abbildung 1: Die Webseite bewirbt die App als kostenfreie Nachrichten-Update-Anwendung

Abbildung 1: Die Webseite bewirbt die App als kostenfreie Nachrichten-Update-Anwendung

Offizielle Funktionalität der Fake-App

Angepriesen wird die App mit der Möglichkeit, einen Feed mit täglichen Nachrichten anzeigen zu lassen. Über inoffizielle App-Ressourcen kann die App leider nach wie vor bezogen werden.

Abbildung 2: Auftritt der bösartigen App im Google Play Store vor der Entfernung

Abbildung 2: Auftritt der bösartigen App im Google Play Store vor der Entfernung

Selbst wenn man die Bösartigkeit der Anwendung außer Acht lässt, sind der App- und der Entwickler-Name, " Updates für Android ", irreführend. Die App hat nichts mit irgendeinem System oder mit System-Updates zu tun.

Um nicht aufzufallen, zeigt die App ein paar Neuigkeiten im Feed an. Die Hauptfunktion besteht allerdings darin, Befehle von einer bestimmten Webseite zu erhalten. Diese ist der Command & Control Server (C&C). Die Android-Malware pingt den C&C alle 150 Minuten an und übermittelt die Geräte-ID – diese Maßnahme sorgt dafür, dass jedes Gerät individuell gesteuert werden kann - wie in einem Botnet.

Abbildung 3: Liste der Befehle, die von der schädlichen Android-App ausgeführt werden können.

Abbildung 3: Liste der Befehle, die von der schädlichen Android-App ausgeführt werden können.

Abbildung 4: Liste der C&C-Befehle

Abbildung 4: Liste der C&C-Befehle

Schädliche Funktionen der App

Mithilfe der vom C&C-Server empfangenen Funktionen, kann die App Werbung im Standardbrowser des Geräts einblenden (Anmerkung: Diese Funktionalität erstreckt sich über die App hinaus.), das Icon vor dem User verstecken und beliebigen remote bereitgestellten JavaScript-Code ausführen.

Die zuletzt genannte Funktion ist maßgeblich für die DDoS-Attacke auf die ESET-Webseite verantwortlich.

Die folgenden Informationen sind ein Auszug aus der Analyse über die im Angriff aufgezeichneten Malware-Samples.

Die Android-Malware öffnet eine lokale Datei namens new_method.html, welche die App mitbringt. Ihre Funktion ist das Laden des vom C&C-Server remote bereitgestellten JavaScripts.

Abbildung 5: Der Datei-Inhalt von new_method.html

Abbildung 5: Der Datei-Inhalt von new_method.html

Der JavaScript-Code ist dafür verantwortlich, dass sich das Android-Geräte mithilfe der App jede Sekunde mit einer anvisierten Webseite verbindet und diese so mit http-Anfragen zu überhäufen.

Abbildung 6: Code, der vom Server des Angreifers zurückgegeben und von einem kompromittierten Gerät ausgeführt wird.

Abbildung 6: Code, der vom Server des Angreifers zurückgegeben und von einem kompromittierten Gerät ausgeführt wird.

DDoS-Angriff in Kürze:

  • Kompromittiertes Gerät erhält via Malware-App den Befehl zum Laden des JavaScripts.
  • JavaScript enthält anzufragende Domain.
  • Sobald das Skript geladen ist, beginnt das Android-Gerät massenhaft Anfragen an die Ziel-Domain zu senden.
  • Ende des Angriffs, wenn C&C-Server anderes JavaScript mit anderer Domain übermittelt.

Während der Überwachung der C&C-Webseite konnten wir sechs weitere Skripte abfangen, die jeweils eine andere Ziel-Domain übermittelten. Dabei handelte es sich um Nachrichten- und E-Commerce-Seiten, die meisten davon gehören in die Türkei.

Fazit

An dem DDoS-Angriff waren von theoretisch 50.000+ Geräten etwa 10% beteiligt. Die Attacke zeigt, dass Cyber-Angreifer geduldig warten können, bis eine Benutzerbasis eine gewisse Größe erreicht, bevor bösartige Skripte in eine App remote implementiert und ausgeführt werden.

Die Erkennung dieser Art von schädlichen Funktion ist nicht so leicht. Ähnliche Techniken kommen auch bei legitimen Android-Software-Entwicklungs-Kits und -Frameworks zum Einsatz – mal abgesehen von den schädlichen JavaScripts. Schlichte Erkennungsalgorithmen würden hier viele falsch-positive Ergebnisse liefern.

Einfache Lösungen sind hier nicht praktikabel. Das bedeutet allerdings nicht, dass Android-User gar keine Chance auf Malware-Schutz haben. ESET verbessert stets die Erkennungsgrundlage für Schadsoftware auf Grundlage dessen, was man aus den Verhalten von Apps lernt – wie beispielsweise anhand von der „Updates for Android“ Fake-App. Einige Verbesserungen wurden bereits in die Technologien implementiert, die im Play Store Schutz innerhalb der App Defense Alliance zum Einsatz kommt. Andere werden in die Schutz-Schichten der Endpoint Security Lösungen eingebettet, wie beispielsweise in die Erkennungsmechanismen, die auf Machine Learning basieren.

Indicators of Compromise (IoCs)

Package Name Hash Detection
com.world.hello.myapplication 34A6BD8B96729B6F87EC5E4110E02BEE1C76F5A9 Trojan.Android/Hiddad.AJN

MITRE ATT&CK techniques

Tactic ID Name Description
Initial Access T1475 Deliver Malicious App via Authorized App Store The malware impersonates legitimate services on Google Play.
Persistence T1402 App Auto-Start at Device Boot The malware listens for the BOOT_COMPLETED broadcast, ensuring that the app's functionality will be activated every time the device starts.
Defense Evasion T1508 Suppress Application Icon The malware hides its icon from launcher.
Impact T1472 Generate Fraudulent Advertising Revenue The malware can display unwanted advertisement.
Command and Control T1436 Commonly Used Port The malware uses port 443 for its C&C communications.
T1437 Standard Application Layer Protocol The malware uses HTTPS for its C&C communications.