• IT-Karriere:
  • Services:

Compiler, Linux-Kernel und Mikrocode gegen Spectre

Von den beiden Spectre-Varianten sind auch unter Linux nahezu alle verbreiteten CPU-Architekturen betroffen. Neben den x86-Chips von Intel betrifft das natürlich auch ARM-CPUs, ebenso wie laut IBM die Power-Serien 7,8 und 9 und wohl auch die Z-Serie sowie Fujitsu zufolge auch dessen Sparc-Server-CPUs. Oracle hat mit seinen Januar-Updates ebenfalls bestätigt, dass seine Sparc-v9-CPUs von Spectre betroffen sind. Das meldet das britische Magazin The Register unter Berufung auf ein nichtöffentliches Supportdokument.

Stellenmarkt
  1. Deutsche Gesellschaft für Internationale Zusammenarbeit (GIZ) GmbH, Eschborn
  2. Debeka Betriebskrankenkasse, Koblenz

Für Variante 1 von Spectre (CVE-2017-5753) werden im Linux-Kernel mit Hilfe der Compiler GCC und LLVM "speculative fences" an betroffenen Code-Stellen eingefügt. Die meisten Distro-Kernel sollten inzwischen über entsprechende Mechanismen verfügen.

Darüber hinaus gibt es weitere Patches, die aktiv gegen diese Spectre-Variante vorgehen sollen, über deren Verwendung aber noch nicht abschließend entschieden ist. Details dazu liefert das Magazin LWN.net.

Mikrocode-Updates als hilfreicher Schritt

Um auch gegen die zweite Variante von Spectre (CVE-2017-5715) geschützt zu sein, sollten Linux-Nutzer auf jeden Fall Mikrocode-Updates für ihre jeweilige Plattform einspielen, sofern diese bereits zur Verfügung stehen.

Intel hat den aktualisierten Mikrocode am 8. Januar veröffentlicht und die meisten Distributionen sollten diesen bereits als Paket bereitstellen. Notwendig wird ein Mikrocode-Update außerdem für die neue Zen-Architektur von AMD. Ob dies Ryzen und Epyc gleichermaßen betrifft, ist derzeit nicht bekannt. Um hier Mikrocode-Updates einspielen zu können, sind einige vorbereitenden Kernel-Patches notwendig, die in den aktuellen Upstream-Kernel bereits verfügbar sind.

Zur Verfügung gestellt wird der AMD-Mikrocode für Zen bereits von Suse, die schreiben, dass damit der Branch Predictor abgeschaltete werde. Das kann wegen der zu erwartenden massiven Leistungseinbußen dabei aber so nicht stimmen. Diese Vermutung hat AMD auch dem US-Magazin Phoronix bestätigt und das Unternehmen arbeite demnach gemeinsam mit Suse an einer besseren Formulierung. AMD selbst beschreibt dieses Update als optional, da die Lücke nur sehr schwer auf den Chips auszunutzen sei.

Debian hat diesen Mikrocode bereits für seinen Unstable-Zweig alias Sid übernommen. Es ist davon auszugehen, dass der AMD-Mikrocode so auch in anderen Debian-Versionen sowie in Ubuntu und darauf basierenden Distributionen landen wird. In der Upstream-Quelle Linux-Firmware von Kernel.org fehlt das Mikrocode-Update von AMD aber noch. Mikrocode-Updates von IBM für Power- und Z-Series-Systeme gibt es direkt vom Hersteller. ARM verweist auf Patches für seine Trusted Firmware, die die SoC- oder Geräte-Hersteller einspielen sollten.

Kernel-Patches zusätzlich zum Mikrocode

Zusätzlich dazu gibt es weitere Umbaumaßnahmen im Linux-Kernel, die teilweise direkt auf den Mikrocode-Funktionen aufbauen, die das Verhalten der CPU in bestimmten Situationen verändern. Die Upstream-Community diskutiert hier aber ebenfalls noch die besten Lösungen und Mechanismen zur Umsetzung. Einige Distro-Kernel nutzen die zur Diskussion stehenden Patches aber bereits.

Das betrifft vor allem die Verwendung von Indirect Branch Restricted Speculation (IBRS) für die x86-Architetur. In der Beschreibung dazu heißt es: "Wenn IBRS gesetzt ist, können Beinahe-Rückgaben- und Beinahe-indirekte-Sprünge/Aufrufe ihre vorhergesagte Zieladresse nicht durch Code steuern, der in einem weniger privilegierten Vorhersagemodus ausgeführt wurde, bevor der IBRS-Modus zuletzt mit dem Wert 1 oder auf einem anderen logischen Prozessor geschrieben wurde, solange alle RSB-Einträge aus dem vorherigen weniger privilegierten Vorhersagemodus überschrieben werden."

Darüber hinaus gibt es noch die Patches für sogenannte Return Trampolines (Retpoline), die LWN.net als eine Attack auf den Branch Predictor nach dem Prinzip des Return-Oriented Programming (ROP) beschreibt. Laut den Initiatoren von Google sollen damit Indirect Branches von der spekulativen Ausführung isoliert werden.

Ob und wann IBRS oder Retpoline oder beide gemeinsam verwendet werden sollten, ist derzeit noch nicht klar. Retpolines funktionieren nach derzeitigem Kenntnisstand aber nicht zuverlässig auf Skylake-CPUs. Auf älteren Intel-CPUs verursachen die IBRS-Patches dagegen teils schwere Leistungseinbußen.

Über dieses Durcheinander beschwert sich Kernel-Maintainer Kroah-Hartman sehr deutlich. So heißt es etwa: "Wir hatten keine wirklichen Informationen darüber, was genau das Spectre-Problem war"; die vielen verschiedenen Patches für die unterschiedlichen Lösungsansätze seien teilweise extrem schlecht gewesen. Eine Koordination wie bei Meltdown über die nicht-öffentliche Security-Liste der Kernel-Hacker hat hier wohl nicht stattgefunden, stattdessen haben vor allem die Enterprise-Distributionen schnell eigene Lösungen umgesetzt. Kroah-Hartman erwartet eine in der Community abgestimmte Lösung für die Probleme mit Spectre in den kommenden Wochen.

Für Linux-Nutzer findet sich auf Github ein Skript, das die jeweilige Nutzung der Patches und Updates auf dem laufenden System analysiert. In den kommenden Wochen sollten Nuzter die zur Verfügung gestellten Updates genau beobachten und einspielen. Wer aktuell kein Tool zur Überprüfung auf Bios-Updates installiert hat sollte das nachholen. Auch wer aktuell bereits Patches eingespielt hat, sollte weiter aufmerksam bleiben. In vielen Fällen sind die aktuellen Fehlerbehebungen wohl erst ein Anfang und dürften langfristig durch stabilere Lösungen ersetzt werden.

Nachtrag vom 18. Januar 2018, 12:40 Uhr

Wir haben den Text um Informationen von Oracle erweitert.

Nachtrag vom 23. Januar 2018, 10:41 Uhr

Wir haben Informationen über die zurückgezogenen Microcode-Updates für Broadwell- und Haswell-Prozessoren ergänzt.

Nachtrag vom 24. Januar 2018, 13:56 Uhr

Apples Meltdown-Patches für MacOS Sierra und El Capitan nachgetragen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Updates für Langzeit-Linux und ARM64
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. 8


Anzeige
Spiele-Angebote
  1. 49,99€
  2. 24,99€
  3. gratis

logged_in 14. Feb 2018

i7-930 hier. Hast sicher auch schon oft nach einem guten Upgrade gesucht, und dann aus...

cryptomagic 08. Feb 2018

Der Frage haben wir uns genauer angenommen, und unsere Ergebnisse in einem Artikel...

daydreamer42 28. Jan 2018

Ohne entsprechende Betriebssystem-Patches sind die Microcode-Patches wertlos. Der Linux...

Bachsau 27. Jan 2018

Eben genau nicht. Man braucht keine Root-Rechte.

Der Held vom... 25. Jan 2018

Du hast aber schon gelesen (und verstanden) was ich schrieb, oder? Von Taktraten war da...


Folgen Sie uns
       


Futuristische Schwebebahn im Testbetrieb: Verkehrsmittel der Zukunft für die dritte Dimension
Futuristische Schwebebahn im Testbetrieb
Verkehrsmittel der Zukunft für die dritte Dimension

Eine Schwebebahn für die Stadt, die jeden Passagier zum Wunschziel bringt - bequem, grün, ohne Stau und vielleicht sogar kostenlos. Ist das realistisch?
Ein Bericht von Werner Pluta

  1. ÖPNV Infraserv Höchst baut Wasserstofftankstelle für Züge

Covid-19: So funktioniert die Corona-Vorhersage am FZ Jülich
Covid-19
So funktioniert die Corona-Vorhersage am FZ Jülich

Das Forschungszentrum Jülich hat ein Vorhersagetool für Corona-Neuinfektionen programmiert. Projektleiter Gordon Pipa hat uns erklärt, wie es funktioniert.
Ein Bericht von Boris Mayer

  1. Top 500 Deutscher Supercomputer unter den ersten zehn
  2. Hochleistungsrechner Berlin und sieben weitere Städte bekommen Millionenförderung
  3. Cineca Leonardo Nvidias A100 befeuert 10-Exaflops-AI-Supercomputer

Next-Gen: Tolle Indiegames für PS5 und Xbox Series X/S
Next-Gen
Tolle Indiegames für PS5 und Xbox Series X/S

Kaum ein unabhängiger Entwickler hat Dev-Kits für PS5 und Xbox Series X/S - aber The Pathinder und Falconeer sind tolle Next-Gen-Indiegames!
Von Rainer Sigl

  1. Indiegames-Rundschau Raumschiffknacker im Orbit
  2. Rollenspiel Fans übersetzen Disco Elysium ins Deutsche
  3. Indiegames-Rundschau Einmal durchspielen in 400 Tagen

    •  /