De bedreigingsacteur bekend als ToddyCat is toegeschreven aan een nieuwe malware genaamd Umbrij, die is ontworpen om via de Google API heimelijk toegang te krijgen tot de e-mailcorrespondentie van een slachtoffer.
“In deze campagne richtten de aanvallers hun aandacht op zakelijke e-mailcommunicatie gehost op Gmail, waarbij ze zich richtten op toegangsproblemen via API’s”, zei Kaspersky in een gedetailleerd rapport dat deze week werd gepubliceerd. “Omdat de Google API voor autorisatie afhankelijk is van het OAuth 2.0-protocol, kunnen applicaties een OAuth-token gebruiken om toegang te krijgen tot de gevraagde e-mailbronnen.”
De tegenstander zou Umbrij hebben ontwikkeld om dit token te verkrijgen en te gebruiken om in headless-modus verbinding te maken met de beheerconsole van de browser via een poort voor foutopsporing op afstand.
Vervolgens werd een reeks verzoeken gedaan om een OAuth-autorisatiecode te verkrijgen, die vervolgens werd ingewisseld voor een toegangstoken om via de API de doelbronnen te bereiken. De techniek heeft de codenaam gekregen Schaduwtoken via foutopsporing op afstand (STRD) van de Russische cybersecurityleverancier.
Het opvallende aan de aanval is dat deze uitvoerbaar is in Chromium-gebaseerde browsers en misbruik maakt van een actieve Gmail-sessie. Met andere woorden, het idee is om de browser in de headless-modus te starten, verbinding te maken via de poort voor foutopsporing op afstand om de controle over te nemen, en een reeds ingelogde Gmail-sessie te gebruiken om toegang te krijgen tot de bronnen van het Google-account.
Er zijn drie verschillende versies van Umbrij ontdekt, waaronder versies met hulpfuncties voor het debuggen en voor het zoeken en selecteren van gebruikersaccounts in de browser.
ToddyCat is de naam die is toegewezen aan een geavanceerde persistente dreiging (APT) die een geschiedenis heeft van het aanvallen van verschillende organisaties in Europa en Azië sinds ten minste 2020. In november 2025 beschreef Kaspersky het gebruik door de hackgroep van een aangepaste tool genaamd TCSectorCopy om de e-mailgegevens van Microsoft Outlook van de beoogde bedrijven in handen te krijgen.
Het cyberbeveiligingsbedrijf zei dat het Umbrij ontdekte tijdens wat het omschreef als een ‘dreigingsjachtoperatie’, waarbij een geplande taak die de software nabootste (“KasperskyEndpointSecurityEDRAvp”) werd gebruikt om een digitaal ondertekend bestand te starten. Het ondertekende bestand maakte vervolgens gebruik van DLL-zijladen om Umbrij te starten.
Om deze taak te volbrengen werden drie legitieme binaire bestanden die vatbaar zijn voor side-loading van DLL misbruikt:
- BDSubWiz.exeeen onderdeel van de Verzendwizard in Bitdefender ConnectAgent
- VSTestVideoRecorder.exeeen onderdeel van de video-opnametool die wordt gebruikt voor testen met Microsoft Visual Studio
- GoogleDesktop.exeeen stopgezette Google Desktop Search-applicatie die wordt gebruikt voor het indexeren van bestanden en het uitvoeren van snelle zoekopdrachten op een lokale Windows-computer
Ongeacht het gebruikte uitvoerbare bestand is het eindresultaat hetzelfde: het lanceren van de frauduleuze Umbrij DLL geschreven in .NET en versluierd met ConfuserEx, een open-source obfuscator. De tool kan ook worden aangeroepen samen met opdrachtregelparameters die specificeren welke browsers moeten worden getarget (Google Chrome of Microsoft Edge), de opdracht geven om een screenshot van het gebruikersprofiel op te slaan als een PDF-bestand en de systeemgebruikersnaam opgeven waaronder de tool zal worden uitgevoerd.
Umbrij voert, eenmaal gelanceerd, een reeks voorbereidende acties uit op een gecompromitteerde Windows-host om het Gmail-account te hacken –
- Controleer de beschikbaarheid van de poort die wordt aangewezen voor browserfoutopsporing.
- Haal de gebruikerscontext op door te zoeken naar het proces “explorer.exe” en het token te dupliceren van het eerste proces dat het tegenkomt, om alle rechten van de ingelogde gebruiker te behouden. Als alternatief kan de -gebruiker
switch kan naast de tool worden gebruikt om de doelgebruiker te specificeren wiens token moet worden gedupliceerd. - Construeer het pad naar de applicatiemap van de webbrowser in de lokale opslagplaats van applicatiegegevens van de gebruiker en parseer vervolgens het lokale statusbestand dat overeenkomt met Chrome of Edge om informatie te verzamelen over opgeslagen browsergebruikersprofielen.
- Inventariseer alle profielen en scan ze op een veld met de naam “gebruikersnaam” dat een e-mailadres bevat. Het is vermeldenswaard dat de aanwezigheid van een e-mailadres aangeeft dat de gebruiker is geverifieerd bij een Google-service.
- Maak een map met de naam “BackupFiles” binnen “%LOCALAPPDATA%GoogleChrome” en “%LOCALAPPDATA%MicrosoftEdge.”
- Kopieer de volgende bestanden en mappen van elk doelgebruikersprofiel ernaar: IndexedDB, Lokale opslag, Netwerk, Inloggegevens, Inloggegevens voor account, Voorkeuren, Veilige voorkeuren en Webgegevens. Mochten deze bestanden door andere processen worden vergrendeld, dan beschikt de tool over een force-copy-mechanisme.
- Zoek in de mappen ‘Program Files’ en ‘Program Files (x86)’ naar de browserinstallatiemap voor Chrome en Edge.
- Start de browsers in de headless-modus door het gebruikersprofiel te gebruiken dat is gekopieerd naar de map “BackupFiles”, waardoor de browser alle actieve gebruikerscookies toepast, inclusief het ingelogde Google-account, en de authenticatie overslaat.
- Gebruik Puppeteer, een JavaScript-bibliotheek die wordt gebruikt voor het besturen van Chromium-gebaseerde browsers via het Chrome DevTools Protocol, om verbinding te maken met de poort voor foutopsporing op afstand en een autorisatiecodeverzoek te sturen om de browser door te sturen naar een ‘accounts.google(.)com/o/oauth2/v2/auth/identifier’-URL met daarin een ‘client_id’ die overeenkomt met een migratietool die wordt gebruikt voor het importeren van lokale PST-bestanden en gegevens van Microsoft Exchange-accounts naar een Google Workspace-account. Het HTTP GET-verzoek specificeert ook de set machtigingen die door de toepassing vereist is.
- Gebruik JavaScript om muisklikgebeurtenissen te emuleren om het juiste Google-account te selecteren nadat u naar de URL bent genavigeerd en het de benodigde machtigingen te verlenen, inclusief volledige toegang tot Gmail, Drive, Contacten, Agenda en Taken.
- Leid de browsersessie om naar een lokaal adres dat is opgegeven in het initiële verzoek en extraheer hieruit de OAuth-autorisatiecode.
“Umbrij registreert, net als de meeste andere tools in het arsenaal van ToddyCat, zijn acties in detail en slaat ze op in een bestand”, aldus Kaspersky. “Het slaat ook de opgehaalde autorisatiecode op in dit logbestand, dat de operator vervolgens van de gecompromitteerde host exfiltreert.”
“De verkregen autorisatiecode wordt vervolgens ingewisseld voor een OAuth-toegangstoken. De bedreigingsactoren gebruiken dat token om via de API verbinding te maken met het Gmail-account, waardoor de zakelijke e-mailcommunicatie in gevaar komt.”
Om de dreiging tegen te gaan, wordt u geadviseerd de autorisatiecodes die aan applicaties zijn toegekend te controleren door naar ‘myaccount.google(.)com/connections’ te gaan en vervolgens te zoeken naar applicaties met de naam ‘Google Workspace Migration for Microsoft Outlook’ of ‘Google Workspace Sync for Microsoft Outlook’. Als een van deze applicaties aanwezig is en niet daadwerkelijk binnen de organisatie wordt gebruikt, is het essentieel om de toegang ervan in te trekken om de OAuth-tokens ongeldig te maken.
“De ToddyCat APT-groep blijft zoeken naar manieren om zakelijke e-mailcommunicatie in gevaar te brengen”, zegt Andrey Gunkin, senior malware-analist bij Kaspersky. “Hun nieuwe tool, Umbrij, automatiseert de pogingen van aanvallers om toegang te krijgen tot e-mailaccounts van de organisatie. Deze automatisering helpt niet alleen de schaal en frequentie van hun aanvallen te vergroten, maar demonstreert ook de sterke motivatie en geavanceerde technische vaardigheden van ToddyCat.”