Abo
  • IT-Karriere:

Foreshadow/L1TF: Intel-CPUs ermöglichten unberechtigtes Auslesen von Speicher

Die spekulative Ausführung von Code führt erneut zu einer Sicherheitslücke auf Intel-Prozessoren. Mit Foreshadow können Prozesse über den Level-1-Cache unberechtigt Speicher auslesen. Besonders kritisch ist das in virtualisierten Umgebungen.

Artikel veröffentlicht am , Hanno Böck
Foreshadow/L1TF: Intel-CPUs ermöglichten unberechtigtes Auslesen von Speicher
(Bild: Foreshadow-Team)

Die Welle an Sicherheitslücken in Prozessoren durch die spekulative Codeausführung scheint kein Ende zu nehmen. Unter dem Namen Foreshadow oder L1TF wurde eine Sicherheitslücke veröffentlicht, die in vielen Aspekten dem Meltdown-Bug ähnelt. Betroffen sind nur Intel-Prozessoren, die Auswirkungen treffen in erster Linie Anbieter, die Kunden auf virtuellen Systemen hosten.

Stellenmarkt
  1. BSH Hausgeräte GmbH, Giengen
  2. S&G Automobil AG, Karlsruhe-Knielingen

Die Ursache liegt in der Verwaltung sogenannter Pagetables. Alle modernen Computersysteme verwenden eine virtuelle Speicherverwaltung, das bedeutet, dass die von Programmen genutzten Speicheradressen nicht den realen Adressen im Arbeitsspeicher entsprechen. Im Pagetable werden diese Adresszuweisungen verwaltet.

Intel-CPUs interpretieren ungültige Daten bei spekulativer Codeausführung

Wenn ein virtueller Speicherbereich auf einen Swap-Speicher auf der Festplatte ausgelagert wird, ist ein Großteil der Informationen im Pagetable ungenutzt. Daher kann das Betriebssystem diese Bereiche selbst mit Informationen füllen, die CPU sollte diese ignorieren. Insbesondere die Speicheradresse ist in diesem Fall ungültig, und der Prozessor sollte darauf nicht zugreifen.

Das Problem: Intel beachtet dies offenbar nicht, wenn es um die sogenannte spekulative Codeausführung geht. Alle modernen CPUs führen Code parallel aus und starten Code bereits im Voraus, dessen Ergebnis dann im Zweifel verworfen wird. Diese spekulative Codeausführung ist auch die Grundlage der Angriffe Meltdown und Spectre sowie zahlreicher inzwischen bekannter Varianten davon.

Mittels der spekulativen Codeausführung kann man Speicheradressen in den Cache des Prozessors laden, auf die der jeweilige Prozess eigentlich keinen Zugriff haben sollte. Dann können mit denselben Tricks, die bei Meltdown und Spectre Anwendung fanden, diese Daten ausgelesen werden.

Dieser Angriff ermöglicht es Nutzerprozessen, potentiell unberechtigt Speicher auszulesen. Allerdings ist dieser Angriff nicht sehr gezielt, da ein Nutzer keinen direkten Einfluss auf den Inhalt des Pagetables hat. Gravierender ist das in virtualisierten Umgebungen. Ein Betriebssystem, das in einer virtuellen Maschine läuft, kann gezielt Pagetable-Einträge erstellen, um auf andere Speicherbereiche zuzugreifen. Damit kann man Speicher des Host-Systems und anderer Gastsysteme auslesen.

Ebenfalls betroffen ist Intels Sicherheitstechnik SGX. Diese stellt theoretisch eine Art sichere Enklave dar, in der nur signierter Code laufen soll. Auch die kryptographischen Schlüssel von SGX können ausgelesen werden. Die praktische Relevanz dürfte hier allerdings gering sein, da nur wenige Anwendungen SGX nutzen.

Die neue CPU-Lücke wurde unabhängig voneinander von zwei Teams gefunden. Interessant dabei: Eines der Teams, Forscher der KU Leuven, entdeckten Foreshadow offenbar bereits Anfang Januar, bevor Meltdown und Spectre bekannt waren. Auf der zur Zeit stattfindenden Usenix-Konferenz werden die Details präsentiert.

Updates stehen bereit, verhindern aber nicht alle Angriffe

Das unberechtigte Auslesen von Speicher durch Nutzerprozesse lässt sich durch relativ simple Änderungen am Betriebssystem verhindern, Nutzer sollten nur baldmöglichst entsprechende Updates installieren. Diese Gegenmaßnahmen haben kaum Einfluss auf die Performance.

Beim Ausbruch aus virtualisierten Systemen ist die Situation etwas komplexer. Auch hier wurden Gegenmaßnahmen implementiert, die können jedoch in einigen Fällen durchaus signifikante Auswirkungen auf die Performance haben.

Ein Szenario, das eher schwer auszunutzen ist, betrifft die sogenannte Hyperthreading-Technik von Intel, bei der sich mehrere CPUs einen Cache teilen. Um dieses Szenario sicher zu verhindern, müsste man Hyperthreading komplett abschalten - das dürfte jedoch angesichts der Performanceeinbußen kaum jemand machen. Ähnlich wie bei einigen Spectre-Varianten wird man wohl auch hier vorerst damit leben müssen, dass es keinen perfekten Fix gibt.

Updates von Microsoft und verschiedenen Linux-Distributionen stehen bereit (Ubuntu, Red Hat, Suse). Der offizielle Linux-Kernel wird den Fix mit der Version 4.18.1 erhalten. Von Intel selbst gibt es Microcode-Updates, die betreffen aber nur SGX, was für die meisten Nutzer irrelevant ist.



Anzeige
Top-Angebote
  1. 139€
  2. (u. a. AMD Ryzen + ASUS-X570-Mainboard kaufen und bis zu 125€ sparen)
  3. (u. a. Hunt Showdown für 29,99€, Forza Motorsport 7 für 28,49€ und Hitman 2 für 14,49€)
  4. (heute u. a. Xbox One Bundles mit FIFA 20)

Akaruso 16. Aug 2018

Die Frage ist, wie in diesem Fall Mangel definiert ist. Das Recht auf Beseitigung bezieht...

Akaruso 16. Aug 2018

Stimmt, war etwas unbedacht von mir.

Aluz 16. Aug 2018

Ja aber leider kannst du ja als Benutzer nicht wissen welches Script nun gutartig und...

bionade24 15. Aug 2018

kwT

Hotohori 15. Aug 2018

Wenn du meinst das ein 6Kerner mit 12Threads @4,7Ghz (mit OC locker 4,9Ghz, mit köpfen 5...


Folgen Sie uns
       


Elektro-SUV Nio ES 8 Probe gefahren

Der ES8 ist ein SUV des chinesischen Herstellers Nio. Wir sind damit über die Alpen gefahren.

Elektro-SUV Nio ES 8 Probe gefahren Video aufrufen
Geothermie: Wer auf dem Vulkan wohnt, muss nicht so tief bohren
Geothermie
Wer auf dem Vulkan wohnt, muss nicht so tief bohren

Die hohen Erwartungen haben Geothermie-Kraftwerke bisher nicht erfüllt. Weltweit setzen trotzdem immer mehr Länder auf die Wärme aus der Tiefe - nicht alle haben es dabei leicht.
Ein Bericht von Jan Oliver Löfken

  1. Nachhaltigkeit Jute im Plastik
  2. Nachhaltigkeit Bauen fürs Klima
  3. Autos Elektro, Brennstoffzelle oder Diesel?

Dick Pics: Penis oder kein Penis?
Dick Pics
Penis oder kein Penis?

Eine Studentin arbeitet an einer Software, die automatisch Bilder von Penissen aus Direktnachrichten filtert. Wer mithelfen will, kann ihr Testobjekte schicken.
Ein Bericht von Fabian A. Scherschel

  1. Medienbericht US-Regierung will soziale Netzwerke stärker überwachen
  2. Soziales Netzwerk Openbook heißt jetzt Okuna
  3. EU-Wahl Spitzenkandidat Manfred Weber für Klarnamenpflicht im Netz

Programmiersprache: Java 13 bringt mehrzeilige Strings mit Textblöcken
Programmiersprache
Java 13 bringt mehrzeilige Strings mit Textblöcken

Die Sprache Java steht im Ruf, eher umständlich zu sein. Die Entwickler versuchen aber, viel daran zu ändern. Mit der nun verfügbaren Version Java 13 gibt es etwa Textblöcke, mit denen sich endlich angenehm und ohne unnötige Umstände mehrzeilige Strings definieren lassen.
Von Nicolai Parlog

  1. Java Offenes Enterprise-Java Jakarta EE 8 erschienen
  2. Microsoft SQL-Server 2019 bringt kostenlosen Java-Support
  3. Paketmanagement Java-Dependencies über unsichere HTTP-Downloads

    •  /