ESET-Forscher haben zwei aktive Kampagnen identifiziert, die auf Android-Nutzer abzielen. Die Bedrohungsakteure hinter dem Tool werden der aus China stammenden APT-Gruppe GREF zugeschrieben. Die Kampagnen sind höchstwahrscheinlich seit Juli 2020 bzw. Juli 2022 aktiv und haben den Android BadBazaar-Spionagecode über den Google Play Store, den Samsung Galaxy Store und spezielle Websites für die Verbreitung der schädlichen Apps Signal Plus Messenger und FlyGram genutzt. Die Bedrohungsakteure haben die Open-Source-Apps Signal und Telegram für Android mit bösartigem Code gepatcht, den wir als BadBazaar identifiziert haben.

Die wichtigsten Punkte des Berichts:

  • ESET Research entdeckte trojanisierte Signal- und Telegram-Apps für Android, genannt Signal Plus Messenger und FlyGram, auf Google Play und im Samsung Galaxy Store; beide Apps wurden später aus Google Play entfernt.
  • Der in diesen Apps gefundene bösartige Code wird der BadBazaar-Malware-Familie zugeschrieben, die in der Vergangenheit von einer mit China verbundenen APT-Gruppe namens GREF verwendet wurde.
  • Die BadBazaar-Malware wurde in der Vergangenheit für Angriffe auf Uiguren und andere Turkvölker eingesetzt. Die FlyGram-Malware wurde auch in einer uigurischen Telegram-Gruppe verbreitet, was mit früheren Angriffen der BadBazaar-Malware-Familie übereinstimmt.
  • FlyGram kann auf Telegram-Backups zugreifen, wenn der Benutzer eine bestimmte, von den Angreifern hinzugefügte Funktion aktiviert hat; die Funktion wurde von mindestens 13.953 Benutzerkonten aktiviert.
  • Signal Plus Messenger ist der erste dokumentierte Fall, in dem die Signal-Kommunikation eines Opfers ausspioniert wurde, indem das kompromittierte Gerät heimlich mit dem Signal-Gerät des Angreifers verbunden wurde.

Anhand unserer Telemetriedaten konnten wir aktive Android-Kampagnen identifizieren, bei denen ein Angreifer bösartige Apps mit den Namen Signal Plus Messenger und FlyGram über den Google Play Store, den Samsung Galaxy Store und spezielle Websites hochgeladen und verbreitet hat, die die Signal-App (signalplus[.]org) und eine alternative Telegram-App (flygram[.]org) imitieren.

Der Zweck dieser trojanisierten Apps ist das Exfiltrieren von Benutzerdaten. FlyGram kann grundlegende Geräteinformationen, aber auch sensible Daten wie Kontaktlisten, Anrufprotokolle und die Liste der Google-Konten auslesen. Darüber hinaus ist die App in der Lage, einige Informationen und Einstellungen im Zusammenhang mit Telegram auszuspionieren. Diese Daten umfassen jedoch nicht die Telegram-Kontaktliste, Nachrichten oder andere sensible Informationen. Wenn Benutzer jedoch eine spezielle FlyGram-Funktion aktivieren, die es ihnen ermöglicht, Telegram-Daten auf einem von den Angreifern kontrollierten Remote-Server zu sichern und wiederherzustellen, hat der Bedrohungsakteur vollen Zugriff auf diese Telegram-Backups und nicht nur auf die gesammelten Metadaten. Es ist wichtig zu beachten, dass diese Backups keine tatsächlichen Nachrichten enthalten. Bei der Analyse dieser Funktion haben wir festgestellt, dass der Server jedem neu erstellten Benutzerkonto eine eindeutige ID zuweist. Diese ID folgt einem fortlaufenden Muster, was darauf hindeutet, dass mindestens 13.953 FlyGram-Konten diese Funktion aktiviert hatten.

Signal Plus Messenger sammelt ähnliche Gerätedaten und sensible Informationen; sein Hauptziel ist es jedoch, die Signal-Kommunikation des Opfers auszuspionieren - er kann die Signal-PIN-Nummer extrahieren, die das Signal-Konto schützt, und missbraucht die Funktion zur Geräteverknüpfung, mit der Benutzer Signal Desktop und Signal iPad mit ihren Telefonen verknüpfen können. Dieser Spionageansatz zeichnet sich durch seine Einzigartigkeit aus, da er sich von der Funktionalität aller anderen bekannten Malware unterscheidet.

Das obige Video zeigt, wie der Bedrohungsakteur das kompromittierte Gerät mit dem Signal-Konto des Angreifers verknüpft, ohne dass der Benutzer eingreifen muss. Es wird auch erklärt, wie Benutzer überprüfen können, ob ihr Signal-Konto mit einem anderen Gerät verbunden wurde.

Als Partner der Google App Defense Alliance hat ESET die jüngste Version des Signal Plus Messenger als bösartig identifiziert und seine Erkenntnisse umgehend mit Google geteilt. Nach unserer Warnung wurde die App aus dem Store entfernt. FlyGram wurde von ESET anfangs nicht als bösartig eingestuft, als es im Google Play Store veröffentlicht wurde.

Am 27. April 2023 meldeten wir Signal Plus Messenger sowohl bei Google Play als auch im Samsung Galaxy Store. Google ergriff Maßnahmen und entfernte die App am 23. Mai 2023. FlyGram wurde irgendwann nach dem 6. Januar 2021 aus Google Play entfernt. Zum Zeitpunkt der Erstellung dieses Artikels sind beide Apps leider immer noch im Samsung Galaxy Store erhältlich.

Überblick

Die bösartige Signal Plus Messenger-App wurde ursprünglich am 7. Juli 2022 auf Google Play hochgeladen, und es gelang ihr, mehr als hundert Mal installiert zu werden. Der Galaxy Store liefert jedoch keine Informationen über das Datum des ersten Uploads der App oder die Anzahl der Installationen. Die Präsenz der App auf beiden Plattformen ist in Abbildung 1 dargestellt .

BadBazaar Figure_01
Abbildung 1. Signal Plus Messenger auf Google Play (links) und im Samsung Galaxy Store (rechts) verfügbar

Beide Apps wurden vom gleichen Entwickler erstellt, haben die gleichen bösartigen Funktionen und die App-Beschreibungen in beiden Stores verweisen auf die gleiche Entwickler-Website, signalplus[.]org. Die Domain wurde am 15. Februar 2022 registriert und bietet einen Link zum Herunterladen der bösartigen Signal Plus Messenger-Anwendung entweder von Google Play oder direkt von der Website, wie in Abbildung 2 dargestellt. Unabhängig davon, woher die App heruntergeladen wird - sei es die Google Play-Version, die Samsung Galaxy Store-Version oder die Website-Version - alle drei Downloads führen dazu, dass man eine bösartig veränderte (oder gepatchte) Version der Open-Source-App Signal für Android erhält.

BadBazaar Figure_01
Abbildung 2. Verbreitungswebsite der bösartigen Signal Plus Messenger-App

Die bösartige FlyGram-App wurde ursprünglich um den 4. Juni 2020 auf Google Play hochgeladen und konnte mehr als 5.000 Installationen verzeichnen, bevor sie irgendwann nach dem 6. Januar 2021 vom Netz genommen wurde.

Beide FlyGram-Apps wurden mit dem identischen Code-Signatur-Zertifikat signiert. Darüber hinaus steht die gleiche FlyGram-App auch auf der speziellen Website flygram[.]org zum Download bereit. Diese Website wurde am 6. April 2020 registriert und bietet einen Link zum Herunterladen der bösartigen FlyGram-Anwendung direkt von der Website, wie in Abbildung 3 zu sehen ist.

 

BadBazaar Figure_03
Abbildung 3. Die bösartige FlyGram-Anwendung zum Herunterladen im Galaxy Store (links) und auf einer speziellen Website (rechts)

Aufgrund von Code-Ähnlichkeiten können wir Signal Plus Messenger und FlyGram der BadBazaar-Malware-Familie zuordnen, die zuvor gegen Uiguren und andere Turkvölker außerhalb Chinas eingesetzt wurde. BadBazaar wurde von Lookout der mit China verbündeten Gruppe APT15 zugeschrieben. Im Folgenden erläutern wir, warum wir die Zuschreibung auf die GREF-Gruppe beschränken und warum wir derzeit nicht in der Lage sind, GREF mit APT15 in Verbindung zu bringen, die Situation aber weiterhin beobachten. Weitere Einzelheiten über den Zeitplan der Entdeckung von BadBazaar finden Sie unter Abbildung 4 .

BadBazaar Figure_04
Abbildung 4. Zeitplan für die Entdeckung von BadBazaar

Viktimologie

Unsere Telemetrie meldete Entdeckungen auf Android-Geräten aus Australien, Brasilien, Dänemark, der Demokratischen Republik Kongo, Deutschland, Hongkong, Ungarn, Litauen, den Niederlanden, Polen, Portugal, Singapur, Spanien, der Ukraine, den Vereinigten Staaten und dem Jemen.

BadBazaar Figure 05
Abbildung 5. Telemetrie der Erkennung

Unseren Recherchen zufolge wurden potenzielle Opfer nicht nur über den offiziellen Google Play Store und den Samsung Galaxy Store, sondern auch über eine uigurische Telegram-Gruppe, die sich auf den Austausch von Android-Apps spezialisiert hat und mittlerweile mehr als 1.300 Mitglieder zählt, zur Installation der FlyGram-App gelockt.

Am 26. Juli 2020 postete einer der Gruppenbenutzer einen Link zu FlyGram im Google Play Store mit einer Beschreibung zum Herunterladen einer mehrsprachigen Telegram-App, wie in Abbildung 6 dargestellt . Dies könnte dabei helfen, denjenigen zu identifizieren, der die Uiguren mit der bösartigen FlyGram-Anwendung ins Visier genommen hat.

BadBazaar Figure_06
Abbildung 6. Link zum Herunterladen von FlyGram, gepostet in einer uigurischen Telegram-Gruppe

Anhand der verfügbaren Informationen in den offiziellen App-Stores können wir nicht feststellen, wer Ziel der Kampagne war, da die Apps ohne regionale Beschränkungen zum Download zur Verfügung standen.

Zuschreibung an GREF

Der spezifische Schadcode, der in Signal Plus Messenger und FlyGram gefunden wurde, gehört zur BadBazaar-Malware-Familie, die Lookout 2022 der APT15 Gruppe zuschrieb. Bei näherer Betrachtung stellte sich jedoch heraus, dass diese Zuordnung auf einer Überschneidung der Netzwerkinfrastruktur mit einer anderen Android-Malware-Familie namens DoubleAgent beruhte, die Lookout bereits 2020 dokumentiert hatte. Lookout brachte DoubleAgent mit XSLCmd in Verbindung, einer OS X-Backdoor, die 2014 von FireEye dokumentiert und ebenfalls mit der GREF-Gruppe in Verbindung gebracht wurde. Während mehrere Quellen behaupten, dass GREF mit APT15 in Verbindung steht (z. B. NCCGroup, Lookout, Malpedia), haben die ESET-Forscher nicht genügend Beweise, um diese Verbindung zu unterstützen und verfolgen GREF weiterhin als separate Gruppe.

Basierend auf diesen Indikatoren ordnen wir die bösartigen Anwendungen Signal Plus Messenger und FlyGram mit hoher Wahrscheinlichkeit GREF zu:

  • Signifikante Code-Ähnlichkeiten zwischen den Signal Plus Messenger- und FlyGram-Samples und der BadBazaar-Malware-Familie, die Lookout dem GREF-Cluster von APT15 zuordnet. Nach unserem Kenntnisstand ist diese Malware-Familie einzigartig bei GREF.
  • Überschneidungen bei der Zielsetzung: Die bösartige FlyGram-App nutzte eine uigurische Telegram-Gruppe als einen der Verbreitungsmechanismen. Dies deckt sich mit den Zielen anderer Android-Trojaner, die zuvor von GREF verwendet wurden (BadBazaar, SilkBean, DoubleAgent, CarbonSteal und GoldenEagle).

Vergleicht man den bösartigen Code in einem BadBazaar-Sample (SHA-1: E368DB837EDF340E47E85652D6159D6E90725B0D), das Lookout entdeckt hat, mit dem in Signal Plus Messenger und FlyGram, sieht man ähnliche oder dieselben eindeutigen Klassennamen und den Code, der für die Exfiltration von Benutzerdaten verantwortlich ist. Dies ist in Abbildung 7 und Abbildung 8 zu sehen .

BadBazaar Figure_07
Abbildung 7. Code zum Sammeln von Gerätedaten: BadBazaar-Beispiel, entdeckt von Lookout (links) und Signal Plus Messenger (rechts)
Figure_08
Abbildung 8. Bösartiger Code, der für das Sammeln von Wi-Fi-Informationen von BadBazaar (links) und FlyGram (rechts) verantwortlich ist

Signal Plus Messenger und FlyGram enthalten auch den gleichen Code wie BadBazaar, um zu prüfen, ob der Gerätebetreiber Chinese ist: siehe Abbildung 9 .

Figure_07
Abbildung 9. Code für die Identifizierung, ob der Gerätebetreiber Chinese ist

Dieser Code ist einzigartig in der BadBazaar-Malwarefamilie.

Technische Analyse

Sowohl Signal Plus Messenger als auch FlyGram sind leicht unterschiedliche Varianten von BadBazaar, die sich auf die Exfiltration von Benutzerdaten und Spionage konzentrieren. Es ist jedoch wichtig zu beachten, dass jede von ihnen über einzigartige bösartige Funktionen verfügt. Um Klarheit zu schaffen und Verwirrung zu vermeiden, werden wir jede Variante separat analysieren.

Trojanisiertes Signal - Signal Plus Messenger-App

Nach dem ersten Start der App muss sich der Benutzer über die legitime Signal-Funktionalität bei Signal Plus Messenger anmelden, genau wie bei der offiziellen Signal-App für Android. Nach der Anmeldung beginnt Signal Plus Messenger mit seinem Command-and-Control-Server (C&C) zu kommunizieren, der sich unter signalplus[.]org:4332 befindet . Während dieser Kommunikation sendet die App verschiedene Geräteinformationen an den Server, wie z. B.: IMEI-Nummer, Telefonnummer, MAC-Adresse, Betreiberdetails, Standortdaten, Wi-Fi-Informationen, Signal-PIN-Nummer, die das Konto schützt (falls vom Benutzer aktiviert), E-Mails für Google-Konten und Kontaktliste. Die Serveranfrage ist in Abbildung 10 zu sehen .

Figure_11
Abbildung 10. BadBazaar lädt Geräteinformationen auf seinen C&C-Server hoch

Legitime Signal-Apps bieten eine Funktion , mit der Benutzer Signal Desktop und Signal iPad mit ihren Telefonen verbinden können, um bequem über mehrere Geräte zu kommunizieren. Um zusätzliche Signal-Geräte ordnungsgemäß mit einem Smartphone zu verknüpfen, muss der Benutzer zunächst einen QR-Code scannen, der auf dem zu koppelnden Gerät angezeigt wird. Nach dem Scannen erteilt der Benutzer die Erlaubnis für die Verbindung, indem er auf die Schaltfläche "Gerät verbinden" ("Link device") tippt , wie in Abbildung 11 dargestellt. Der QR-Code enthält eine eindeutige URI mit einer generierten ID und einem Schlüssel, die eine sichere und individuelle Verknüpfung für jeden neuen QR-Code gewährleisten. Ein Beispiel für einen solchen URI ist sgnl://linkdevice?uuid=<redacted>fV2MLK3P_FLFJ4HOpA&pub_key=<redacted>1cCVJIyt2uPJK4fWvXt0m6XEBN02qJG7pc%2BmvQa.

BadBazaar Figure_01
Abbildung 11. Der Benutzer muss die Geräteverknüpfung bestätigen

Signal Plus Messenger kann Signal-Nachrichten ausspionieren, indem er die Funktion zur Geräteverknüpfung missbraucht. Dies geschieht, indem das kompromittierte Gerät automatisch mit dem Signal-Gerät des Angreifers verbunden wird. Diese Spionagemethode ist einzigartig, da diese Funktion noch nie zuvor von anderer Malware missbraucht wurde und dies die einzige Methode ist, mit der der Angreifer den Inhalt von Signal-Nachrichten erhalten kann.

BadBazaar, die Malware, die für die Spionage verantwortlich ist, umgeht den üblichen Prozess des QR-Code-Scans und des Benutzerklicks, indem sie die erforderliche URI von ihrem C&C-Server erhält und die erforderliche Aktion direkt auslöst, wenn auf die Schaltfläche "Gerät verbinden" geklickt wird. Auf diese Weise kann die Malware das Smartphone des Opfers heimlich mit dem Gerät des Angreifers verbinden und so die Signalkommunikation ohne das Wissen des Opfers ausspionieren, wie in Abbildung 12 dargestellt .

 

BadBazaar Figure_01
Abbildung 12. Mechanismus der Verknüpfung der Signal-Kommunikation des Opfers mit dem Angreifer

ESET Research hat die Entwickler von Signal über dieses Schlupfloch informiert. Der verschlüsselte Messaging-Dienst wies darauf hin, dass Bedrohungsakteure den Code einer beliebigen Messaging-App ändern und sie auf betrügerische oder irreführende Weise bewerben können. Wenn in diesem Fall die offiziellen Signal-Clients eine Benachrichtigung anzeigen, sobald ein neues Gerät mit dem Konto verknüpft wird, könnte die gefälschte Version diesen Code-Pfad einfach deaktivieren, um die Warnung zu umgehen und alle böswillig verknüpften Geräte zu verbergen. Die einzige Möglichkeit, um zu verhindern, dass man Opfer einer gefälschten Signal- oder einer anderen bösartigen Messaging-App wird, besteht darin, nur offizielle Versionen solcher Apps aus offiziellen Kanälen herunterzuladen.

Während unserer Recherchen hat der Server keine URI für die Verknüpfung an das Gerät zurückgegeben, was darauf hindeutet, dass dies höchstwahrscheinlich nur für gezielte Benutzer aktiviert ist, basierend auf den Daten, die zuvor von der Malware an den C&C-Server gesendet wurden.

Um das Verhalten zu verstehen und zu replizieren, haben wir das Frida-Instrumentationstoolkit verwendet, um bösartiges Verhalten zu simulieren und unser kompromittiertes Signal-Android-Gerät (Opfer) mit unserem Signal-Desktop-Gerät (Angreifer), das auf einem Laptop läuft, automatisch zu verknüpfen. Dieser Verknüpfungsprozess erfolgte unbemerkt, ohne jegliche Interaktion oder Benachrichtigung des Benutzers.

Um sicherzustellen, dass ein Signal-Konto nicht mit einem anderen Gerät verknüpft ist, muss der Benutzer in den Einstellungen der App nach verknüpften oder verbundenen Geräten schauen. Auf diese Weise können Benutzer nicht autorisierte Verknüpfungen mit ihrem Signal-Konto erkennen und geeignete Maßnahmen zur Sicherung ihrer Kommunikation ergreifen, da BadBazaar ein mit einem Angreifer verbundenes Gerät nicht aus dem Menü ausblenden kann, wie in Abbildung 13 dargestellt .

 

BadBazaar Figure_01
Abbildung 13. Liste der verknüpften Geräte

BadBazaar verwendet Proxyserver, die vom C&C-Server empfangen werden. Die Malware kann bis zu sechs verschiedene Proxyserver empfangen, die auf Subdomänen des C&C-Servers verweisen.

Alle von Signal Plus Messenger bereitgestellten Proxyserver sind:

  • proxy1.signalplus[.]org 154.202.59[.]169
  • proxy2.signalplus[.]org 92.118.189[.]164
  • proxy3.signalplus[.]org 45.154.12[.]151
  • proxy4.signalplus[.]org 45.154.12[.]202
  • proxy5.signalplus[.]org 103.27.186[.]195
  • proxy6.signalplus[.]org 103.27.186[.]156

Die Funktion zur Verwendung eines Proxy-Servers durch die App wird vom Angreifer nicht implementiert. Stattdessen wird die legitime Signal-Proxy-Funktionalität verwendet, aber dann über den Server des Angreifers geroutet. Infolgedessen kann der Proxyserver des Angreifers möglicherweise einige Metadaten protokollieren, kann aber keine Daten und Nachrichten entschlüsseln, die von Signal selbst gesendet oder empfangen werden.

Trojanisierte Telegram-FlyGram-App

Nach dem ersten Start der App muss sich der Benutzer über die legitime Telegram-Funktionalität bei der FlyGram-App anmelden, wie es auch bei der offiziellen Telegram-App erforderlich ist. Bevor die Anmeldung abgeschlossen ist, beginnt FlyGram mit dem C&C-Server zu kommunizieren, der sich unter flygram[.]org:4432 befindet, und sendet grundlegende Geräteinformationen wie: IMEI-Nummer, MAC-Adresse, Betreibername, Gerätesprache und Zeitzone. Anhand der Antwort des Servers ist BadBazaar in der Lage, weitere sensible Informationen vom Gerät zu exfiltrieren, darunter:

  • Kontaktliste,
  • Anrufprotokolle,
  • Liste der installierten Apps,
  • Liste der Google-Konten,
  • Gerätestandort und
  • Wi-Fi-Informationen (IP-Adresse, SSID, BSSID, MAC-Adresse, Gateway, DNS, Erkennung lokaler Netzwerkgeräte).

FlyGram kann auch eine URL vom C&C-Server erhalten, um ein Update herunterzuladen - siehe Abbildung 14. Das heruntergeladene Update (flygram.apk) wird nicht dynamisch als zusätzliche Payload geladen, sondern muss vom Benutzer manuell installiert werden. Während unserer Untersuchung konnten wir nicht auf die Update-Datei zugreifen, da der Download-Link nicht mehr aktiv war.

BadBazaar Figure_01
Abbildung 14. Server-Antwort mit URL-Link zum FlyGram-Update

BadBazaar kann interne Telegram-Dateien exfiltrieren , die sich im Verzeichnis /data/data/org.telegram.messenger/shared_prefs befinden. Diese Dateien enthalten Informationen und Einstellungen im Zusammenhang mit Telegram, wie z. B. das Konto-Token, die zuletzt angerufene Nummer und die Sprache der App. Sie enthalten jedoch nicht die Telegram-Kontaktliste, Nachrichten oder andere sensible Daten.

Um den Exfiltrationsprozess durchzuführen, komprimiert BadBazaar den Inhalt dieses Verzeichnisses, wobei Dateien mit den Erweiterungen .jpg oder .png ausgeschlossen werden. Die komprimierten Daten werden dann in der Datei /data/data/org.telegram.FlyGram/cache/tgmcache/tgdata.rc gespeichert . Schließlich sendet die Malware diese komprimierte Datei an den C&C-Server, wie in Abbildung 15 dargestellt .

BadBazaar Figure_01
Abbildung 15. Codefragment, das für die Auflistung der Dateien im Verzeichnis shared_prefs verantwortlich ist

Die BadBazaar-Akteure haben Maßnahmen ergriffen, um ihre FlyGram-App davor zu schützen, bei der Analyse des Netzwerkverkehrs durch Malware-Analysten oder automatisierte Sandbox-Tools abgefangen zu werden, die versuchen, den C&C-Server und die Datenexfiltrationsaktivitäten zu identifizieren. Sie erreichten diesen Schutz durch eine Technik namens SSL-Pinning.

SSL-Pinning ist in der Klasse org.telegram.Api.Utils.CertUtils implementiert, wie in Abbildung 16 dargestellt. Das Zertifikat wird im Ressourcenverzeichnis der APK-Datei gespeichert, und zwar in der Datei /res/raw/telemon_client.cer mit WMSvc-WIN-50QO3EIRQVP als Common Name (CN). Dieser SSL-Pinning-Mechanismus stellt sicher, dass nur verschlüsselte Kommunikation mit dem vordefinierten Zertifikat erlaubt ist, was es Außenstehenden erschwert, den Netzwerkverkehr zwischen der FlyGram-App und ihrem C&C-Server abzufangen und zu analysieren. Im Gegensatz dazu verwendet die Signal Plus Messenger-App kein SSL-Pinning, d. h. sie verfügt nicht über dieses spezielle Schutzniveau.

 

BadBazaar Figure_01
Abbildung 16. Von BadBazaar implementiertes SSL-Pinning

Zusätzlich zu den legitimen Telegram-Funktionen haben die Entwickler von FlyGram eine Cloud-Sync-Funktion implementiert, die es den Nutzern ermöglicht, Telegram-Kontakte, Profilbilder, Gruppen, Kanäle usw. zu sichern und wiederherzustellen (siehe Abbildung 17). Um diese Funktion zu nutzen, muss der Benutzer zunächst ein Konto erstellen. Das Konto wird über die C&C-Server-API des Angreifers erstellt (flygram[.]org:4432). Sobald das Konto eingerichtet ist, können die Benutzer ihre Backups auf den C&C-Server des Angreifers hochladen oder ihre vorherigen Backups von dort abrufen.

 

BadBazaar Figure_01
Abbildung 17. Anmeldebildschirm von Cloud Sync (links) und Schnittstelle zur Kontosynchronisierung (rechts)

Bei unserer eingehenden Untersuchung der Cloud-Sync-API haben wir eine interessante Entdeckung gemacht. Der Server bietet eine eindeutige ID für jedes neu erstellte Benutzerkonto. Bei dieser ID handelt es sich um einen eindeutigen Wert, der sich mit jedem neuen Konto um eins erhöht. Durch die Analyse dieser ID-Werte können wir die Anzahl der Nutzer schätzen, die FlyGram installiert und sich für die Cloud Sync-Funktion angemeldet haben. Zum Zeitpunkt unserer Analyse wurde unserem letzten Testkonto der ID-Wert 13.953 zugewiesen (siehe Abbildung 18), was bedeutet, dass zu diesem Zeitpunkt 13.953 Benutzer (einschließlich uns zwei Mal) Konten mit aktivierter Cloud-Sync-Funktion erstellt hatten .

 

BadBazaar Figure_01
Abbildung 18. C&C-Server-Antwort gibt Benutzerdaten mit ID zurück

FlyGram verwendet auch Proxyserver, die vom C&C-Server empfangen werden; wir haben diese fünf Proxyserver beobachtet:

  • 45.63.89[.]238:1011
  • 45.133.238[.]92:6023
  • 217.163.29[.]84:7011
  • 185.239.227[.]14:3023
  • 62.210.28[.]116:2011

Um die Proxy-Server-Funktionalität zu aktivieren, haben die Angreifer sie nicht direkt in die App implementiert. Stattdessen nutzten sie die legitime Telegram-Funktionalität, leiteten sie aber über ihre eigenen Server um. Infolgedessen kann der Proxy-Server des Angreifers zwar einige Metadaten protokollieren, aber die eigentlichen Daten und Nachrichten, die in Telegram selbst ausgetauscht werden, nicht entschlüsseln. Im Gegensatz zum Signal Plus Messenger hat FlyGram nicht die Möglichkeit, ein Telegram-Konto mit dem Angreifer zu verknüpfen oder die verschlüsselte Kommunikation seiner Opfer abzufangen.

Schlussfolgerung

Zwei aktive Android-Kampagnen, die von der GREF APT-Gruppe betrieben werden, verbreiteten Android-Malware namens BadBazaar über zwei Apps über den offiziellen Google Play Store und verbreiten sie immer noch über den Samsung Galaxy Store, andere alternative App-Stores und spezielle Websites. Ein Link zu FlyGram im Google Play Store wurde auch in einer uigurischen Telegram-Gruppe geteilt. Der bösartige Code der BadBazaar-Familie war in trojanisierten Signal- und Telegram-Apps versteckt, die den Opfern eine funktionierende App bieten sollten (ohne Grund, sie zu entfernen), wobei die Spionage jedoch im Hintergrund stattfand.

Der Hauptzweck von BadBazaar besteht darin, Geräteinformationen, die Kontaktliste, Anrufprotokolle und die Liste der installierten Apps zu exfiltrieren und Signal-Nachrichten auszuspionieren, indem die Signal Plus Messenger-App des Opfers heimlich mit dem Gerät des Angreifers verbunden wird.

IoCs

Dateien

SHA-1

Package name

ESET detection name

Description

19E5CF2E8EED73EE614B668BC1DBDDA01E058C0C

org.thoughtcrime.securesmsplus

Android/Spy.BadBazaar.A

BadBazaar malware.

DAB2F85C5282889E678CD0901CD6DE027FD0EC44

org.thoughtcrime.securesmsplus

Android/Spy.BadBazaar.A

BadBazaar malware from Google Play store.

606E33614CFA4969F0BF8B0828710C9A23BDA22B

org.thoughtcrime.securesmsplus

Android/Spy.BadBazaar.A

BadBazaar malware from Samsung Galaxy Store.

C6E26EAFBF6703DC19446944AF5DED65F86C9571

org.telegram.FlyGram

Android/Spy.BadBazaar.A

BadBazaar malware from distribution website and Samsung Galaxy Store.

B0402E3B6270DCA3DD42FFEB033F02B9BCD9228E

org.telegram.FlyGram

Android/Spy.BadBazaar.A

BadBazaar malware from Google Play store.

Netzwerk

IP

Domain

Hosting provider

First seen

Details

45.63.89[.]238

45.63.89.238.vultrusercontent[.]com

The Constant Company, LLC

2020-01-04

FlyGram proxy server.

45.133.238[.]92

mail.pmumail[.]com

XNNET LLC

2020-11-26

FlyGram proxy server.

45.154.12[.]132

signalplus[.]org

MOACK.Co.LTD

2022-06-13

C&C server.

45.154.12[.]151

proxy3.signalplus[.]org

MOACK.Co.LTD

2021-02-02

Signal Plus proxy server.

45.154.12[.]202

proxy4.signalplus[.]org

MOACK.Co.LTD

2020-12-14

Signal Plus proxy server.

62.210.28[.]116

62-210-28-116.rev.poneytelecom[.]eu

SCALEWAY S.A.S.

2020-03-08

FlyGram proxy server.

82.180.174[.]230

www.signalplus[.]org

Hostinger International Limited

2022-10-26

Distribution website.

92.118.189[.]164

proxy2.signalplus[.]org

CNSERVERS LLC

N/A

Signal Plus proxy server.

103.27.186[.]156

proxy6.signalplus[.]org

Starry Network Limited

2022-06-13

Signal Plus proxy server.

103.27.186[.]195

proxy5.signalplus[.]org

Starry Network Limited

2021-12-21

Signal Plus proxy server.

148.251.87[.]245

flygram[.]org

Hetzner Online GmbH - Contact Role, ORG-HOA1-RIPE

2020-09-10

C&C server.

154.202.59[.]169

proxy1.signalplus[.]org

CNSERVERS LLC

2022-06-13

Signal Plus proxy server.

156.67.73[.]71

www.flygram[.]org

Hostinger International Limited

2021-06-04

Distribution website.

185.239.227[.]14

N/A

Starry Network Limited

N/A

FlyGram proxy server.

217.163.29[.]84

N/A

Abuse-C Role

N/A

FlyGram proxy server.

MITRE ATT&CK-Techniken

Diese Tabelle wurde mit der Version 13 des MITRE ATT&CK Frameworkserstellt .

 

Tactic

ID

Name

Description

Discovery

T1418

Software Discovery

BadBazaar can obtain a list of installed applications.

T1422

System Network Configuration Discovery

BadBazaar can extract IMEI, IMSI, IP address, phone number, and country.

T1426

System Information Discovery

BadBazaar can extract information about the device, including SIM serial number, device ID, and common system information.

Collection

T1533

Data from Local System

BadBazaar can exfiltrate files from a device.

T1430

Location Tracking

BadBazaar tracks device location.

T1636.002

Protected User Data: Call Logs

BadBazaar can extract call logs.

T1636.003

Protected User Data: Contact List

BadBazaar can extract the device’s contact list.

T1638

Adversary-in-the-Middle

BadBazaar can link the victim’s Signal account to a device the attacker controls and intercept communications.

Command and Control

T1437.001

Application Layer Protocol: Web Protocols

BadBazaar uses HTTPS to communicate with its C&C server.

T1509

Non-Standard Port

BadBazaar communicates with its C&C server using HTTPS requests over port 4332 or 4432.

Exfiltration

T1646

Exfiltration Over C2 Channel

BadBazaar exfiltrates data using HTTPS.