Sicherheitsexperten von NinjaLab haben eine Angriffstechnik über seitliche Kanäle entwickelt, mit der ECDSA-Schlüssel, die in den YubiKey 5-Kryptotoken und anderen Geräten gespeichert sind, geklont werden können, in denen die Kryptografiebibliothek von Infineon verwendet wird. Der Angriff trägt den Codenamen EUCLEAK und kann neben Token mit Infineon SLE78-Chips, wie dem YubiKey 5, auch auf vielen anderen Systemen mit Mikrocontrollern von Infineon angewendet werden, einschließlich der Infineon Optiga Trust M- und Infineon Optiga TPM-Chips.
Die Möglichkeit der Durchführung des Angriffs wurde praktisch für die Schlüssel YubiKey 5Ci und TPM auf SLB96xx-Chips bestätigt, während dies für andere Geräte theoretischer Natur ist. Bei den YubiKey 5 wurde die Schwachstelle in Version 5.7 durch den Austausch der Kryptografiebibliothek behoben (dieses Update ist nur für neue Geräte anwendbar, da in bereits ausgelieferten YubiKey-Geräten kein Firmware-Update vorgesehen ist). Für die Bibliothek von Infineon wurden Patches zur Schließung der Schwachstelle entwickelt, jedoch sind sie noch nicht aktiv, da sie noch nicht zertifiziert wurden.
Neben YubiKey 5-Schlüsseln betrifft das Problem potenziell TPM-Chips (Trusted Platform Module) von Lenovo-, Dell- und HP-Laptops, isolierte Enklaven von Samsung- und OnePlus-Smartphones, Hardware-Kryptowallets, Smartkarten, SIM-Karten und EMV-Chips von Bankkarten sowie Chips von elektronischen Pässen, die in China, Indien, Brasilien, den USA und einigen anderen asiatischen und europäischen Ländern verwendet werden.
Die Gefahr der Klonung von Schlüsseln wird durch die Bedingungen und die Komplexität eines Angriffs ausgeglichen — der Angreifer muss physischen Zugang zum Schlüssel erhalten und ihn auseinandernehmen, indem er das Kunststoffgehäuse und die abschirmende Hülle entfernt. Nach solch einem Manipulationsvorgang kann das Gehäuse mit einem 3D-Drucker wiederhergestellt werden, aber es ist ziemlich schwierig, die Manipulationen am Schlüssel unbemerkt zu lassen. Das Scannen des Schlüssels dauert einige Minuten, aber es erfordert etwa eine Stunde für eine sorgfältige Zerlegung und Erstellung eines neuen Gehäuses. Nach dem Scannen kann das Gerät an den Eigentümer zurückgegeben werden, aber zur Rekonstruktion des privaten ECDSA-Schlüssels basierend auf den erhaltenen Daten sind noch etwa 24 Stunden Rechenzeit erforderlich (es wird darauf hingewiesen, dass der Prozess auf eine Stunde reduziert werden kann, indem manuelle Operationen automatisiert und Optimierungen vorgenommen werden).

Neben dem physischen Zugriff auf den Schlüssel benötigt ein Angreifer für einen erfolgreichen Angriff auf Dienste mit multifaktorieller Authentifizierung zusätzlich eine Möglichkeit, den Benutzernamen und das Passwort für den Dienst zu erfahren, für den der erhaltene Hardware-Schlüssel zur zusätzlichen Authentifizierung verwendet wird. Bei der passwortlosen Authentifizierung in den FIDO2 Passwordless oder Passkey Modi muss zudem ein einzigartiger biometrischer Faktor (z. B. ein Fingerabdruck) reproduziert werden.
Die Angriffsstrategie zielt darauf ab, die im Token gespeicherten ECDSA-Schlüssel anhand von Daten, die durch die Analyse des elektromagnetischen Signals erhalten wurden, das das Token während der digitalen Signaturerstellung ausstrahlt und mit Informationen über den ephemeral ECDSA-Schlüssel korreliert, wiederherzustellen. Diese Informationen sind ausreichend, um den geheimen Schlüssel mithilfe von Methoden des maschinellen Lernens zu rekonstruieren. Im Fall von YubiKey ist es erforderlich, den Benutzernamen und das Passwort eines der Dienste zu kennen, in denen das Token als zusätzlicher Authentifizierungsfaktor verwendet wird.
Das Problem ergibt sich aus der Verwendung eines unsicheren Algorithmus zur Berechnung des modularen Inversen in der Infineon-Bibliothek, dessen Berechnungszeit von den Eingabewerten abhängt (für unterschiedliche Vektoren können verschiedene Berechnungszeiten für das modulare Inverse beobachtet werden). Eine solche Besonderheit ermöglicht es, durch die Analyse der Signaländerungen Informationen über einzelne Bits während der Durchführung von Operationen mit dem Initialisierungsvektor zu extrahieren. Im Falle von ECDSA reicht es aus, selbst nur einige Bits mit Informationen über den Initialisierungsvektor (Nonce) zu bestimmen, um einen Angriff zur schrittweisen Wiederherstellung des gesamten privaten Schlüssels durchzuführen. Für eine erfolgreiche Schlüsselwiederherstellung ist es erforderlich, die Aktivität bei der Generierung von etwa 40 digitalen Signaturen abzufangen.
Für die Analyse der elektromagnetischen Strahlung während der Generierung digitaler Signaturen ist professionelle Ausrüstung im Wert von über 10.000 Dollar erforderlich. Beispielsweise wurde im Laufe des Angriffs ein Messsystem Langer ICR HH 500-6 (2.300 $) verwendet, das für die Prüfung von Chips auf elektromagnetische Verträglichkeit eingesetzt wird, die Verstärkung Langer BT 706, der Mikromanipulator Thorlabs PT3/M (1.000 $) mit einer Auflösung von 10 µm, das digitale Mikroskop Dino-Lite AM4113TL (450 $) und der vierkanalige Oszilloskop PicoScope 6424E (7.500 $) mit 8-Bit-AD-Wandlerauflösung.

Das Angriffsszenario auf YubiKey 5-Tokens besteht aus folgenden Schritten:
- Ermittlung des Benutzernamens und des Passworts für das durch den Token geschützte Konto, beispielsweise durch Durchführung eines Phishing-Angriffs.
- Unauffälliger physischer Zugriff auf den Token.
- Analyse der elektromagnetischen Strahlung des Tokens während der Authentifizierungsvorgänge unter Verwendung der zuvor erlangten Anmeldeinformationen.
- Rückgabe des Tokens an das Opfer.
- Wiederherstellung des mit dem untersuchten Konto verknüpften privaten ECDSA-Schlüssels durch Analyse der abgefangenen Informationen zur elektromagnetischen Strahlung.
- Erstellung eines Token-Klons, der einen Zugang zum Konto ermöglicht, ohne dass das Opfer davon Kenntnis hat, und ohne das ursprüngliche Token zu benötigen.
Quelle: opennet.ru
