Betriebssysteme: Linux 4.16 bringt Spectre- und Meltdown-Patches und mehr

Während Spectre und Meltdown weiterhin die Arbeit der Kernel-Hacker dominieren, kehrt langsam wieder der Alltag ein. Mit der Freigabe des Linux-Kernels 4.16 gibt es zusätzliche Patches gegen die Schwachstellen aber auch wieder zahlreiche Neuerungen, vor allem beim quelloffenen Treiber für Grafikkarten von AMD.

Artikel von veröffentlicht am
Betriebssysteme: Linux 4.16 bringt Spectre- und Meltdown-Patches und mehr
(Bild: Jerzy Strzelecki/CC-BY 3.0)

Die Absicherung gegen die jüngst bekanntgewordenen Sicherheitslücken Spectre und Meltdown schreitet voran, ist aber noch nicht ganz abgeschlossen. Vor allem muss noch weiterer Code im Kernel überprüft werden. Inzwischen nutzen die Kernel-Entwickler ein eigenes Makro, das bei den gefundenen Stellen die spekulative Ausführung abschaltet. Um diese Stellen zu finden, verwenden die Entwickler das proprietäre Werkzeug Coverity. Parallel dazu arbeiten sie an einem eigenen Werkzeug. Jenseits der Arbeiten zur Absicherung gegen Spectre und Meltdown gibt es aber auch weitere Neuerungen in Linux 4.16, insbesondere beim quelloffenen Treiber Amdgpu für Grafikkarten von AMD.

Inhalt:
  1. Betriebssysteme: Linux 4.16 bringt Spectre- und Meltdown-Patches und mehr
  2. Jenseits von Spectre und Meltdown
  3. Gasttreiber für Virtualbox

Zu den Änderungen, die bereits in die Kernel-Versionen 4.15.2 und 4.14.18 zurückportiert wurden, gehören vor allem die bislang fehlenden Patches für Spectre v1. Dazu haben die Entwickler zunächst Code im Linux-Kernel durchsucht und geändert, um die spekulative Ausführung zu unterbinden. Sie bedienten sich eines eigens dafür entwickelten Makros array_index_nospec(). Es gibt aber wohl noch einige Stellen im Linux-Code, die bearbeitet werden müssen.

Um den Linux-Kernel gegen Spectre v2 zu schützen, fuhren die Kernel-Hacker bislang zweigleisig. Einerseits verwendeten sie die selbst entwickelte Lösung Retpoline, die vor allem auf älteren CPUs weniger Ressourcen verlangt als die von Intel in seinen Microcode-Updates unter dem Oberbegriff IBC (Indirect Branch Control) integrierten Prozessor-Flags IBRS (Indirect Branch Restricted Speculation), STIBP (Single Thread Indirect Branch Predictors) und IBPB (Indirect Branch Prediction Barrier), die von Linux-Hauptentwicklern kritisiert wurden. Inzwischen setzten die Entwickler um Torvalds fast ausschließlich auf Retpoline, weil diese Lösung weniger Ressourcen benötigt.

Microcode kommt von Intel

Damit Retpoline aber auch richtig funktioniert, muss der zuständige Compiler die entsprechenden Optionen mitbringen. GCC in Version 7.3 vom 24. Januar 2018 unterstützt inzwischen die Schalter -mindirect-branch, -mindirect-branch-loop, -mfunction-return und -mindirect-branch-register, um die spekulative Ausführung zu deaktivieren.

Retpoline funktioniert aber nicht in allen Fällen. Besonders beim Wechsel zwischen virtuellen Maschinen müssen stattdessen die von Intel bereitgestellten Flags verwendet werden, etwa IBPB, die nicht nur von Linux 4.16rc1, sondern auch von 4.15.2 und 4.14.18 genutzt werden, sofern Intel einen funktionierenden Microcode bereitstellt. Seit dem 8. Februar 2018 gibt es Microcode-Updates für Sky-Lake-Prozessoren, nachdem Intel zuvor fehlerhafte Aktualisierungen wieder zurückgezogen hatte. Für CPUs der Haswell- und Broadwell-Reihe gibt es inzwischen ebenfalls Microcode von Intel.

Kernel warnt vor fehlerhaftem Ladevorgang von Microcode

Der Microcode sollte aber bereits geladen werden, bevor der Linux-Kernel startet, sonst könnte unter Umständen IBC nicht korrekt implementiert werden. Ist das der Fall, gibt der Kernel jetzt in den Startmeldungen Dmesg eine entsprechende Warnung aus. Zudem darf der Microcode nicht auf der schwarzen Liste stehen, auf der als problematisch eingestufte Versionen landen. Diese Liste hat in den vergangenen Wochen mehrere Änderungen erfahren, weil Intel teils unzureichende oder widersprüchliche Informationen lieferte.

Gegen Meltdown gibt es bereits seit Anfang des Jahres die Patches namens Page Table Isolation (PTI), die zwischenzeitlich aber noch verfeinert worden sind und inzwischen auch für x86-Systeme in der 32-Bit-Version umgesetzt wurden. Bis alle Distributionen diese Patches einpflegen und zur Verfügung stellen, wird aber noch einige Zeit vergehen. Nach wie vor kann mit den Befehlen cat /sys/devices/system/cpu/vulnerabilities/spectre_v1, cat /sys/devices/system/cpu/vulnerabilities/spectre_v2 und cat /sys/devices/system/cpu/vulnerabilities/meltdown geprüft werden, ob ein System sicher ist oder nicht. Nebenbei haben die Entwickler Process Context Identifiers (PCID) für Gastsysteme in Microsofts Virtualisierungslösung Hyper-V umgesetzt und damit die Leistungseinbußen durch die Meltdown-Patches zumindest teilweise aufgefangen.

Für IBMs Systeme Z s390 gibt es mit Expolines ebenfalls Patches gegen Spectre v2 und die Funktion array_index_mask_nospec, die gegen Spectre v1 schützen soll. Und auch für ARMs 64-Bit-Systeme gibt es inzwischen Patches für alle drei Schwachstellen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Jenseits von Spectre und Meltdown 
  1. 1
  2. 2
  3. 3
  4.  


Phantom 03. Apr 2018

Bei Samsung seit Android 6 (bei einigen Geräten ab 7)

Baron Münchhausen. 03. Apr 2018

Ich bin guter hoffnung, dass bis ich windows 7 problematisch wird ich komplett auf linux...

ceysin 03. Apr 2018

Hat da jemand Infos darüber? Würde mich endlich freuen wenns genauso wie bei Windows die...



Aktuell auf der Startseite von Golem.de
Discounter
Netto bringt Balkonkraftwerk mit 820 Watt Peak

Netto hat ein Balkonkraftwerk mit 820 Watt (Peak) im Angebot, das direkt an eine Steckdose angeschlossen werden kann und die Stromrechnung reduzieren soll.

Discounter: Netto bringt Balkonkraftwerk mit 820 Watt Peak
Artikel
  1. OpenAI: ChatGPT-Firma lässt Programmierer die KI trainieren
    OpenAI
    ChatGPT-Firma lässt Programmierer die KI trainieren

    OpenAI, das Unternehmen hinter ChatGPT, hat Hunderte von Freiberuflern aus Schwellenländern zum Trainieren von Programmierfähigkeiten der KI eingesetzt.

  2. Arbeit im Support: Von der Kunst, Menschen und Technik zu jonglieren
    Arbeit im Support
    Von der Kunst, Menschen und Technik zu jonglieren

    Geht nicht, gibt's oft - und dann klingelt das Telefon beim Support. Das Spektrum der Probleme ist gewaltig und die Ansprüche an einen guten Support auch. Ein Leitfaden für (angehende) Supportmitarbeiter.
    Ein Ratgebertext von Lutz Olav Däumling

  3. Raumfahrtkonzept: Schnellere Weltraumreisen durch Pellet-Strahlenantrieb
    Raumfahrtkonzept
    Schnellere Weltraumreisen durch Pellet-Strahlenantrieb

    Die Nasa fördert innovative Konzepte für die Raumfahrt. Darunter eines, dass Weltraumreisen viel schneller machen soll.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Samsung 980 PRO 1TB Heatsink 111€ • Patriot Viper VPN100 2TB 123,89€ • Corsair Ironclaw RGB Wireless 54€ • Alternate: Weekend Sale • WSV bei MediaMarkt • MindStar: XFX RX 6950 XT 799€, MSI RTX 4090 1.889€ • Epos Sennheiser Game One -55% • RAM-/Graka-Preisrutsch [Werbung]
    •  /