Ein Fehler in Linux 6.2 ermöglichte das Umgehen des Spectre v2-Angriffsschutzes

Verwundbarkeit

Wenn sie ausgenutzt werden, können diese Schwachstellen Angreifern den unbefugten Zugriff auf vertrauliche Informationen ermöglichen oder allgemein Probleme verursachen

Kürzlich wurden Informationen über a veröffentlicht Schwachstelle im Kernel von Linux 6.2 identifiziert (bereits aufgeführt unter CVE-2023-1998) und das auffällt, weil es so ist Deaktivieren Sie den Spectre v2-Angriffsschutz die den Zugriff auf den Speicher durch andere Prozesse ermöglichen, die auf verschiedenen SMT- oder Hyper-Threading-Threads, aber auf demselben physischen Prozessorkern ausgeführt werden.

Die Anfälligkeit ist unter anderem bemerkenswert, weil kann verwendet werden für organisieren Datenlecks zwischen Virtuelle Maschinen in Cloud-Systemen. 

Für diejenigen, die Spectre nicht kennen, sollten sie das wissen ist eine der beiden ursprünglichen CPU-Sicherheitslücken bei vorübergehender Ausführung (der andere ist Meltdown), die mikroarchitektonische Timing-Seitenkanalangriffe beinhalten. Diese betreffen moderne Mikroprozessoren, die Sprungvorhersagen und andere Formen der Spekulation durchführen.

Bei den meisten Prozessoren kann eine spekulative Ausführung, die aus einer falschen Verzweigungsvorhersage resultiert, beobachtbare Nebeneffekte hinterlassen, die private Daten offenlegen können. Wenn zum Beispiel das Muster der Speicherzugriffe, die durch eine solche spekulative Ausführung durchgeführt werden, von den privaten Daten abhängt, stellt der resultierende Zustand des Datencaches einen Seitenkanal dar, durch den ein Angreifer Informationen über die privaten Daten unter Verwendung eines Zeitangriffs extrahieren kann.

Seit der Offenlegung von Spectre und Meltdown im Januar 2018 sind mehrere Varianten und neue Arten von damit verbundenen Schwachstellen aufgetaucht.

Der Linux-Kernel ermöglicht es Userland-Prozessen, Schadensbegrenzungen zu aktivieren, indem prctl mit PR_SET_SPECULATION_CTRL aufgerufen wird, wodurch die spec-Funktion deaktiviert wird, sowie durch die Verwendung von seccomp. Wir haben festgestellt, dass der Kernel auf virtuellen Maschinen von mindestens einem großen Cloud-Anbieter den Opferprozess in einigen Fällen immer noch offen für Angriffe ließ, selbst nachdem die Spectre-BTI-Minderung mit prctl aktiviert wurde. 

In Bezug auf die Verwundbarkeit wird das erwähnt im Benutzerbereich, um sich vor Angriffen zu schützen von Gespenst, Prozesse können die Ausführung selektiv deaktivieren spekulative Anweisungen mit prctl PR_SET_SPECULATION_CTRL oder verwenden Sie seccomp-basierte Systemaufruffilterung.

Laut den Forschern, die das Problem identifiziert haben, falsche Optimierung in Kernel 6.2 hinterließ virtuelle Maschinen von mindestens einem großen Cloud-Anbieter ohne richtigen Schutz trotz der Einbeziehung des Spectre-BTI-Angriffsblockiermodus über prctl. Die Schwachstelle zeigt sich auch auf normalen Servern mit Kernel 6.2, die mit der Konfiguration „spectre_v2=ibrs“ gestartet werden.

Das Wesen der Verwundbarkeit besteht darin, die Schutzmodi zu wählen IBRS oder eIBRS, die vorgenommenen Optimierungen haben die Verwendung des STIBP-Mechanismus (Single Thread Indirect Branch Predictors) deaktiviert, der zum Blockieren von Lecks bei der Verwendung von Simultaneous Multi-Threading (SMT oder Hyper-Threading)-Technologie erforderlich ist. )

Schutz vor Leaks zwischen Threads bietet wiederum nur der eIBRS-Modus, nicht der IBRS-Modus, da bei ihm das IBRS-Bit, das vor Leaks zwischen logischen Kernen schützt, aus Performance-Gründen gelöscht wird, wenn die Kontrolle an den Space User zurückkehrt, was macht User-Space-Threads, die nicht gegen Angriffe der Klasse Spectre v2 geschützt sind.

Der Test besteht aus zwei Prozessen. Der Angreifer vergiftet ständig einen indirekten Anruf, um ihn spekulativ an eine Zieladresse umzuleiten. Der betroffene Prozess misst die falsche Vorhersagerate und versucht, den Angriff abzuschwächen, indem er PRCTL aufruft oder direkt in den MSR schreibt, indem er ein Kernelmodul verwendet, das die Lese- und Schreibvorgänge des MSR im Benutzerbereich offenlegt.

Das Problem betrifft nur den Kernel von Linux 6.2 und ist auf eine falsche Implementierung von Optimierungen zurückzuführen, die darauf ausgelegt sind, den erheblichen Overhead beim Anwenden des Schutzes gegen Spectre v2 zu reduzieren. Verletzlichkeit Es wurde im experimentellen Kernel-Zweig von Linux 6.3 behoben.

Endlich ja Sie möchten mehr darüber erfahren, Sie können die Details in der überprüfen folgenden Link


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   Deiki sagte

    Diejenigen mit dem Kernel-Parameter mitigations=off:

    Feine Herren 👌😎🔥