Door gebruik te maken van de informatie in het cachegeheugen van een processor, kan informatie worden achterhaald over de met AES-128 versleutelde bericht, of zelfs de sleutel van het cijfer zelf achterhaald worden. Endre Bangerter, David Gullasch en Stephan Krenn hebben hun methode (pdf) daartoe afgelopen week online gezet. Kern van de methode is dat de hacker timing-aanvallen uitvoert op de cache, die binnen afzienbare tijd. Een praktische toepassing daarvan is volgens de drie onderzoekers dat een aanvaller toegang kan verkrijgen tot de scheduler (CFS) in Linux. Het geheugen van een systeem kan zo door een hacker worden uitgelezen “met niet eerder vertoonde precisie.”

Standaard

AES (Advanced Encryption Standard) is een door onder andere Amerikaanse overheid goedgekeurde standaard voor het versleutelen van gegevens. De-facto wordt de standaard daardoor automatisch goedgekeurd door officiële instanties. Overheid, banken en IT-apparatuur maken om die reden veel gebruik van AES om gegevens te versleutelen.

Aanvallen op AES wekken daarom veel interesse van cryptografen en beveiligingsonderzoekers. Iedere manier om AES te omzeilen wordt gezien als potentieel riskant, terwijl een kraak in een redelijke tijd van het cijfer zelf funest kan zijn. Tot nu toe zijn aanvallen op AES vooral een theoretische oefening geweest. Volgens Paul Bakker, CTO van Fox-IT, is een kraak van AES niet erg reëel.

"Over de veiligheid van AES zelf zijn geen discussies gaande", zegt Bakker. "Op dit moment zijn er geen realistische methoden die de mathematische vorm van AES onderuit halen.

Maar aanvallen op de cache en andere omzeilingen beginnen wel steeds uitvoerbaardere vormen aan te nemen. Zeker methoden die bekend staan als 'side channel-aanvallen', waarbij niet het cijfer zelf maar de implementatie onder vuur komt, worden door onderzoekers nauwlettend in de gaten gehouden. Over de veiligheid van AES-implementaties worden regelmatig twijfels geuit. "Op specifieke implementaties van AES worden constant aanvallen gevoerd. Het algoritme zelf is dan niet het doel van zo'n aanval, maar de gegevens die achter dit algoritme zelf zitten." Dat kan volgens Bakker ook de sleutel zijn die op het moment van versleuteling wordt aangemaakt.

Praktisch uitvoerbaar

Deze specifieke aanval van de Zwitsers heeft zowel voor- als nadelen als het gaat om de praktische uitvoering. Het belangrijkste voordeel is dat een gebruiker slechts standaardtoegang nodig heeft tot een systeem. Zelfs met verminderde rechten is de kraak al mogelijk. Belangrijkste nadeel is dat een aanvaller een exacte kopie moet hebben van de software en de hardware, om zo de ruis van de aanval zelf weg te filteren. Joran Polak, hoofdredacteur van Security.nl, noemt de aanval in een reactie dan ook “ praktisch haalbaar, maar niet eenvoudig.”

Het risico wordt volgens Polak ook kleiner doordat de aanvaller al een proces op het systeem van het slachtoffer moet hebben lopen. “Voor thuisgebruikers is het probleem zeer klein, want als je als aanvaller al een programma hebt draaien, is het al game over”, zegt Polak. “Het probleem is er wel voor bijvoorbeeld webhosters, waar gebruikers een vproces op de server hebben draaien. Al met al interessant onderzoek dat zeker nog een staartje zal krijgen.”

Bakker wijst erop dat het bij de aanval puur gaat om de CFS-scheduler in Linux. "Op Windowscomputers werkt het dan ook niet. Bovendien gaat het uit van een redelijk ideale situatie."

Naast de 128-bitsvariant, wordt AES ook ingezet als 192- en 256-bits cijfers. Die worden niet aangetast door de methode Bangerter/Gullasch/Krenn. OpenSSL, een open-sourceimplementatie van SSL, heeft onderhand al een wijziging doorgevoerd waardoor de aanval niet meer mogelijk is.

Update: reactie Paul Bakker (FOX-IT) toegevoegd