Dieser Vortrag des Doktoranden Patrick K. (Aalto-Universität) dokumentiert die erfolgreiche Hardware-Analyse und den kryptoanalytischen Einbruch in die Sicherheitsarchitektur von Nvidias Krypto-Mining-Prozessoren (CMP 170HX / 180HX), welche auf dem GA100-Grafikprozessor basieren.
Nvidia hatte diese GPUs nach dem Ende des Ethereum-Minings im Jahr 2022 durch restriktive Firmware- und Hardware-Sperren (Drosselung der CUDA-Kerne auf ca. 4.400, Limitierung des physisch vorhandenen HBM2-Speichers auf 8 GB statt 40/48/96 GB sowie Reduzierung der Tensor-Leistung auf 1/64) de facto zu Elektronikschrott degradiert. Durch die Entdeckung eines AES-128-Verschlüsselungsfehlers (Verwendung des schwachen ECB-Modus und Analyse konstanter Null-Padding-Muster zur Rekonstruktion des Debug-Schlüssels) gelang es den Analysten, den verschlüsselten Falcon-Mikrocode zu dekompilieren.
Unter Ausnutzung einer Pufferüberlauf-Schachstelle (Buffer Overflow) im Bootloader der Nvidia-Open-Source-Treiber wurde eine ROP-Kette (Return-Oriented Programming) entwickelt. Diese überschreibt die Stack Canaries des Falcon-Mikrocontrollers und ermöglicht die direkte Manipulation der Privilege Level Masks (PLM) im Bar-0-Adressraum. Ein im Juli 2024 veröffentlichter, plattformunabhängiger Clean-Room-Unlocker auf Python-Basis schaltete die Rechenleistung (Compute) vollständig frei, was zu einer sofortigen Marktpreis-Verdopplung der Gebraucht-Hardware führte. Ein kurz darauf geleakter chinesischer Treiber-Mod-Unlocker ermöglichte zudem den vollständigen Speicher-Unlock.
Wichtigste Punkte & Zeitstempel
0:14 Patrick K. und das GA100-Forschungsobjekt: Der Referent stellt den Nvidia-Kryptomining-Prozessor (CMP 170HX) vor. Dieser basiert auf dem GA100-Chip, welcher auch im extrem leistungsstarken und US-Exportbeschränkungen unterliegenden KI-Prozessor Nvidia A100 verbaut ist.
2:10 Ethereum-Mining und Preisverfall: Erklärung der Marktbedingungen um 2021/2022. Nach der Ethereum-Umstellung verloren die CMP-Karten (Originalpreis bis zu 5.000 $) ihren Nutzen und wurden als E-Waste für unter 200 $ gehandelt, während vollwertige A100-Karten über 10.000 $ kosteten.
3:53 Künstliche Hardware-Drosselung (Nerves): Nvidia reduzierte die CUDA-Kerne künstlich auf etwa 4.400, limitierte den nutzbaren Speicher auf 8 GB und drosselte die Tensor-Kerne für Matrixmultiplikationen auf ein 1/64 der Originalleistung. Die FP32-Leistung ließ sich jedoch durch Verzicht auf FMA-Befehle (Fused Multiply-Add) um das Zweifache steigern.
5:42 Platinen-Layout und HBM2-Architektur: Trotz reduzierter Spannungsphasen kann die Karte mit modifiziertem BIOS 300 Watt aufnehmen. Die PCIe-Lanes wurden durch entfernte Kondensatoren physisch auf 4 Lanes gedrosselt. Physisch sind sechs HBM2-Stacks (mindestens 40 bis 96 GB) vorhanden, die Nvidia über interne Fuses (FPBs / Half-Stacks) funktional deaktiviert hat.
11:00 Software-Sperren vs. physische Limitierungen: Da HBM2-Speicher nie mit einer Dichte von nur 2 GB produziert wurde, war das Vorhandensein von mindestens 32–40 GB Speicher logisch impliziert. Tests mit weniger limitierten Engineering Samples zeigten, dass die Sperren primär über das VBIOS und nicht rein physisch erzwungen werden.
14:21 Register-Sperren via Privilege Level Masks (PLM): Die Performance-Einschränkungen sind im Bar-0-Adressraum über Privilege Level Masks (PLM) geregelt. Diese verhindern, dass der Host-Treiber Modifikationen an den Leistungskontroll-Registern vornimmt, solange die PLMs nicht durch interne Falcon-Coprozessor-Firmware geändert werden.
17:20 Nvidias achtstufige Sicherheitsarchitektur: Analyse der Sicherheitsbarrieren, darunter der Lapsus-Leak (Sicherheitsbruch durch Datenabfluss), Stack Canaries, Immutable Boot-ROMs, Falcon-Coprozessoren mit AES-Kryptografie sowie RSA-Signaturprüfungen der Firmware-Blobs.
21:52 Kryptoanalyse des VBIOS und Debug-Key-Extraktion: Vergleich zweier VBIOS-Versionen offenbarte die Nutzung des AES-ECB-Modus statt CBC. Identische Ciphertext-Muster (717D1494...) beim standardmäßigen Null-Padding des Debug-Codes erlaubten die erfolgreiche Rekonstruktion des kryptografischen 128-Bit-Debug-Schlüssels über Brute-Force bekannter Standardmuster.
32:21 Bootloader-Schwachstelle und ROP-Exploit: Ein kritischer Fehler im RISC-V/Falcon-Bootloader der Nvidia-Open-Source-Treiber (fehlende Längenprüfung der Signatur) ermöglichte einen Pufferüberlauf. Über eine ROP-Chain (Return-Oriented Programming) wurde der Stack überschrieben, um direkt in die Register-Schreibfunktionen zu springen.
40:17 Der "Clean-Room"-Unlocker: Am 12. Juli 2024 wurde der erste Python-basierte Clean-Room-Unlocker auf GitHub veröffentlicht. Er aktivierte die Rechenleistung treiberunabhängig (sogar unter Windows und UEFI), woraufhin die Gebrauchtpreise der CMP-Karten von 200 $ auf über 500 $ anstiegen.
43:47 Chinesischer Treiber-Leak und KI-Unterstützung: Drei Tage nach dem Clean-Room-Release wurde ein 500 MB großer chinesischer Treiber-Mod-Unlocker geleakt, der auf dem ursprünglichen Proof of Concept der geschlossenen Entwicklergruppe basierte. Für die Codeanalyse wurden fortgeschrittene KI-Modelle wie Claude und Qwen eingesetzt.
Glossar
A100: Ein von Nvidia entwickelter High-End-Grafikprozessor für Rechenzentren, der speziell für KI-Berechnungen und wissenschaftliche Simulationen optimiert ist.
AES (Advanced Encryption Standard): Ein symmetrisches Verschlüsselungsverfahren. Hier im unsicheren ECB-Modus (Electronic Codebook) betrieben, bei dem identische Klartextblöcke in identische Geheimtextblöcke übersetzt werden, was Mustererkennung ermöglicht.
Bar 0 (Base Address Register 0): Ein Register im PCI-Express-Adressraum, über das der Prozessor des Host-PCs direkten Zugriff auf die Steuerregister der Grafikkarte erhält.
Buffer Overflow (Pufferüberlauf): Eine Sicherheitslücke, bei der ein Programm mehr Daten in einen Speicherbereich (Puffer) schreibt als dieser aufnehmen kann, wodurch angrenzende Speicherbereiche (wie der Stack) überschrieben werden.
CMP (Cryptomining Processor): Eine von Nvidia speziell für das Schürfen von Kryptowährungen konzipierte Grafikkartenserie ohne Display-Ausgänge.
CUDA-Kerne: Parallelprozessoren auf Nvidia-Grafikkarten, die für allgemeine mathematische Berechnungen (GPGPU) genutzt werden.
ECB (Electronic Codebook): Ein einfacher Betriebsmodus für Blockverschlüsselungen, der anfällig für kryptoanalytische Musteranalysen ist.
Falcon: Ein proprietärer, von Nvidia entwickelter, eingebetteter Mikrocontroller auf der GPU, der Sicherheits- und Initialisierungsaufgaben übernimmt.
FMA (Fused Multiply-Add): Ein Gleitkommabefehl, der eine Multiplikation und eine Addition in einem einzigen Schritt mit nur einem Rundungsfehler ausführt.
GA100: Der physikalische Grafikprozessor (Die) der Ampere-Architektur, der das Herzstück des A100-Beschleunigers und der CMP 170HX-Karten bildet.
HBM2 (High Bandwidth Memory 2): Ein extrem schneller, dreidimensional gestapelter Arbeitsspeicher, der direkt auf dem Silizium-Interposer des Grafikprozessors sitzt.
PLM (Privilege Level Mask): Spezielle Hardware-Register auf der GPU, die festlegen, welche Host-Software oder Treiber Registerwerte verändern darf.
RISC-V: Eine quelloffene Prozessorarchitektur (ISA), die Nvidia für Hilfsprozessoren auf modernen GPUs einsetzt.
ROP-Chain (Return-Oriented Programming): Eine fortgeschrittene Exploit-Technik, bei der ein Angreifer die Kontrolle über den Stack übernimmt und vorhandene, kurze Code-Endstücke (Gadgets) im Speicher so aneinanderreiht, dass sie Schadcode ausführen.
Stack Canary: Ein Sicherheitswert auf dem Stack, der vor dem Verlassen einer Funktion überprüft wird. Hat ein Pufferüberlauf stattgefunden, verändert sich dieser Wert und das System bricht ab (Schutz vor Code-Ausführung).
VBIOS (Video BIOS): Die grundlegende Firmware einer Grafikkarte, die Taktraten, Spannungen und Hardware-Limits beim Systemstart initialisiert.