Abo
  • Services:

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. ENERCON GmbH, Aurich
  2. Dataport, verschiedene Standorte

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. (aktuell u. a. Sony 65-Zoll-TV 789€)
  2. 5,00€
  3. 49,99€ (spare 4€ zusätzlich bei Zahlung mit Paysafecard) - Release am 15.3.
  4. 39,95€

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
       


Raytracing in Metro Exodus im Test

Wir schauen uns Raytracing in Metro Exodus genauer an.

Raytracing in Metro Exodus im Test Video aufrufen
Asana-Gründer im Gespräch: Die Konkurrenz wird es schwer haben, zu uns aufzuschließen
Asana-Gründer im Gespräch
"Die Konkurrenz wird es schwer haben, zu uns aufzuschließen"

Asana ist aktuell recht erfolgreich im Bereich Business-Software - zahlreiche große Unternehmen arbeiten mit der Organisationssuite. Für Mitgründer Justin Rosenstein geht es aber nicht nur ums Geld, sondern auch um die Unternehmenskultur - nicht nur bei Asana selbst.
Ein Interview von Tobias Költzsch


    Begriffe, Architekturen, Produkte: Große Datenmengen in Echtzeit analysieren
    Begriffe, Architekturen, Produkte
    Große Datenmengen in Echtzeit analysieren

    Wer sich auch nur oberflächlich mit Big-Data und Echtzeit-Analyse beschäftigt, stößt schnell auf Begriffe und Lösungen, die sich nicht sofort erschließen. Warum brauche ich eine Nachrichten-Queue und was unterscheidet Apache Hadoop von Kafka? Welche Rolle spielt das in einer Kappa-Architektur?
    Von George Anadiotis


      Enterprise Resource Planning: Drei Gründe für das Scheitern von SAP-Projekten
      Enterprise Resource Planning
      Drei Gründe für das Scheitern von SAP-Projekten

      Projekte mit der Software von SAP? Da verdrehen viele IT-Experten die Augen. Prominente Beispiele von Lidl und Haribo aus dem vergangenen Jahr scheinen diese These zu bestätigen: Gerade SAP-Projekte laufen selten in time, in budget und in quality. Dafür gibt es Gründe - und Gegenmaßnahmen.
      Von Markus Kammermeier


          •  /