„TPM-Fail“ extrahiert geheime ECDSA-Schlüssel aus dem vermeintlich geschützten Speicher von Intels fTPM 2.0 und einem ST33-TPM von STMicroelectronics.

Abermals weisen Sicherheitsforscher bedenkliche Schwachstellen in zertifizierten Trusted Platform Modules (TPMs) nach. Der Angriff TPM-Fail kratzt am grundsätzlichen TPM-Konzept. Denn erstens soll ein solches TPM kryptografische Geheimnisse besonders sicher schützen, und zwar als zusätzliche Instanz unabhängig von Hauptprozessor und Betriebssystem. Zweitens durchlaufen derartige TPMs aufwendige Zertifizierungen in Speziallabors, die sie auf Schwachstellen abklopfen.

TPM-Fail weist nun am Beispiel des TPM-Chips STMicroelectronics ST33TPHF2ESPI und des weit verbreiteten Firmware-TPMs Intel fTPM 2.0 nach, dass der Schutz zu schwach ist: Den Experten gelang es jeweils, den geheimen Schlüssel für den Elliptic Curve Digital Signature Algorithm (ECDSA) durch eine im Prinzip altbekannte Timing-Attacke auszulesen.

Außerdem haben Zertifizierungen diese Schwachstellen übersehen: Beide TPM-Implementierungen erfüllen laut ihren Herstellern die Vorgaben von FIPS 140-2, das ST33TPHF2ESPI zusätzlich die nach Common Criteria Evaluation Assurance Level 4+ (CC EAL 4+).

Schließlich zeigen die Reaktionen von Intel und STMicroelectronics (ST), dass trotz koordinierter Veröffentlichung mit langen Geheimhaltungsfristen noch Firmware-Updates fehlen – ganz abgesehen davon, dass das Patchen der Firmware sehr aufwendig sein kann.

Die praktischen Auswirkungen von TPM-Fail hängen von der Nutzung des betroffenen Schlüsselalgorithmus ab. Microsoft hat das Security Advisory ADV190024 zu TPM-Fail herausgegeben und stellt klar, dass Windows keine ECDSA-Schlüssel nutzt, beispielsweise nicht für BitLocker. Daher ist Windows nicht direkt von TPM-Fail betroffen. Windows-Software, die ECSDA-Schlüsseln des TPM vertraut, kann aber betroffen sein.

Beispielsweise lässt sich OpenSSL für VPN-Verbindungen so konfigurieren, dass es ECDSA-Signaturen des TPM verwendet. Dann gelang es den TPM-Fail-Entdeckern, über eine schnelle Netzwerkverbindung im Laufe von mehreren Stunden dermaßen viele Zugriffe auszuführen, dass sich aus winzigen Zeitunterschieden bei der ECDSA-Verarbeitung auf den geheimen Schlüssel im TPM schließen ließ.

Intel hat am 12. November eine riesige Liste von Sicherheitsupdates veröffentlicht, darin unter Intel Security Advisory SA-00241 (CVE-2019-11090) auch Firmware-Updates für betroffene fTPM-2.0-Implementierungen. Verwirrend ist dabei, dass das fTPM je nach Plattform Teil verschiedener Firmware-Pakete ist.

Bei Core-i-Prozessoren spricht Intel von Platform Trust Technology (PTT), hier sind Firmware-Versionen ab 11.8.65, 11.11.65, 11.22.65, 12.0.35, 13.0.1201 beziehungsweise 14.0.10 geschützt.

Bei (Xeon-)Servern spricht Intel von Intel Server Platform Services (SPS), geschützt sind Firmware-Versionen ab SPS_E5_04.01.04.297.0, SPS_E3_04.01.04.083.0, SPS_SoC-X_04.00.04.101.0 und SPS_SoC-A_04.00.04.193.0.

Bei Atom-Chips, Atom-Celerons und Pentium Silver spricht Intel von Trusted Execution Engine (TXE), geschützt sind Firmware-Versionen ab 3.1.65 und 4.0.15.

Die nötigen Firmware-Updates lassen sich je nach System entweder in Form eines BIOS-Updates einspielen (Supermicro pflegt etwa eine Liste betroffener Server-Mainboards) oder über (Windows-)Software, die die ME-Firmware erneuert.

Dabei stiftet Intel zusätzliche Verwirrung, weil es nicht immer konkret den PTT-Firmware-Stand erwähnt, sondern den der ME-Firmware (Management Engine). Intels Marketing bevorzugt für die ME wiederum den Begriff CSME (Converged Security and Management Engine). Für aktuelle Mini-PCs der NUC-Familie scheint es jedenfalls noch keine Updates zu geben, die aktuelle BIOS-Version für mehrere NUC8i-Typen ist 0075 vom 23. Oktober und enthält laut Release Notes noch die „ME Firmware 12.0.32.1421“.

ST informiert bisher nur sehr knapp über die Möglichkeit, die betroffenen TPM-Chips per Firmware-Update zu schützen (CVE-2019-16863). Eine neue, wiederum zertifizierte Firmware stehe bereit. Das TPM-Fail-Team bestätigt, dass aktuelle ST33-Chips nicht von der Lücke betroffen sind.