HEIST

Belgische onderzoekers hebben een lek ontdekt in het HTTPS-protocol dat het mogelijk maakt om met Javascript gegevens te achterhalen. Dit hebben Tom van Goethem en Mathy Vanhoef van de KU Leuven bekend gemaakt tijdens een presentatie op de security conferentie Black Hat in Las Vegas op woensdag 3 augustus.

Van Goethem en Vanhoef ontdekten dat door middel van een eenvoudig stukje Javascript op een website, bijvoorbeeld verstopt in een advertentie, gegevens uit de sessie uitgelezen kunnen worden. Met de informatie die meegegeven wordt in de sessie kan iemand zo de exacte lengte van versleutelde gegevens ophalen. Vervolgens kan er door middel van eerder gevonden exploits zoals BREACH en CRIME door middel van wat onelegant gokwerk achterhaald worden wat er precies in dat versleutelde bericht stond.

Dit probleem wordt verergerd door de manier waarop HTTP compressie deze versleutelde berichten inkort. Hierdoor wordt het gokken van de juiste tekens makkelijker gemaakt: gelijke secties tekens worden met deze compressie in een woordenboek gestopt en vervangen door een token in het versleutelde bericht. Vervolgens is het voor de exploit een kwestie van simpelweg teken voor teken een string te wijzigen totdat deze overeenkomt met bijvoorbeeld de cookietekst of de inloggegevens.

Het grootste verschil tussen HEIST en eerdere exploits zoals Heartbleed en POODLE is dat er geen Man in the Middle aanval nodig is om de exploit uit te kunnen voeren: Javascript staat in alle gangbare browsers standaard aan.

De oplossing?
De meest eenvoudige oplossing die de Belgische onderzoekers aandragen is het uitzetten van third party cookies. Hierdoor kan het stukje Javascript niet meer bij de cookies van de website waar het op geplaatst is, waardoor de sessie niet meer uit te lezen is. Er zitten echter wat nadelen aan het uitzetten van cookies van derden: veel websites werken dan niet meer of nauwelijks. Daarnaast is het gebruiken van een ad blocker in de browser als extra veiligheidsmaatregel aan te raden: hoewel een ad blocker niet voorkomt dat de exploit gebruikt kan worden, blokkeert het vaak wel de advertentieplatformen die gebruikt worden om de advertentie met het kwaadwillende stukje Javascript te plaatsen. In het ergste geval kan zelfs Javascript volledig geblokkeerd worden in de browser; dit is echter wel een zeer rigoureuze oplossing en zorgt er hoogstwaarschijnlijk voor dat bijna geen enkele website meer bezocht kan worden.

Betekent dit dat we alvast maar weer moeten wennen aan een Javascript-loos internet, of zelfs terug moeten naar ouderwets communiceren via pen en papier? Gelukkig niet. De onderzoekers geven zelf ook al aan dat het niet waarschijnlijk is dat deze exploit op grote schaal ingezet zal gaan worden: de code moet aangepast worden op elke pagina waar die op geplaatst wordt, en vereist een groot aantal requests voor een aanval om te werken.

Wilt u meer lezen over HEIST? De onderzoekers hebben hun volledige onderzoek online beschikbaar gesteld. Bij belangrijke updates omtrent de HEIST-exploit zullen wij dit bericht bijwerken.

Categorie  SSL & Security | Tags  heist lek Security ssl