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. Projektplaner/CAD-Systembetr- euer (m/w/d)
    EMS PreCab GmbH, Papenburg
  2. Softwareentwickler (m/w/d) C#
    Bayerische Landesärztekammer, München
Detailsuche

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.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Retpoline für bessere Geschwindigkeit 
  1. 1
  2. 2
  3.  


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...



Aktuell auf der Startseite von Golem.de
Amazon Shopper Panel
Amazon zahlt für Überwachung des Smartphone-Datenverkehrs

Wer seinen gesamten Smartphone-Datenverkehr über Amazons Server leitet, wird mit einem monatlichen Gutschein dafür bezahlt.

Amazon Shopper Panel: Amazon zahlt für Überwachung des Smartphone-Datenverkehrs
Artikel
  1. Vodafone und Telekom: LTE-Ausbau in Berliner Bahntunneln dauert weitere Jahre
    Vodafone und Telekom
    LTE-Ausbau in Berliner Bahntunneln dauert weitere Jahre

    Laut Senatsverwaltung kam der Ausbau der Base-Transceiver-Station-Hotels nicht wie geplant voran. Nicht nur die Kunden von Vodafone und Telekom haben das Nachsehen.

  2. Northrop Grumman: B21 Raider als erster digitaler Bomber vorgestellt
    Northrop Grumman
    B21 Raider als erster digitaler Bomber vorgestellt

    Northrop Grumman hat mit dem B-21 Raider eine neuen Tarnkappenbomber vorgestellt. Dabei kamen agile Softwareentwicklung und digitales Engineering zum Einsatz.

  3. Soziale Netzwerke: Liken bei Hasspostings kann strafbar sein
    Soziale Netzwerke
    Liken bei Hasspostings kann strafbar sein

    Facebook-Nutzer, die nicht davor zurückschrecken, diskriminierende oder beleidigende oder Postings zu liken, sollten sich das gut überlegen. Denn das Drücken des Gefällt-mir-Buttons kann hier erhebliche rechtliche Folgen haben.
    Von Harald Büring

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 • PS5-Bundle vorbestellbar • SanDisk Extreme PRO 1TB 141,86€ • Amazon-Geräte bis -53% • Mindstar: Alphacool Eiswolf 2 AiO 360 199€, AMD-Ryzen-CPUs zu Bestpreisen • Alternate: WD_BLACK P10 2TB 76,89€ • Advent-Tagesdeals bei MediaMarkt/Saturn • Thrustmaster Ferrari GTE Wheel 87,60€ [Werbung]
    •  /