Intel-Bug zwingt zu Kernelanpassungen bei Linux und Windows

In Intel-Prozessoren aus den letzten zehn Jahren steckt allem Anschein nach ein schwerwiegender Bug, der Anbieter von Betriebssystemen, die x86-Prozessoren unterstützen, zum Handeln zwingt. Unklar ist derzeit zwar, wie die Sicherheitslücke im Detail beschaffen ist, es scheint allerdings möglich zu sein, das klassische Nutzer-Anwendungen - von Datenbank-Programmen bis hin zu JavaScript im Webbrowser - in einem begrenzte Umfang das Layout wie auch den Inhalt des geschützen Speicherbereich des Kernels auslesen können.

Mit dem Patch der aktuell für Linux wie auch Windows entwickelt wird (von Apple gibt es derzeit keine Stellungnahme, allerdings dürfte die Sicherheitslücke in den Intel-Prozessoren auch hier eine vergleichbare Nacharbeit erfordern), soll der Speicher des Kernels vollständig von den Prozessen des Nutzers getrennt werden, denn derzeit mit jedem Prozess, der etwa in eine Datei schreibt oder eine Netzwerkverbindung aufruft, die Kontrolle kurzzeitig vom Nutzer auf den Kernel übertragen werden.

Um diese Transformationen so schnell und effizient abwickeln zu können, ist der Kernel stets in allen virtuellen Adressräumen präsent, auch wenn er für die einzelnen Anwendungen unsichtbar bleibt. Wird der Kernel benötigt, wird von dem jeweiligen Prozess ein Systemaufruf initiiert und es findet ein Wechsel in den Kernelmodus statt. Ist die Aktion abgeschlossen, wird in den Anwendermodus zurückgewechselt. Der Code und die Daten des Kernels sind unsichtbar, die Ergebnisse bleiben jedoch in den Seitentabellen erhalten.

Mit der "Kernel Page Table Isolation" - oder KPTI - soll an dieser Stelle der Zugriff eines Prozesses bzw. des dahinter stehenden Nutzers auf den Kernel unterbunden werden, um ein Ausnutzen des Intel-Fehlers, mit dem der ursprüngliche Weg untergraben wurde, zu verhindern. Die notwendige Kernel-Änderung ist dabei nicht nur für die Entwickler der Betriebssysteme vergleichsweise aufwendig, sondern sie führt auch dazu, dass die effizienteste Lösung nicht mehr genutzt werden kann. Nach dem Patch wird mit dem Systemaufruf nicht mehr auf die Seitentablle des Prozesses, sondern auf eine Kopie dieser zugegriffen, mit der dem jeweiligen Prozess nur noch der eigene Adressraum zur Verfügung gestellt wird. Der Wechsel zwischen den Tabellen, der mit jedem Systemaufruf oder Interrupt geschieht, bedeutet, dass die Leistung des gesamten Systems sinkt, das nun mehr Energie für eigentlich überflüssige Zwischenschritte aufwenden muss.

Wie groß diese Leistungseinbußen ausfallen, ist im Moment noch Gegenstand von Spekulationen. Die Schätzungen bewegen sich zwischen fünf und dreißig Prozent, wobei die Einbußen letztlich auch vom jeweiligen Modell abhängen.

AMD hat übringens bereits verkündet nicht von dieser Sicherheitslücke betroffen zu sein.

Erstelle einen neuen Thread im News-Forum über dieses Thema
Dieser Thread ist für Kommentare geschlossen
10 Kommentare
Im Forum kommentieren
    Dein Kommentar
  • amd64
    Wirklich ein fiese Geschichte, die für reichlich Arbeit bei allen Beteiligten/Betroffenen sorgt.
  • drno
    Ist da vielleicht ein wirklich dicker Hund im Busch? Und wieso wird denn am AMD Prozzi getestet?
  • moeppel
    Das brennt gewaltig und wird nicht schön für Intel. Vor allem dann nicht, wenn sie es nicht ohne Softwarelösung geradeziehen können, denn eine Hardwarerevision wird Wochen/Monate auch sich warten lassen. Meines Verständis nach handelt es sich letztlich um einen Bug, der uneingeschränkte Privileg-Eskalation auf Anwenderseite ermöglicht.

    Kurz gesagt: Polen ist offen, allem voran auf Kisten, die viele VMs hosten.

    Sollten tatsächlich permanente 20-30% Performanceeinbußen eintreten, wird auch sicherlich Klagen hageln.

    AMD dürfte im Moment aus dem Grinsen nicht rauskommen.

    Bleibt nur noch, allen Operatoren und System Admins mein Beileid auszusprechen ;)