Microsoft WebView2 kan worden misbruikt voor het omzeilen van multifactor-authenticatie (MFA) en het stelen van cookies voor inlogactiviteiten. Dit ontdekte onlangs de securityonderzoeker mr.d0x.

Microsoft WebVie2 is een runtime die webgebaseerde eigenschappen levert voor Microsoft 365 desktopapplicaties. De tool gebruikt hiervoor de Microsoft Edge-browser als een rendering engine.

In zijn onderzoek heeft de securityonderzoeker mr.d0x ontdekt dat deze runtime kan worden ingezet voor een phishing-aanval. Hierbij kan bijvoorbeeld kwaadaardige JavaScript-code kan worden geïnjecteerd in websites die in applicaties zijn geladen die WebView 2 gebruiken. Hierbij wordt MFA omzeild, met alle gevolgen van dien. Deze hack heeft de naam ‘WebView2-Cookie-Stealer’meegekregen.

Met deze functionaliteit kunnen hackers onder meer een JavaScript keylogger in een legitiem Microsoft login-formulier injecteren. De pagina wordt daarbij normaal gerenderd, maar door de JavaScript-code die op de achtergrond draait, wordt alles wat gebruikers intypen vastgelegd en naar een specifiek toegewezen server van de hacker teruggestuurd.

Stelen van cookies

Naast het injecteren van een key logger, was de onderzoeker ook in staat cookies te stelen die door de remote server worden verstuurd na het inloggen van een eindgebruiker. De ontvangen informatie bevatte ook authenticatiecodes.

Verder kan WebView2 worden misbruikt voor het stelen van alle beschikbare cookies in de Chrome-webbrowser van gebruikers. De tool stelt hackers in staat een bestaande user date folder (UDF) te launchen in plaats van het aanmaken van een nieuwe. De UDF bevat alle wachtwoorden, sessies en bookmarks van de betreffende eindgebruiker. De techniek kan ook nog worden ingezet voor het stelen en importeren van cookies via een simpele Chrome-extensie, zoals ‘EditThisCookie’.

Omzeilen MFA

Het belangrijkste van het kunnen misbruiken van WebView2 is dat MFA compleet wordt omzeild. Ook worden eenmalige wachtwoorden en security keys gepasseerd. Dit omdat de technologie pas cookies steelt nadat de getroffen eindgebruiker al is ingelogd.