Een mysterieuze familie van malware verbergt zich al jaren in Google Play

Afbeelding van een telefoon die is geïnfecteerd met malware

Een mysterieuze familie van Android-malware met een bewezen geschiedenis van het effectief verbergen van talloze spionageactiviteiten is opnieuw gevonden op Google Play na meer dan twee jaar zich in het volle zicht te hebben verborgen.

De apps, vermomd als apps voor het delen van bestanden, astronomie en cryptocurrency, hosten Mandrake, een familie van zeer opdringerige malware die beveiligingsbedrijf Bitdefender 2020 noemde. Bitdefender zei dat de apps in twee golven verschenen, één van 2016 tot 2017 en opnieuw in 2018 tot 2020. Het vermogen van Mandrake om onopgemerkt te blijven, was het resultaat van een aantal ongewoon rigoureuze stappen om onder de radar te vliegen. Deze omvatten:

  • Het werkt niet in negentig landen, inclusief de landen die deel uitmaken van de voormalige Sovjet-Unie
  • Het leveren van de uiteindelijke lading alleen aan slachtoffers die zeer nauw het doelwit waren
  • Bevat een kill-schakelaar die de ontwikkelaars seppuku noemden (een Japanse vorm van rituele zelfmoord) die alle sporen van de malware volledig wiste
  • Volledig functionele aas-apps in categorieën, waaronder Financiën, Auto’s en voertuigen, Videospelers en -editors, Kunst en design en Productiviteit
  • Snelle oplossingen voor bugs gerapporteerd in reacties
  • Een TLS-certificaat toevoegen om de communicatie met command-and-control-servers te verdoezelen.

Op de loer in de schaduw

Bitdefender schatte het aantal slachtoffers voor de golf van 2018 tot 2020 op tienduizenden en “waarschijnlijk honderdduizenden over de hele periode van vier jaar”.

Na het rapport van Bitdefender uit 2020 leken met Mandrake geïnfecteerde apps uit Play te zijn verdwenen. Beveiligingsbedrijf Kaspersky meldde dat de apps in 2022 opnieuw opdoken en tot nu toe onopgemerkt waren gebleven. Naast de nieuwe reeks lokapps hebben Mandrake-operators ook verschillende maatregelen geïntroduceerd om kwaadaardig gedrag beter te verbergen, analyse uit de ‘sandbox’ te vermijden die onderzoekers gebruiken om malware te identificeren en te bestuderen, en anti-malwarebeschermingen te bestrijden die de afgelopen jaren zijn geïntroduceerd.

“De Mandrake-spyware evolueert dynamisch, verbetert de cloaking-methoden, vermijdt sandboxes en omzeilt nieuwe verdedigingsmechanismen”, schrijven Kaspersky-onderzoekers Tatyana Shishkova en Igor Golovin. “Nadat de apps van de eerste campagne vier jaar onontdekt bleven, ligt de huidige al twee jaar in de schaduw op de loer, terwijl hij nog steeds beschikbaar is om te downloaden op Google Play. Dit benadrukt de verbazingwekkende vaardigheden van bedreigingsactoren, en dat strengere controles op apps voordat ze op marktplaatsen worden vrijgegeven, zich alleen maar vertalen in meer geavanceerde, moeilijker te detecteren bedreigingen die de officiële app-marktplaatsen binnensluipen.

Een belangrijk kenmerk van de nieuwste generatie Mandrake zijn meerdere verduisteringslagen die zijn ontworpen om analyse door onderzoekers te voorkomen en het controleproces te omzeilen dat Google Play gebruikt om kwaadaardige apps te identificeren. Alle vijf door Kaspersky ontdekte apps verschenen in 2022 voor het eerst in Play en bleven zeker een jaar beschikbaar. De nieuwste app werd op 15 maart bijgewerkt en later die maand van de app-markt verwijderd. Eerder deze maand is geen van de apps door een grote aanbieder van malwaredetectie als schadelijk aangemerkt.

Eén methode voor verduistering was het verplaatsen van kwaadaardige functionaliteit naar eigen bibliotheken, die vervolgens verduisterd werden. Voorheen bewaarde Mandrake de kwaadaardige logica van de eerste fase in een zogenaamd applicatie-DEX-bestand, een bestandstype dat triviaal is om te analyseren. Door de locatie te wijzigen naar de bronbibliotheek libopencv_dnn.so, is Mandrake-code moeilijker te analyseren en te ontdekken omdat de oorspronkelijke bibliotheken moeilijker te inspecteren zijn. Tot dan toe verduisterden ze de bronbibliotheek met de OLLVM-obfuscator, de Mandrake-apps waren zelfs nog sluipender.

Het belangrijkste doel van Mandrake is het stelen van gebruikersgegevens en het downloaden en uitvoeren van kwaadaardige applicaties. Maar deze acties worden alleen uitgevoerd in de latere stadia van infecties die slechts een klein aantal zorgvuldig geselecteerde doelwitten bereiken. De primaire methode is om het scherm vast te leggen terwijl het slachtoffer de code invoert. Schermopname wordt geïnitieerd door een controleserver die opdrachten verzendt zoals start_v, start_i of start_a. De onderzoekers legden uit:

Wanneer Mandrake de opdracht start_v ontvangt, start de service en laadt de opgegeven URL in een webview van de applicatie met een aangepaste JavaScript-interface, die de applicatie gebruikt om de webpagina die wordt geladen te manipuleren.

Terwijl de pagina wordt geladen, brengt de applicatie een websocket-verbinding tot stand en begint met het maken van schermafbeeldingen van de pagina met regelmatige tussenpozen, codeert deze in base64-strings en verzendt deze naar de C2-server. Aanvallers kunnen extra bedieningselementen gebruiken om de framesnelheid en kwaliteit aan te passen. Bedreigingsactoren noemen het “vnc_stream”. Tegelijkertijd kan de C2-server besturingsopdrachten terugsturen die ervoor zorgen dat de applicatie acties uitvoert, zoals slepen naar een bepaalde coördinaat, het wijzigen van de grootte en resolutie van de webweergave, schakelen tussen desktop- en mobiele paginaweergavemodi, in- of uitschakelen uitvoering van JavaScript uitschakelen, de user-agent wijzigen, cookies importeren of exporteren, heen en weer gaan, een geladen pagina vernieuwen, inzoomen op een geladen pagina, enzovoort.

Wanneer Mandrake het start_i commando ontvangt, laadt het de URL in de webview, maar in plaats van een “VNC”-stream te starten, begint de C2-server het scherm op te nemen en een log naar een bestand te schrijven. Het opnameproces is vergelijkbaar met het “VNC”-scenario, maar de schermafbeeldingen worden opgeslagen in een videobestand. Ook in deze modus wacht de applicatie totdat de gebruiker zijn inloggegevens op de webpagina invoert en verzamelt vervolgens cookies uit de webweergave.

Met het commando start_a kunt u geautomatiseerde acties initiëren in de context van de huidige pagina, zoals slepen, klikken, enz. Als dit het geval is, downloadt Mandrake de automatiseringsscenario’s van de URL die is opgegeven in de opdrachtopties. In deze modus wordt ook het scherm opgenomen.

Schermafbeeldingen kunnen naar C2 worden geüpload met behulp van de opdrachten upload_i of upload_d.

Noch Kaspersky, noch Bitdefender hebben een verklaring gegeven voor de groep of haar motieven voor het verspreiden van spyware en toepassingen voor het stelen van inloggegevens die zo geavanceerd zijn als Mandrake. Door Kaspersky gedetecteerde applicaties verschijnen in de onderstaande tabel. Google heeft ze sindsdien van Play verwijderd. Aanvullende indicatoren van compromissen zijn te vinden in het bericht van Kaspersky.

Verpakkingsnaam Naam van de toepassing MD5 Ontwikkelaar Uitgegeven Laatst bijgewerkt op Google Play Downloads
com.airft.ftrnsfr AirFS 33fdfbb1acdc226eb177eb42f3d22db4 het9042 28 april
in 2022
15 mrt,
in 2024
30.305
com.astro.dscvr Astro-verkenner 31ae39a7abeea3901a681f847199ed88 shevabad 30 mei,
in 2022
juni 06,
in 2023
718
com.shrp.sght Amber b4acfaeada60f41f6925628c824bb35e codasla 27 februari
in 2022
19 augustus
in 2023
19
com.cryptopulsing.browser CryptoPulsing e165cda25ef49c02ed94ab524fafa938 shevabad 02 november,
in 2022
juni 06,
in 2023
790
com.brnmth.mtrx Hersenmatrix codasla 27 april
in 2022
06 juni,
in 2023
259