
TPM-Schwachstellenprüfwerkzeug für CVE-2018-6622. Dieses Werkzeug wird auf der Black Hat Asia 2019 und der Black Hat Europe 2019 veröffentlicht.
,----------------, ,---------,
,-----------------------, ," ,"|
," Napper v1.3 for TPM ," | ," ," |
+-----------------------+ | ," ," |
| .-----------------Z | | +---------+ |
| | Z | | | | -==----'| |
| | ︶ ︶ z | | | | | |
| | - | | |/----| ==== oo | |
| | | | | ,/| (((( | ,"
| `-----------------' |," .;'/ | (((( | ,"
+-----------------------+ ;; | | |,"
/_)______________(_/ //' | +---------+
___________________________/___ `,
/ oooooooooooooooo .o. oooo / \,"---------
/ ==ooooooooooooooo==.o. ooo= / ,`\--{-D) ,"
`-----------------------------' '----------"
Napper v1.3 for checking a TPM vulnerability, CVE-2018-6622 and unknown CVE
Project link: https://github.com/kkamagui/napper-for-tpm
Please contribute your summary report to the Napper project!
"Napper" ist ein neues Tool zur Überprüfung von Sicherheitslücken für das diskrete TPM und das Firmware-TPM (Intel PTT). CVE-2018-6622 und eine unbekannte CVE stehen im Zusammenhang mit dem S3-Schlafzustand (Suspend) der Advanced Configuration and Power Interface (ACPI). Der Angreifer kann das TPM mit dem S3-Schlafzustand unterwandern, und die Funktionen zur Remote-Attestierung und zum Siegel/Entsiegeln, die Platform Configuration Registers (PCRs) verwenden, können neutralisiert werden. Wenn Sie detaillierte Informationen über CVE-2018-6622 und die unbekannte CVE wünschen, lesen Sie bitte unser USENIX-Papier, A Bad Dream: Subverting Trusted Platform Module While You Are Sleeping und die Black Hat Europe 2019 Präsentation BitLeaker: Subverting BitLocker with One Vulnerability.
Napper und CVE-2018-6622 wurden auf den folgenden Sicherheitskonferenzen vorgestellt.
Eine unbekannte CVE im Zusammenhang mit Intel Platform Trust Technology (PTT) wurde auf den folgenden Sicherheitskonferenzen vorgestellt.
Sie können sich das Demo-Video unten ansehen.
Wir freuen uns immer über Ihre Beiträge. Der von Ihnen beigesteuerte Zusammenfassungsbericht von Napper wird die Welt sicherer machen.
Napper hat die GPL v2 Lizenz.
Trusted Platform Module (TPM) ist ein manipulationssicheres Gerät und wurde entwickelt, um hardware- oder firmwarebasierte Sicherheitsfunktionen bereitzustellen. Ein TPM-Chip verfügt über einen Zufallszahlengenerator, nichtflüchtigen Speicher, Verschlüsselungs-/Entschlüsselungsmodule und Platform Configuration Registers (PCRs), die für verschiedene Sicherheitsanwendungen wie BitLocker, DM-Crypt, Trusted Boot (tboot) und Open Cloud Integrity Technology (Open CIT) genutzt werden können.
TPM wurde weitgehend in handelsüblichen Geräten eingesetzt, um eine solide Grundlage für den Aufbau vertrauenswürdiger Plattformen zu schaffen, insbesondere in Geräten, die in Unternehmens- und Regierungssystemen verwendet werden. Da das TPM der kritische Punkt in der vertrauenswürdigen Plattform ist, haben viele Forscher versucht, Schwachstellen im TPM zu finden, und sind zu dem Schluss gekommen, dass es ohne physischen Zugriff schwer zu brechen ist. Dies ist jedoch nicht mehr der Fall.
Die von uns gefundenen Schwachstellen können das TPM mit der Advanced Configuration and Power Interface (ACPI) unterwandern. ACPI in PCs, Laptops und Servern bietet sechs Schlafzustände (S0-S5) zur Reduzierung des Stromverbrauchs. Wenn das System in den Schlafzustand eintritt, werden CPU, Geräte und RAM ausgeschaltet. Da das System die Komponenten einschließlich der Sicherheitsgeräte ausschaltet, sollte das System sie beim Aufwachen neu initialisieren, und dies könnte die Angriffsfläche sein. Wir haben Schwachstellen auf dieser Angriffsfläche ohne physischen Zugriff gefunden.
Um die Schwachstellen zu entschärfen, stellen wir auch Gegenmaßnahmen und ein neues Tool, "Napper", zur Überprüfung der Schwachstellen des TPM vor. Napper ist ein bootfähiges USB-Gerät auf Linux-Basis, das ein Kernelmodul und eine Software zur Schwachstellenprüfung enthält. Wenn Sie ein System mit Napper starten, versetzt es Ihr System in einen Schlafzustand, um die Schwachstellen zu überprüfen und Ihnen das Ergebnis zu melden.
Napper besteht aus einem speziellen Kernelmodul und angepassten tpm2-Werkzeugen. Napper basiert auf Ubuntu 18.04, und wir haben es angepasst und zugeschnitten, um ein Live-CD-Image zu erstellen. Wenn Sie nur die TPM-Sicherheitslücke überprüfen und einen einfachen Weg dafür finden möchten, gehen Sie bitte zu Abschnitt 3.1 und verwenden Sie das Napper-Live-CD-Image mit Ihrem USB-Speicher. Das Napper-Live-CD enthält nicht nur ein binäres Tool, sondern auch den vollständigen Quellcode von Napper. Wenn Sie derzeit Ubuntu 18.04 verwenden und Napper von Grund auf neu erstellen möchten, gehen Sie bitte zu Abschnitt 3.2 und bauen Sie es.
Napper-Live-CD-Images befinden sich auf der Release-Seite des Napper-Projekts.
Wenn Sie das Betriebssystem Microsoft Windows verwenden, nutzen Sie Win32 Disk Imager und schreiben Sie das Napper-Live-CD-Image auf Ihren USB-Speicher.
Wenn Sie Linux oder Mac OS X verwenden, benutzen Sie den folgenden dd-Befehl.```
$> sudo dd if=Napper-LiveCD.iso of=/dev/sdX bs=4096 $> sync
### 3.1.3. Starten Sie Ihr System mit Ihrem USB-Speicher neu und führen Sie Napper aus
Wenn Sie Ihren USB-Speicher anschließen und die Startreihenfolge ändern, um davon zu booten, sehen Sie das untenstehende Boot-Menü von Napper und starten Napper Live CD, indem Sie die erste Option auswählen.
<center> <img src="https://assets.kitploit.com/production/public/readmes/28076/525cb00d8f948ccc1653bd4fd08c8baf293615ad80ec52082b6c04efe7484f57.png" alt="napper_boot_menu"/> </center>