zurück zum Artikel

Intel-Prozessoren: Hardware-Sicherheitsschlüssel in Gefahr

Christof Windeck
Mainboard mit Intel-Chipsatz mit ME

Eine komplizierte Sicherheitslücke in vielen bisherigen Intel-Prozessoren könnte lokalen Angreifern Zugriff auf den zentralen Krypto-Schlüssel gewähren.

Laut Experten der russischen Firma Positive Technologies (PTE) bedroht eine transiente Sicherheitslücke, die kurzzeitig beim Booten des Systems offensteht, einen wichtigen Hardware-Sicherheitsschlüssel von Intel-Prozessoren aus den vergangenen Jahren. Diesen "Hardware Key" haben die Sicherheitsforscher zwar nicht geknackt, halten ihn aber für bedroht.

Falls das stimmt, hat das große Auswirkungen, weil Intel den ROM-Code, der den Hardware-Key erzeugt, nicht durch Updates ändern kann. Außerdem ist der Hardware Key für Millionen von Prozessoren identisch; er müsste also nur einmal extrahiert werden, um Funktionen auf allen betroffenen Systemen kompromittieren zu können. Allerdings ist für einen Angriff auf den Hardware-Key physischer Zugriff auf einen Computer nötig. Und bei den jüngsten 10-Nanometer-Prozessoren besteht das Risiko nicht mehr.

Intel hat bereits im Mai 2019 im Security Advisory Intel-SA-00213 [1] auf diese Sicherheitslücke CVE-2019-0090 [2] reagiert; ihr Risiko ist als "hoch" eingestuft (CVSS Base Score 7.1). Updates für die Firmware der sogenannten Converged Security and Management Engine (CSME), die bei vielen Systemen in BIOS-Updates integriert wurden, sollen Angriffe auf den Hardware Key erschweren.

Schon seit vielen Chip-Generationen enthalten Intel-Prozessoren eingebettete kryptografische Schlüssel. Diese dienen als Vertrauensanker (Root of Trust), um die Integrität der ausgeführten Firmware zu prüfen, etwa die des UEFI-BIOS und der sogenannten Management Engine.

Diese ME oder auch CSME – bei Atoms spricht Intel auch von CSE – nutzt Intel wiederum für sicherheitskritische Funktionen wie ein Firmware-TPM (fTPM 2.0) [3], aber auch für Digital Rights Management (DRM: PAVP [4], HDMI/HDCP), für die Überwachung von Grenzwerten (Übertemperatur, Taktfrequenzen) sowie zur Festlegung des Funktionsumfangs des jeweiligen Chips.

Intel

In einem Datenblatt für Apollo-Lake-Atoms findet sich der Hinweis auf die IOMMU der CSE MISA.

(Bild: Intel)

Die ME hat einen sehr kleinen, eigenen SRAM-Speicherbereich und nutzt im Betrieb einige Megabyte des normalen Hauptspeichers mit. Damit Schadsoftware das ME-SRAM nicht manipulieren kann, ist dessen Adressbereich normalerweise nicht durch normale Software erreichbar: Eine I/O Memory Management Unit (IOMMU) des sogenannten Minute IA System Agent (MISA) blockiert den Zugriff auf das SRAM.

Wie Mark Ermolov von PTE in einem Blog-Eintrag erklärt [5], hat er durch simples Lesen der Datenblätter herausgefunden, dass der IOMMU-Schutz des SRAM erst kurz nach dem Systemstart greift. In der kurzen Phase davor könnte Schadsoftware per DMA den Code im ME-SRAM manipulieren, um letztlich den erwähnten Hardware-Key zu verändern.

Damit wiederum könnten sich weitere Schlüssel und digitale Zertifikate erbeuten lassen, etwa der Chipset Key, um letztlich an die Enhanced Privacy ID (EPID) [6] zu kommen. Die EPID spielt auch für Intels Software Guard Extensions (SGX) [7] für ein Trusted Execution Environment (TEE) im RAM eine Rolle [8].

Ermolov erwähnte vor einiger Zeit ein bestimmtes, mehrtausendseitiges Datenblatt für Atom-, Celeron-N- und Pentium-Silver-Prozessoren [9] der Generation Apollo Lake aus dem Jahr 2016. "Volume 3" dieses Datenblatts, das unter anderem die Tabelle 27-8 mit Registern der CSE-MISA enthält, ist mittlerweile nicht mehr auf öffentlichen Intel-Servern zu finden.

Mark Ermolov und Maxim Goryachy (alias h0t_max) von PTE sind Spezialisten für Intels ME/CSME/CSE und haben sie über einen gehackten USB-Debugging-Zugang schon weit erforscht [10]. Kürzlich hat Ermolov getwittert, auch für Prozessoren mit der CSME-Generation 12 das JTAG-Debugging-Level "RED" freigeschaltet [11] zu haben. Für die ME-Generation 11 ist das schon Ende 2019 gelungen [12]. (ciw [13])


URL dieses Artikels:
https://www.heise.de/-4677794

Links in diesem Artikel:
[1] https://www.heise.de/news/Intel-fixt-teils-kritische-Luecken-in-UEFI-BIOS-ME-und-Linux-Grafiktreiber-4423912.html
[2] https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-0090
[3] https://www.heise.de/news/Schwachstelle-TPM-Fail-Erste-Updates-und-Testsoftware-von-Intel-4587272.html
[4] https://www.heise.de/news/Linux-Tueftler-wollen-Intels-Management-Engine-abschalten-3596075.html
[5] http://blog.ptsecurity.com/2020/03/intelx86-root-of-trust-loss-of-trust.html
[6] https://software.intel.com/en-us/articles/intel-enhanced-privacy-id-epid-security-technology
[7] https://www.heise.de/news/Intel-flickt-Plundervolt-und-zahlreiche-weitere-Sicherheitsluecken-4611068.html
[8] https://software.intel.com/en-us/download/intel-sgx-intel-epid-provisioning-and-attestation-services
[9] https://www.heise.de/hintergrund/6000-Seiten-Prozessor-Datenblaetter-3996512.html
[10] https://www.heise.de/news/Intel-Prozessoren-undokumentierter-Debugging-Zugriff-erforscht-4256525.html
[11] https://twitter.com/_markel___/status/1233129422313705473
[12] https://kakaroto.homelinux.net/2019/11/exploiting-intels-management-engine-part-2-enabling-red-jtag-unlock-on-intel-me-11-x-intel-sa-00086/
[13] mailto:ciw@ct.de