Analysiert: Werbekeule statt Glitzersteine – Android-Malware CallJam seziert
Eine App auf Goole Play gab sich als Helferlein für das erfolgreiche Spiel "Clash Royale" aus. Doch statt der versprochenen Juwelen gab es teure Rechnungen. Olivia von Westernhagen analysiert den Trojaner.
Die Macher der rund 500.000-mal heruntergeladenen App "Gems Chest for Clash Royale" lockten auf Google Play mit folgendem Text:
"Hi im clash royale fan and i have developed the best guide to obtain easy free chests and legendary cards with my advices. […] No hacks, only guide of text and image."
Doch dabei handelt es sich um kein Helferlein das kostenlose Spiele-Items verspricht, sondern eine Malware, die sich im Fahrwasser des erfolgreichen Spiels "Clash Royale" (Android: 50 bis 100 Millionen Installationen) auf Geräte schleichen will.
Die letzte Aktualisierung der App erfolgte am 24. Mai. Demzufolge blieb der Schädling mehrere Monate unerkannt, bis Google ihn aus dem App Store verbannt hat. Laut der Kurz-Beschreibung der Sicherheitsforscher von Checkpoint blendet der Schädling unerwünschte Werbung ein und ruft auf Kosten des Nutzers teure Premium-Nummern im Ausland an. Sie haben die Malware CallJam getauft.
Ich wollte genau wissen, wie die App etwa Anrufe tätigt, warum sie so lange im App Store sein konnte und wie die Vielzahl von größtenteils positiven Bewertungen zustande gekommen ist. Dafür beschloss ich, mir mit Hilfe eines Android-Emulators selbst ein Bild zu machen.
Obwohl CallJam mittlerweile nicht mehr im Play Store zu finden ist, musste ich nicht lange nach einem geeigneten Sample suchen: In mehreren Play-Store-Alternativen steht die App noch immer zum Download bereit. Die von mir analysierte Datei hat den MD5-Wert 2016ea74f15f4d0b98b7c50b05dacd09
und wurde am 30. Mai zum ersten Mal auf Virustotal hochgeladen.
Die Oberfläche der App: Ein Blender erster Güte
Für die Android-Emulation nutze ich Genymotion. Der seit 2013 verfügbare Emulator ist in einer eingeschränkten Personal Edition kostenlos verfügbar und nutzt VirtualBox zur Virtualisierung. Letztere wird bei der Genymotion-Installation gleich mitinstalliert. Nach dem Anlegen eines neuen virtuellen Android-Gerätes, erscheint dieses automatisch als VM in der VirtualBox.
Ich starte mein neues "Custom Phone" mit Android 4.4.4. Indem ich die APK-Datei mit Gems Chests for Clash Royale einfach per Drag-and-Drop von meinem Desktop in die VM ziehe, findet eine automatische Installation statt.
Ein Blick auf den Bildschirm des virtuellen Smartphones zeigt mir, dass es sich hier keineswegs wie behauptet um einen reinen Text-Guide mit Bildern handelt. Stattdessen sehe ich drei Felder, in die ich meinen Clash-Royale-Nutzernamen und die von mir gewünschte Anzahl an Edelsteinen und Goldmünzen eingeben soll. Mir ist ein Rätsel, wie irgendjemand ernsthaft glauben kann, dass allein auf Basis eines Nutzernamens auf magische Weise Spielinhalte in einer anderen App landen sollen.
Während ich, um Unvoreingenommenheit bemüht, versuche, Gegenargumente wie erforderliche Login-Daten und das Sandbox-Prinzip von Android-Apps auszublenden, bohrt sich ein rot blinkender Schriftzug unangenehm in meine Augäpfel: "NEW VERSION! 100 % WORKING!", steht unter den Eingabefeldern. Okay – spätestens an dieser Stelle müsste man meiner Einschätzung nach misstrauisch werden.
Unterhalb des Schriftzugs befinden sich zwei Buttons, die man offensichtlich nacheinander anklicken soll, um das Generieren der Edelsteine zu starten. "Rate App" steht auf dem ersten, "Verify & Generate" auf dem zweiten. Wie ich später in der detaillierten Analyse herausfinde, führt – oder besser: führte – der erste Button geradewegs in den Play Store. Nutzer sollten glauben, dass das (positive) Bewerten der App erforderlich ist, um sich Edelsteine generieren zu lassen. Das hat offensichtlich geklappt: Die Macher der App konnten über 4700 Bewertungen anhäufen und dabei 4 von 5 Sternen erzielen. Solche Massen an positiven Bewertungen lassen das Misstrauen natürlich schwinden und animieren dazu, dem "100 % WORKING!"-Schriftzug zu vertrauen.
Darauf falle ich natürlich nicht rein, klicke einfach direkt auf den zweiten Button und stelle fest, dass die beiden Schritte durchaus unabhängig voneinander ausführbar sind. Nun erscheint ein neuer Bildschirm, bei dessen Betrachtung ich mich unwillkürlich an die PS3-Emulator-Analyse erinnert fühle, die ich vor etwa einem Jahr im Rahmen der "Analysiert:"-Reihe durchgeführt habe. Ganz genau: Statt der versprochenen Funktion folgt nun die eingebaute Werbekeule.
"Verify you are human to get the gems", fordert mich eine Nachricht auf. Nach einem erneuten Klick erscheinen drei weitere Buttons, die mich geradewegs auf Werbe-Seiten führen. Damit die App (hoffentlich) endlich das tut, was sie soll, kann ich wahlweise ein AV-Programm mit dem originellen Namen „McSecure“ installieren oder ein Spiel bei "Jamba" herunterladen. Beides funktioniert jedoch nur, wenn ich meine Handynummer eingebe und so ein kostenpflichtiges Abo abschließe. Die dritte Option ist der Download einer weiteren App aus dem offiziellen Play Store, unter der jedoch schon mehrere Negativ-Rezensionen samt Viren-Warnungen stehen.
Nein danke – ich verzichte und beende an dieser Stelle meinen CallJam-Praxistest. Ich möchte mir die Schad-Funktionen der Malware nun im Detail ansehen, weshalb mein nächster Schritt im genüsslichen Sezieren der APK-Datei besteht.