YubiKeys vormen de gouden beveiligingsstandaard, maar ze kunnen worden gekloond

De YubiKey 5, het meest gebruikte hardwaretoken voor tweefactorauthenticatie op basis van de FIDO-standaard, bevat een cryptografische fout die het apparaat ter grootte van een vinger kwetsbaar maakt voor klonen wanneer een aanvaller er tijdelijk fysieke toegang toe krijgt, aldus onderzoekers dinsdag.

De cryptografische fout, bekend als een zijkanaal, zit in een kleine microcontroller die wordt gebruikt in een groot aantal andere authenticatieapparaten, waaronder smartcards die worden gebruikt in het bankwezen, elektronische paspoorten en toegang tot beveiligde gebieden. Hoewel de onderzoekers bevestigden dat alle modellen van de YubiKey 5-serie kunnen worden gekloond, hebben ze geen andere apparaten getest die de microcontroller gebruiken, zoals de SLE78 van Infineon en de opvolgers van de microcontrollers, bekend als Infineon Optiga Trust M en Infineon Optiga TPM. De onderzoekers vermoeden dat elk apparaat dat een van deze drie microcontrollers en de cryptografische bibliotheek van Infineon gebruikt, dezelfde kwetsbaarheid bevat.

Patchen is niet mogelijk

YubiKey-maker Yubico bracht het advies uit in coördinatie met een gedetailleerd openbaarmakingsrapport van NinjaLab, het beveiligingsbedrijf dat de YubiKey 5-serie reverse-engineerde en het brein was achter de kloonaanval. Alle YubiKeys met firmware vóór versie 5.7 (die in mei werd uitgebracht en de aangepaste Infineon-cryptobibliotheek vervangt) zijn kwetsbaar. Het is niet mogelijk om de sleutelfirmware op de YubiKey te updaten. Hierdoor zijn alle betrokken YubiKeys permanent kwetsbaar.

“Een aanvaller zou dit probleem kunnen misbruiken als onderdeel van een geavanceerde en gerichte aanval om gecompromitteerde privésleutels te herstellen”, bevestigde de adviseur. “Een aanvaller heeft fysiek bezit nodig van de YubiKey, de beveiligingssleutel of de YubiHSM; weten op welke accounts ze zich willen richten; en gespecialiseerde uitrusting om de noodzakelijke aanval uit te voeren. Afhankelijk van het gebruiksscenario heeft een aanvaller mogelijk aanvullende kennis nodig, waaronder een gebruikersnaam, pincode, accountwachtwoord of authenticatiesleutel.”

Nevenkanalen zijn het resultaat van sporen die zijn achtergelaten in fysieke manifestaties, zoals elektromagnetische emanaties, datacaches of de tijd die nodig is om een ​​taak te voltooien die cryptografische geheimen onthult. In dit geval is het zijkanaal de hoeveelheid tijd die nodig is tijdens een wiskundige berekening die bekend staat als modulaire inversie. De cryptobibliotheek van Infineon slaagde er niet in een gemeenschappelijke zijkanaalverdediging te implementeren die bekend staat als constante tijd, omdat deze modulaire inversiebewerkingen uitvoert met behulp van een algoritme voor digitale handtekeningen met een elliptische curve. Constante tijd zorgt ervoor dat tijdgevoelige cryptografische bewerkingen uniform zijn en niet variabel afhankelijk van specifieke sleutels.

Meer specifiek ligt het zijkanaal in Infineons implementatie van het Extended Euclidische algoritme, een methode voor onder meer het berekenen van de modulaire inverse. Door een oscilloscoop te gebruiken om elektromagnetische straling te meten terwijl het token wordt geverifieerd, kunnen onderzoekers kleine verschillen in de uitvoeringstijd detecteren die de kortstondige ECDSA-sleutel van het token onthullen, ook wel bekend als een nonce. Verdere analyse stelt onderzoekers in staat de geheime ECDSA-sleutel te extraheren die ten grondslag ligt aan de algehele beveiliging van het token.

In een rapport op dinsdag schreef Thomas Roche, medeoprichter van NinjaLab:

In dit artikel ontdekt NinjaLab een nieuwe side-channel kwetsbaarheid in de ECDSA-implementatie van Infineon 9 op de beveiligingsmicrocontrollerfamilie van welke leverancier dan ook. Deze kwetsbaarheid ligt in de modulaire omkering van de kortstondige ECDSA-sleutel (of nonce), en, meer specifiek, in Infineons implementatie van het Extended Euclidische Algoritme (afgekort EEA). Voor zover wij weten is dit de eerste keer dat is aangetoond dat een EER-implementatie kwetsbaar is voor zijkanaalanalyse (in tegenstelling tot een binaire versie van de EER). Exploitatie van deze kwetsbaarheid wordt gedemonstreerd door middel van realistische experimenten en we laten zien dat een tegenstander slechts een paar minuten toegang tot het apparaat nodig heeft. De offline fase duurde ongeveer 24 uur; met meer technisch werk bij het ontwikkelen van de aanval zou het minder dan een uur duren.

Na een lange fase van het begrijpen van de implementatie van Infineon via zijkanaalanalyse op de Feitian 10 open JavaCard-smartcard, werd de aanval getest op de YubiKey 5Ci, een FIDO-hardwaretoken van Yubico. Alle YubiKey 5-series (vóór 6 mei 2024 firmware-update 5.7 11) worden getroffen door de aanval. In feite worden alle producten die afhankelijk zijn van de cryptografische bibliotheken van ECDSA Infineon die op de Infineon-beveiligingsmicrocontroller draaien, getroffen door de aanval. We schatten dat de kwetsbaarheid al meer dan 14 jaar bestaat in de hoogwaardige beveiligde chips van Infineon. Deze chips en het kwetsbare deel van de cryptografische bibliotheek hebben tussen 2010 en 2024 ongeveer 80 CC-certificeringsevaluaties van het niveau AVA VAN 4 (voor TPM) of AVA VAN 5 (voor anderen) doorstaan ​​(en iets minder dan 30 certificaatonderhoud).