Die Infektionskette beginnt mit dem Köder in sozialen Netzwerken, der Android-Nutzer auf eine eigens präparierte Website leitet. Die Seite prüft das Betriebssystem des Besuchers und zeigt den Download-Button nur Android-Geräten an. Heruntergeladen wird eine Datei namens app.apk — ein Dropper, der nach dem Start zunächst darum bittet, als Standard-Startbildschirm (Home-Anwendung) des Geräts eingerichtet zu werden. Danach landet das Opfer bei jedem Druck auf die Home-Taste wieder in dessen Oberfläche.

Vor dem Nachladen der eigentlichen Schadsoftware fordert der Dropper die Erlaubnis für eine VPN-Verbindung an. Wird sie erteilt, leitet das VPN den Datenverkehr des Geräts in eine funktionslose Schnittstelle um — mit Ausnahme des Droppers selbst. Andere Anwendungen verlieren während der Installation ihre Internetverbindung. ThreatFabric hält es für möglich, dass diese Unterbrechung Reputations- und Code-Analyseprüfungen erschweren soll; Google Play Protect erkennt bekannte potenziell schädliche Anwendungen jedoch weiterhin offline, was die Wirkung der Technik begrenzt.

Die Hauptseite des Droppers lädt die StreamRat-Nutzlast als update_{timestamp}.apk in das öffentliche Downloads-Verzeichnis. Anschließend fragt der Dropper die Berechtigung zur Installation von Apps aus unbekannten Quellen ab und spielt die Nutzlast über den Paketinstallationsmechanismus von Android ein. StreamRat startet und verlangt Zugriff auf die Bedienungshilfen. Nach der Freigabe verbindet sich die Schadsoftware mit ihrem Command-and-Control-Server; den VPN-Tunnel schaltet der Dropper nach der Ausführung der Nutzlast ab, damit diese Kommunikation möglich wird.

Anzeige

Für Bildschirmaufnahmen nutzt StreamRat zwei Wege. Der erste greift auf die MediaProjection-Schnittstelle von Android zurück, die einen Zustimmungsdialog anzeigt und üblicherweise durch eine Anzeige für Bildschirmfreigabe kenntlich gemacht wird — den Dialog kann die Schadsoftware über die zuvor erteilten Bedienungshilfen selbst bestätigen. Ein zweiter Modus verwendet die Accessibility-Methode takeScreenshot() und erfasst den Bildschirm damit außerhalb der MediaProjection-Anzeige.

Nach Angaben von ThreatFabric wurde StreamRat auch über TikTok beworben. Als öffentlicher Beleg dafür dient allerdings nur Code der Landing-Page, der TikTok als verweisende Anwendung erkennen kann; einen Anzeigendatensatz oder Reichweitenzahlen für TikTok nennt der Bericht nicht. Dieselben Banner wurden den Forschern zufolge wahrscheinlich auf Facebook und Instagram ausgespielt, welche Platzierung bei Meta die primäre war, blieb offen.

Eine Eingrenzung auf bestimmte Android-Versionen veröffentlichte ThreatFabric nicht — die Betroffenheit hängt am Installationsverhalten und an den angeforderten Berechtigungen. Als Schutz nennen die Forscher den naheliegenden Abbruch: Wer eine vermeintliche Streaming-App installiert, die Systemsteuerungsrechte ohne Bezug zum Streaming verlangt, sollte die Installation abbrechen.

Eine Verbindung zu früheren Aktivitäten sehen die Forscher in der Herkunft der Nutzlast: Sie stammte aus einem GitHub-Konto, das ThreatFabric einer früheren Mirax-Kampagne zuordnet, und der Dropper ähnelte dem dort eingesetzten stark. Cleafy hatte in seinem Mirax-Bericht festgehalten: „Die Dropper werden über GitHub-Releases gehostet, mit verschiedenen Ersatz-Links und täglichen Paketaktualisierungen."