Onderzoekers van Cornell University hebben een aanvalsmethode ontwikkeld waarmee de L3-cache van Intel-processors uitgelezen kan worden met behulp van javascript. Daardoor zijn toetsenbordaanslagen en muiskliks uit te lezen.
Om de aanval, getiteld 'The Spy in the Sandbox', uit te kunnen voeren, is het niet nodig andere software te installeren op de machine van een doelwit. Het slachtoffer hoeft slechts een webpagina te bezoeken waar speciaal vervaardigde content van de aanvaller op staat. De methode werkt ook binnen virtual machines, blijkt uit de onderzoekspaper. De exploitcode zal niet worden vrijgegeven voordat browsers gepatched zijn.
Het gaat om een zogeheten side channel attack. Een zijkanaalaanval is een aanval waarbij de implementatie van cryptografische systemen wordt misbruikt, in plaats van de cryptografische algoritmes zelf. Het onderzoek zelf is zeer academisch, schrijft The Register, maar de site geeft wel als voorbeeld dat het op een Mac met een Intel Core i7 en OS X 10.10.2 bij gebruik van Firefox 35.0.1 mogelijk was binnen een minuut de helft van de L3 cache in kaart te brengen.
Op het moment dat een gebruiker op een site komt met inhoud die de hacker beheert, bijvoorbeeld met behulp van een malafide advertentie, kan javascript-code worden uitgevoerd die de toetsenbord- en muisinvoer kan bekijken en opslaan. Beide handelingen gebeuren binnen de cache van een Intel-cpu. De L3-cache, ook wel last-level cache, wordt gedeeld door alle cores. De methode werkt niet bij AMD-processors omdat daar het cache-geheugen anders benaderd wordt.
Als schadelijke javascript draait, laadt de code de cache en kent hij daarmee de staat van de cache. Vervolgens wacht de code op een gebruiker om iets te doen, zoals een toets aanslaan. De code gebruikt dan de timers van de browser om op te slaan hoeveel tijd het kost om door een geheugenblok te gaan. Als de toegang sneller gaat dan bij andere acties, dan staat het nog in de cache. Met die informatie is het patroon in kaart te brengen waarmee het geheugen aangesproken wordt op bijvoorbeeld toetsaanslagen of muisbewegingen. Dat patroon kan opnieuw worden afgespeeld.
De onderzoekers geven tegen TechWorm wel aan dat de exploit niet rechtstreeks wachtwoorden of data kan stelen, maar de data-invoer van muis en toetsenbord op kan slaan. Een potentiële hacker kan de toetsaanslagen klonen en vervolgens via de surfgeschiedenis bezochte sites relateren aan die aanslagen. Volgens de onderzoekers gaat het om de eerste side channel-attack die vanuit de browser is uit te voeren.