Spectre-Lücke: Microcode-Updates nun doch als Windows Update

So wie einige Linux-Distributionen (re-)aktiviert Microsoft die Möglichkeit, Microcode-Updates mit IBC-Patches gegen Spectre als Update des Betriebssystems einzuspielen – vorerst nur für Core i-6000 (Skylake).

In Pocket speichern vorlesen Druckansicht 180 Kommentare lesen
Meltdown und Spectre: Sicherheitslücke in Intel-Prozessoren
Lesezeit: 3 Min.

Obwohl schon ältere Windows-Versionen Microcode-Updates für Prozessoren per Windows Update beziehen konnten, hatte Microsoft diese Funktion für Patches gegen die Sicherheitslücke Spectre V2 (CVE-2017-5017) bisher nicht genutzt. Stattdessen zwang Microsoft die Besitzer betroffener Systeme, die Microcode-Updates per BIOS-Update einzuspielen. Das ist viel aufwendiger als ein Windows-Update, ganz abgesehen davon, dass nicht alle Hersteller betroffener Systeme überhaupt BIOS-Updates bereitstellen, insbesondere nicht für ältere Rechner oder wenn der Hersteller gar nicht mehr exisitiert.

Nun stellt Microsoft das optionale Update KB4090007 in Version V1.001 per Microsoft Update Catalog bereit, welches die Intel Microcode Update Revision 0xC2 für Prozessoren vom Typ Intel Core i-6000 (Skylake) enthält.

[Update:] Der Download der .msu-Dateien mit den eigentlichen Updates kann dabei derzeit nur über eine ungesicherte http-Verbindung erfolgen.

CPU-Sicherheitslücken Meltdown und Spectre

Microsoft verspricht auf der Support-Webseite zu KB4090007, dass später auch Microcode-(µCode-)Updates für andere Prozessortypen folgen sollen. Mittlerweile hat Intel nach dem Rückzug der ersten Updates am 22. Januar auch wieder neue Microcode-Updates für die wichtigsten Prozessor-Baureihen seit 2013 freigegeben – allerdings bisher nur für PC-Hersteller.

Die neuen Microcode-Updates rüsten bei den betroffenen Prozessoren die drei Funktionen Indirect Branch Prediction Barrier (IBPB), Indirect Branch Restricted Speculation (IBRS) und Single Thread Indirect Branch Predictor (STIBP) nach. Diese nutzt Windows mit den Updates von Anfang Januar für Indirect Branch Control (IBC) als Schutz gegen Branch Target Injection (BTI), also Spectre V2.

Aus unerfindlichen Gründen hat Intel die Microcode-Updates bisher nicht in das Linux Processor Microcode Data File integriert, welches einige Linux-Distributionen für Microcode Updates nutzen.

Wer einen PC mit Intel-Prozessor hat, der nicht zur Skylake-Familie gehört, ist also bislang weiter auf BIOS-Updates angewiesen. Die sind ausgerechnet für Skylake-Rechner bei vielen Firmen schon verfügbar, mittlerweile sind auch die ersten BIOS-Updates für Kaby-Lake-Rechner aufgetaucht.

Weshalb Microsoft die Microcode-Updates gegen BTI bei Windows 10 nicht von Anfang an wie früher per Windows Update eingespielt hat, ist unklar. Möglicherweise hängt es mit Schutzfunktionen wie Early Launch Anti-Malware (ELAM) zusammen, die schon vor dem eigentlichen Start von Windows loslegen. Wenn die CPU zu diesem Zeitpunkt noch kein Microcode-Update hat, dann sind auch die Anti-BTI-Funktionen nicht nutzbar.

AMD hat sich bisher nicht weiter dazu geäußert, wann die angekündigten Microcode-Updates für IBC kommen. In den jüngsten Ryzen-2000G-APUs ist wohl nur die Funktion IBPB aktiviert.

Für Verwirrung hatte auch das optionale Windows-Update KB4078130 gesorgt, welches den Spectre-Schutz abschaltet: Dieses Update wurde nicht automatisch per Windows Update eingespielt, sondern war als Problemlöser für Systeme gedacht, bei denen IBC Probleme machte. Das sollte mit Intels neuen Microcode-Updates nicht mehr vorkommen – genau wegen der erwähnten Probleme hatte Intel am 22. Januar ja die ersten Microcode-Updates zurückgezogen.

Dass nun gerade das Skylake-Update als erstes wieder erscheint, ist dabei kein Zufall: Dieses Update hat Intel nicht überarbeitet, sondern nur nochmals überprüft. Sprich: Es ist dasselbe CPU Microcode Update 0xC2 wie vor dem 22. Januar.

Microcode-Updates mit IBC gegen Spectre V2 für Intel-Prozessoren (Auswahl)
Prozessor-Familie Core-i-Generation Codename Einführungs-
Jahr
Version des Microcode-Update
Core i3/i5/i7-8000 8. Generation Coffee Lake 2017 0x84
Xeon E-2000 -- Coffee Lake 2018 0x84
Core i3/i5/i7-7000 7. Generation Kaby Lake 2016 0x84
Xeon-SP -- Skylake-SP 2017 0x2000043
Core i3/i5/i7-6000 6. Generation Skylake 2015 0xC2
Xeon E5-2000 v4 -- Broadwell-EP 2015 0xB00002A
Core i3/i5/i7-5000 5. Generation Broadwell-H 2014 0x1D
Core i3/i5/i7-5000U/Y 5. Generation Broadwell-U/Y 2014 0x2A
Xeon E5-2000 v3 -- Haswell-EP 2014 0x3C
Core i3/i5/i7-4000 4. Generation Haswell 2013 0x24
Core i3/i5/i7-3000 3. Generation Ivy Bridge 2012 Beta
Core i3/i5/i7-2000 2. Generation Sandy Bridge 2011 Beta
Core i3-300/i5-500/i7-600 1. Generation Arrandale, Clarkdale Pre-Beta
Core 2 Duo, Quad -- Penryn, Wolfdale, Arrandale in Planung
Pentium Silver N/J5000 -- Gemini Lake 2018 00000022
Celeron N/J4000 -- Gemini Lake 2018 00000022
Atom x5-E3900 -- Apollo Lake 2017 00000008, 000002E
Pentium N/J4200 -- Apollo Lake 2017 000002E
Celeron N/J3300 -- Apollo Lake 2017 000002E
Pentium N/J3000 -- Braswell 2015 00000410
Celeron N/J3000 -- Braswell 2015 00000410

Unser Hotline-Tipp erklärt die Identifikation von Intel-Prozessoren anhand der Typenbezeichnung.

Empfohlener redaktioneller Inhalt

Mit Ihrer Zustimmmung wird hier ein externes Video (Kaltura Inc.) geladen.

Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit können personenbezogene Daten an Drittplattformen (Kaltura Inc.) übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.

Empfohlener redaktioneller Inhalt

Mit Ihrer Zustimmmung wird hier ein externes Video (Kaltura Inc.) geladen.

Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit können personenbezogene Daten an Drittplattformen (Kaltura Inc.) übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.

(ciw)