Abo
  • Services:

IBRS und Retpoline: Linux-Entwickler diskutieren weiter über Spectre-Paches

Nach ausfälligen Kommentaren von Linux-Chefentwickler Linus Torvalds erklärt ein Amazon-Entwickler ausführlich den geplanten Verwendungszweck der verschiedenen Patches gegen den Spectre-Angriff. Einigkeit über das Vorgehen herrscht aber immer noch nicht.

Artikel veröffentlicht am , Kristian Kißling/Linux Magazin
Wie weiter mit den Spectre-Pachtes? Die Kernel-Community ist sich da noch uneins.
Wie weiter mit den Spectre-Pachtes? Die Kernel-Community ist sich da noch uneins. (Bild: Liam Quinn, flickr.com/CC-BY-SA 2.0)

Nachdem sich Linux-Erfinder und -Chefentwickler Linus Torvalds über die derzeit verfügbaren Patches gegen eine Variante des Spectre-Angriffs aufgeregt hat, erklärt der ehemalige Intel-Entwickler und nun bei Amazon angestellte Kernel-Hacker David Woodhouse, was die drei neuen Funktionen bewirken, die über Microcode-Updates bereitgestellt werden, und wo die Alternative Retpoline genutzt werden kann.

Inhalt:
  1. IBRS und Retpoline: Linux-Entwickler diskutieren weiter über Spectre-Paches
  2. Retpoline für bessere Geschwindigkeit

Mit den Microcode-Updates sei wohl niemand wirklich glücklich, stellt Woodhouse zunächst fest, sie seien aber für aktuelle Hardware die einzige Möglichkeit, da man hier lediglich nachträgliche Änderungen am Microcode vornehmen könne. Also sei man auf diese Möglichkeiten beschränkt.

Die Funktionen sind alle dazu gedacht, das Ausnutzen der Spectre-2-Lücke (Branch Target Injection, CVE-2017-5715) zu verhindern. Über diese lässt sich die CPU dazu bewegen, das Ziel einer indirekten Codeausführung zu verfälschen, um so Zugriff auf privilegierten Speicher zu erhalten.

Drei Microcode-Funktionen

Funktion Nummer eins nennt sich Indirect Branch Prediction Barrier (IBPB). Die Barriere soll im Zuge von Kontextwechseln verhindern, dass der Prozessor bereits bekannte Branch Targets verwendet. Die Funktion ist laut Woodhouse recht CPU-intensiv und benötigt rund 4.000 CPU-Zyklen.

Stellenmarkt
  1. Gesellschaft für Anlagen- und Reaktorsicherheit (GRS) gGmbH, Köln
  2. ip-fabric GmbH, München

Eine zweite Funktion trägt den Namen Single Thread Indirect Branch Predictors (STIBP). Sie hält Zwillingsthreads beim Hyperthreading davon ab, den Branch-Vorhersagen des anderen Zwillings zu folgen. Sinnvoll sei die Funktion, wenn unzusammenhängende Prozesse im Userspace laufen. Oder wenn verschiedene VM-Gäste beim Hyperthreading Zwillingsprozesse verwenden.

Die dritte Funktion ist etwas komplexer. Die Indirect Branch Restricted Speculation (IBRS) wird gesetzt, sobald die CPU in einen privilegierten Modus fällt. In diesem Fall sorgt der Code dafür, dass die CPU die in einem weniger privilegierten Modus erlernten Ziele für den Codezweig vergisst.

Speziell gegen IBRS richtete sich auch die Kritik von Linus Torvalds. Woodhouse räumt ein, dass IBRS bei jedem Eintritt in den Kernelspace gesetzt werden müsse, was es nicht nur teuer mache, sondern zugleich ein "mieser Hack" sei. Woodhouse hält ihn allerdings für alternativlos.

Da die CPU trotz IBRS nicht zwischen verschiedenen Userspace-Prozessen und Gast-VMs entscheiden könne, bräuchte man auch die IBP-Barriere für Kontextwechsel und Wechsel beim Beenden und Speichern einer Gast-VM (vmexit). Während die VMs laufen, benötige man zudem eventuell STIBP. Alles zusammen wirke sich recht negativ auf die Performance aus.

Retpoline für bessere Geschwindigkeit 
  1. 1
  2. 2
  3.  


Anzeige
Spiele-Angebote
  1. (-40%) 11,99€
  2. 4,99€
  3. 4,99€

nille02 25. Jan 2018

AMD ist nicht mal im Ansatz so wie Intel betroffen, auch wenn Intel gerne ihren Dreck...

Icestorm 25. Jan 2018

Um die Gefahr durch gemeinsam genutzten Adressraum grundsätzlich zu beheben (wer wei...

GodFuture 25. Jan 2018

Herr Gruß: Aufmerksamkeit auf "Kaiser" schürte den Verdacht auf Sicherheitslücke. Haben...

nille02 24. Jan 2018

Nur stellt sich Intel hin und behauptet das Kind wäre schon immer im Brunnen und die...

short reader 24. Jan 2018

Spring falls but not a CPU. So gesehen stimme ich LT zu, denn um in einen "privilegierten...


Folgen Sie uns
       


Microsoft Hololens 2 - Hands on (MWC 2019)

Die Hololens 2 ist Microsofts zweites AR-Headset. Im ersten Kurztest von Golem.de überzeugt das Gerät vor allem durch das merklich größere Sichtfeld.

Microsoft Hololens 2 - Hands on (MWC 2019) Video aufrufen
Energie: Warum Japan auf Wasserstoff setzt
Energie
Warum Japan auf Wasserstoff setzt

Saubere Luft und Unabhängigkeit von Ölimporten: Mit der Umstellung der Wirtschaft auf den Energieträger Wasserstoff will die japanische Regierung gleich zwei große politische Probleme lösen. Das Konzept erscheint attraktiv, hat aber auch entscheidende Nachteile.
Eine Analyse von Werner Pluta


    ANC-Kopfhörer im Test: Mit Ach und Krach
    ANC-Kopfhörer im Test
    Mit Ach und Krach

    Der neue ANC-Kopfhörer von Audio Technica ist in einem Bereich sogar besser als unsere derzeitigen Favoriten von Sony und Bose - ausgerechnet in der entscheidenden Disziplin schwächelt er aber.
    Ein Test von Ingo Pakalski

    1. Surface Headphones Microsofts erster ANC-Bluetooth-Kopfhörer kostet 380 Euro
    2. Sonys WH-1000XM3 Oberklasse-ANC-Kopfhörer hat Kälteprobleme
    3. Sony-Kopfhörer WH-1000XM3 im Test Eine Oase der Stille oder des puren Musikgenusses

    Linux: Wer sind die Debian-Bewerber?
    Linux
    Wer sind die Debian-Bewerber?

    Nach schleppendem Beginn stellen sich vier Kandidaten als Debian Project Leader zur Wahl. Zwei von ihnen kommen aus dem deutschsprachigen Raum und stellen Golem.de ihre Ziele vor.
    Von Fabian A. Scherschel

    1. Betriebssystem Debian-Entwickler tritt wegen veralteter Werkzeuge zurück
    2. Linux Debian-Update verhindert Start auf ARM-Geräten
    3. Apt Bug in Debian-Paketmanager feuert Debatte über HTTPS an

      •  /