Een website die is ontworpen om te lijken op een beveiligingspagina van Google-accounts verspreidt wat mogelijk een van de meest complete browsergebaseerde surveillancetoolkits is die we in het wild hebben waargenomen.
Vermomd als een routinebeveiligingscontrole, leidt het slachtoffers door een vierstappenproces dat de aanvaller toegang geeft tot pushmeldingen, de contactenlijst van het apparaat, realtime GPS-locatie en de inhoud van het klembord – allemaal zonder een traditionele app te installeren.
Voor slachtoffers die alle instructies opvolgen, biedt de site ook een Android met een native implantaat dat een aangepast toetsenbord (voor het vastleggen van toetsaanslagen), op toegankelijkheid gebaseerde schermleesfuncties en machtigingen voor toegang tot het oproeplogboek en microfoonopnames omvat.
De infrastructuur maakt gebruik van één enkel command-and-control-domein, google-prism[.]com. Het domein wordt gerouteerd via het content delivery network van Cloudflare, een dienst die veel wordt gebruikt door zowel legitieme als kwaadaardige websites.
Een beveiligingspagina zonder adresbalk
De aanval begint met wat lijkt op een echte beveiligingswaarschuwing van Google Account. De aanval maakt geen gebruik van een exploit of browserbug. De aanval is erop gericht dat u denkt dat u reageert op Google.

Wanneer het als een PWA (een Progressive Web App, in feite een website die aan het startscherm wordt vastgemaakt en in een eigen venster wordt uitgevoerd) wordt geïnstalleerd, verdwijnt de adresbalk van de browser. Het slachtoffer ziet iets dat eruitziet en aanvoelt als een native Google-app.
Tijdens het testen werden we door vier stappen geleid, die elk als een beschermende maatregel werden geformuleerd.
- De gebruiker wordt gevraagd om de beveiligingstool als PWA te 'installeren'.
- De site vraagt om meldingsrechten, onder het mom van het inschakelen van 'beveiligingswaarschuwingen'. Webpushmeldingen geven de aanvaller een permanent communicatiekanaal dat zelfs kan functioneren wanneer de PWA niet actief is geopend.
- De site maakt gebruik van de Contact Picker API, een legitieme browserfunctie die is ontworpen voor het delen van contacten met webapps. Het slachtoffer wordt gevraagd om contacten te selecteren om te delen. Na selectie geeft de interface een bevestigingstekst weer, zoalsX beschermd', waardoor deze stap wordt gepresenteerd als een veiligheidscontrole. Uit netwerkanalyse blijkt echter dat de geselecteerde contacten rechtstreeks naar het door de aanvaller gecontroleerde domein worden verzonden.
- De site vraagt om GPS-locatie onder het mom van "het verifiëren van uw identiteit vanaf een vertrouwde locatie". Breedtegraad, lengtegraad, hoogte, koers en snelheid worden allemaal geëxfiltreerd.


Wat gebeurt er nadat je het tabblad hebt gesloten?
Wanneer het slachtoffer de PWA installeert en toestemming verleent, worden twee afzonderlijke stukjes code geactiveerd. Als je begrijpt wat elk stukje code doet, begrijp je ook waarom het niet voldoende is om het tabblad te sluiten.
Het paginascript wordt uitgevoerd zolang de app geopend is. Het probeert het klembord te lezen bij focus- en zichtbaarheidswijzigingen, op zoek naar eenmalige wachtwoorden en cryptocurrency-walletadressen. Het probeert sms-verificatiecodes te onderscheppen via de WebOTP API op ondersteunde browsers, bouwt een gedetailleerde apparaatvingerafdruk op en pollt elke 30 seconden /api/heartbeat, in afwachting van commando's van de operator.
De service worker is het onderdeel dat blijft bestaan als je het tabblad sluit.
Het bevindt zich onderaan de pagina, verwerkt pushmeldingen, voert achtergrondtaken uit die zijn ingebed in push-payloads en plaatst gestolen gegevens lokaal in de wachtrij wanneer het apparaat offline gaat, om vervolgens die wachtrij te legen zodra de verbinding weer is hersteld. Het bevat handlers voor achtergrond- en periodieke synchronisatiegebeurtenissen, waardoor het taken kan activeren en uitvoeren wanneer die functies worden ondersteund en geregistreerd.
Sluit het browsertabblad en het paginascript stopt. Het monitoren van het klembord en het onderscheppen van sms-berichten worden onmiddellijk beëindigd.
Maar de servicemedewerker blijft geregistreerd. Als het slachtoffer toestemming heeft gegeven voor meldingen, kan de aanvaller deze nog steeds stil activeren, een nieuwe taak doorvoeren of een gegevensupload starten zonder de app opnieuw te openen.
En als het slachtoffer het ooit weer opent, wordt het verzamelen onmiddellijk hervat.
Uw browser, hun proxy
Misschien wel de meest zorgwekkende functie is de WebSocket-relay. Zodra de verbinding tot stand is gebracht, kan de aanvaller willekeurige webverzoeken via de browser van het slachtoffer routeren alsof hij vanuit het eigen netwerk van het slachtoffer browst.
De malware fungeert als een HTTP-proxy, voert fetch-verzoeken uit met de methode, headers, inloggegevens en body die de aanvaller opgeeft, en retourneert vervolgens het volledige antwoord inclusief headers.
Dit betekent:
- Als het slachtoffer zich op een bedrijfsnetwerk bevindt, kunnen interne bronnen bereikbaar worden.
- IP-gebaseerde toegangscontroles kunnen worden omzeild
- Het verkeer van de aanvaller lijkt afkomstig te zijn van het IP-adres van het huisadres van het slachtoffer.
De toolkit bevat ook een poortscanner die interne netwerkbereiken scant (standaard alle 254 adressen op het lokale subnet via poorten 80, 443 en 8080) met behulp van een op timing gebaseerde techniek om actieve hosts te identificeren, allemaal vanuit de browser-sandbox.
Bovendien kan de aanvaller willekeurige JavaScript-code uitvoeren op het apparaat van het slachtoffer via een eval-opdracht op afstand die via de WebSocket wordt verzonden.
Gestolen gegevens verdwijnen nooit
De toolkit is ontworpen om slechte connectiviteit te tolereren. Wanneer het apparaat offline is, worden vastgelegde gegevens – klembordopnames, locatie-updates, onderschepte OTP's – in de wachtrij van de cache-API van de browser geplaatst en opgeslagen als afzonderlijke vermeldingen onder sleutels zoals /exfil/{timestamp}-{random}.

Wanneer de verbinding weer tot stand is gebracht, worden alle items in de wachtrij opnieuw naar de server verzonden via een achtergrondsynchronisatie. Elk item wordt pas verwijderd nadat de server de ontvangst heeft bevestigd.
Op Chromium-gebaseerde browsers bevat de service worker een handler voor Periodic Background Sync onder de tag c2-checkin, waardoor geplande wake-ups mogelijk zijn wanneer de functie wordt ondersteund en geactiveerd. In combinatie met door push-berichten geactiveerde heartbeats betekent dit dat de aanvaller contact kan houden met een gecompromitteerd apparaat zolang de PWA geïnstalleerd blijft, wat weken of maanden kan duren.

Wanneer de browser niet voldoende is: het native implantaat
Voor slachtoffers die alle instructies opvolgen, levert de weblaag een tweede payload: een Android die is vermomd als een 'kritieke beveiligingsupdate'.
Op de downloadpagina staat dat het gaat om "Versie 2.1.0 · 2,3 MB · Geverifieerd door Google".
Het eigenlijke bestand is een pakket van 122 KB met de naam com.device.sync, dat in de app-lade wordt aangeduid als 'Systeemservice'.
De APK vraagt om 33 Android , waaronder risicovolle privileges zoals toegang tot sms-berichten, toegang tot het oproeplogboek, toegang tot de microfoon, toegang tot contacten en controle over toegankelijkheidsservices.
Het omvat:
- Een aangepast toetsenbord dat toetsaanslagen kan registreren
- Een meldingsluisteraar die inkomende meldingen kan lezen, inclusief mogelijke tweefactorauthenticatiecodes.
- Een toegankelijkheidsdienst die scherminhoud kan observeren en acties kan uitvoeren in andere apps.
- Een automatische invulservice die is gepositioneerd om verzoeken om het invullen van inloggegevens te onderscheppen
Het scherm 'Automatisch invullen inschakelen' van de weblaag is ontworpen om het slachtoffer te begeleiden bij het inschakelen van deze kwaadaardige automatische invulservice in Android .
Om de persistentie te verbeteren, registreert de APK zich als apparaatbeheerder (wat het verwijderen kan bemoeilijken), stelt een opstartontvanger in om bij het opstarten uit te voeren en plant alarmen in om componenten opnieuw te starten als ze worden beëindigd. De applicatie bevat componenten die consistent zijn met overlay-gebaseerde UI-mogelijkheden, wat wijst op mogelijk gebruik voor phishing of overlay's voor het onderscheppen van inloggegevens. Er is een FileProvider-component aanwezig, consistent met gefaseerde levering van updates. Of updates stil kunnen worden geïnstalleerd, hangt af van het privilege-niveau van het apparaat en de beleidsconfiguratie.
Wat te doen als u mogelijk bent getroffen
Deze campagne laat zien hoe aanvallers legitieme browserfuncties kunnen misbruiken door middel van social engineering, in plaats van een kwetsbaarheid in de systemen van Google te exploiteren.
In plaats van een webpagina alleen te gebruiken om een traditioneel uitvoerbaar bestand te leveren, veranderen de operators de browser zelf in een surveillanceplatform. Alleen al de PWA-laag – zonder enige native installatie – kan contacten verzamelen, eenmalige wachtwoorden onderscheppen, GPS-locaties volgen, interne netwerken scannen en verkeer via het apparaat van het slachtoffer proxyen. De Android breidt deze mogelijkheden uit met het vastleggen van toetsaanslagen, op toegankelijkheid gebaseerde schermmonitoring en bredere surveillance op apparaatniveau door middel van vergunningen met hoge privileges.
Wat dit gevaarlijk maakt, is dat elke toestemmingsaanvraag wordt gepresenteerd als een veiligheidsmaatregel. Slachtoffers reageren op wat een legitieme veiligheidswaarschuwing lijkt te zijn. Social engineering staat centraal in de werking van deze activiteit.
Google voert geen beveiligingscontroles uit via ongevraagde pop-upvensters. Als u een onverwachte 'beveiligingswaarschuwing' ontvangt waarin u wordt gevraagd om software te installeren, meldingen in te schakelen of contacten te delen, sluit dan het venster. Legitieme tools voor accountbeveiliging zijn rechtstreeks toegankelijk via uw Google-account op myaccount.google.com.
Volg de onderstaande stappen om de machtigingen te controleren en de schadelijke site te verwijderen.
Op Android
- Controleer uw geïnstalleerde apps en startscherm op een PWAmet de naam 'Security Check'. Ga op Android naar Instellingen > Apps en zoek deze app. Verwijder deze onmiddellijk.
- Controleer of er een app met de naam'System Service'en de pakketnaam com.device.sync aanwezig is. Als de toegang voor apparaatbeheerder is ingeschakeld, moet u deze eerst intrekken onder Instellingen > Beveiliging > App-apparaatbeheerder voordat u de app verwijdert.
- Wijzig de wachtwoorden voor alle accounts waarvoor u tweefactorauthenticatie via sms hebt gebruikt of wachtwoorden naar het klembord hebt gekopieerd terwijl de malware aanwezig was.
- Trek de meldingsrechten in voor alle webapps die u niet herkent. In Chrome Android: Instellingen > Site-instellingen > Meldingen.
- Controleer uw instellingen voor automatisch invullen. Als een onbekende dienst voor automatisch invullen is ingeschakeld, verwijder deze dan onder Instellingen > Wachtwoorden en automatisch invullen > Dienst voor automatisch invullen.
- Als de native APK is geïnstalleerd, kunt u overwegen om het apparaat terug te zetten naar de fabrieksinstellingen. De malware registreert zich als apparaatbeheerder en implementeert meerdere persistentiemechanismen. Als verwijdering mislukt of de apparaatbeheerdersrechten niet kunnen worden ingetrokken, kan het nodig zijn om het apparaat terug te zetten naar de fabrieksinstellingen.
- Voer een scan uit met betrouwbare mobiele beveiligingssoftware om eventuele resterende componenten op te sporen.
Op Windows Chrome, Edge en andere Chromium-browsers)
- Verwijder de PWA. Klik in Chrome op het menu met de drie puntjes en ga naar Geïnstalleerde apps (of ga naar chrome://apps). Klik met de rechtermuisknop op de app'Security Check'en selecteer Verwijderen. Ga in Edge naar edge://apps en doe hetzelfde.
- Schrap de service worker uit het register. Ga naar chrome://serviceworker-internals (of edge://serviceworker-internals) en zoek naar vermeldingen die verband houden met het schadelijke domein. Klik op Unregister ( Uit het register verwijderen) om deze te verwijderen. Als de PWA geïnstalleerd blijft of push-machtigingen nog steeds worden verleend, kan de service worker op de achtergrond push-geactiveerde gebeurtenissen blijven ontvangen.
- Wis de meldingsrechten. Ga naar chrome://settings/content/notifications (of edge://settings/content/notifications) en verwijder alle sites die u niet herkent uit de lijst Toegestaan.
- Wis de sitegegevens voor de kwaadaardige bron. In Chrome: Instellingen > Privacy beveiliging > Site-instellingen > Machtigingen en gegevens bekijken die op verschillende sites zijn opgeslagen. Zoek het domein en klik op Gegevens verwijderen. Hiermee worden cachebestanden, de offline exfiltratiewachtrij en alle opgeslagen configuraties verwijderd.
- Controleer op verdachte browserextensies. Hoewel deze specifieke toolkit geen extensie gebruikt, kunnen slachtoffers die de instructies van de aanvaller hebben opgevolgd, mogelijk extra componenten hebben geïnstalleerd. Controleer chrome://extensions of edge://extensions en verwijder alles wat u niet herkent.
- Reset de browsersynchronisatie als de gegevens op het klembord of wachtwoorden mogelijk zijn gecompromitteerd. Als u wachtwoorden tussen apparaten synchroniseert, wijzig dan eerst het wachtwoord van uw Google- of Microsoft-account en controleer vervolgens of er opgeslagen wachtwoorden zijn die u niet zelf hebt aangemaakt.
- Voer een volledige systeemscan uit. Hoewel deze bedreiging voornamelijk in de browser op Windows aanwezig is, betekent de mogelijkheid tot evaluatie op afstand dat er tijdens de compromisperiode mogelijk extra payloads zijn afgeleverd.
Op Firefox (desktop en Android)
Firefox ondersteunt geen PWA-installatie, de Contact Picker API, WebOTP of Background Sync, waardoor een groot deel van deze toolkit simpelweg niet zal functioneren. Firefox ondersteunt echter wel service workers en pushmeldingen, wat betekent dat het op meldingen gebaseerde C2-kanaal nog steeds zou kunnen werken als een slachtoffer toestemming zou geven. Het monitoren van het klembord zou afhankelijk zijn van de uitvoeringscontext van de pagina en interactiegebeurtenissen van de gebruiker, en is niet gegarandeerd in achtergrondsituaties op Firefox.
- Wis de meldingsrechten. Ga naar Instellingen > Privacy beveiliging > Rechten > Meldingen > Instellingen en verwijder alle onbekende vermeldingen.
- Verwijder de service worker. Ga naar about:serviceworkers en klik op Unregister naast elke vermelding die u niet herkent.
- Wis sitegegevens. Ga naar Instellingen > Privacy beveiliging > Cookies en sitegegevens > Gegevens beheren, zoek het domein en verwijder het. Hierdoor worden de cachegegevens en alle gegevens in de wachtrij gewist.
- Controleer in Firefox voor Android ook of about:config niet toegankelijk is en bekijk eventuele snelkoppelingen op het startscherm die mogelijk handmatig zijn toegevoegd. Firefox op Android 'Toevoegen aan startscherm' Android , zelfs zonder volledige PWA-ondersteuning.
Op safari (macOS en iOS)
Safari op iOS .4 en later ondersteunt PWA-installatie ("Toevoegen aan startscherm") en pushmeldingen, zodat de kern van de phishing-flow en het op meldingen gebaseerde C2-kanaal kunnen werken. Safari ondersteunt echter niet de Contact Picker API, WebOTP of Background Sync, wat de passieve surveillancemogelijkheden van de toolkit beperkt.
- Verwijder de PWA van uw startscherm. Druk lang op het pictogram Beveiligingscontrole en tik op App verwijderen (of Bladwijzer verwijderen op oudere iOS ).
- Meldingsrechten intrekken. Op iOS: Instellingen > Safari > Meldingen (of Instellingen > Meldingen, en zoek de PWA op naam). Op macOS: Systeeminstellingen > Meldingen > Safari.
- Websitegegevens wissen. Op iOS: Instellingen > Safari > Advanced > Websitegegevens, zoek het domein en verwijder het. Op macOS: Safari > Instellingen > Privacy > Website-gegevens beheren.
- Controleer op macOS ook Safari > Instellingen > Extensies op onbekende items en bekijk alle aanmeldingsitemsonder Systeeminstellingen > Algemeen >Aanmeldingsitems en extensies.
Indicatoren van compromissen (IOC's)
Bestandshashes (SHA-256)
1fe2be4582c4cbce8013c3506bc8b46f850c23937a564d17e5e170d6f60d8c08 (sync.apk)
Domeinen
google-prism[.]com
We rapporteren niet alleen over bedreigingen - we verwijderen ze ook
Cyberbeveiligingsrisico's mogen zich nooit verder verspreiden dan een krantenkop. Houd bedreigingen van uw apparaten door Malwarebytes vandaag nog te downloaden.




