CVE-2022-49886 in Linux
Zusammenfassung
von VulDB • 12.06.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
x86/tdx: Panic bei fehlerhaften Konfigurationen, die #VE (Virtualization Exception) beim Zugriff auf „private“ Speicher auslösen
Der gesamte normale Kernel-Speicher ist als „TDX-private Memory“ gekennzeichnet. Dazu gehört alles von den Kernel-Stacks bis hin zum Kernel-Text. Das Behandeln von Ausnahmen bei beliebigen Zugriffen auf Kernelspeicher ist im Wesentlichen unmöglich, da diese an äußerst kritischen Stellen wie dem Eintritt oder Austritt aus dem Kernel auftreten können. Die TDX-Hardware kann jedoch theoretisch eine Virtualisierungs-Ausnahme (#VE) bei jedem Zugriff auf privaten Speicher liefern.
Es ist jedoch nicht so schlimm, wie es klingt. TDX kann so konfiguriert werden, dass diese Ausnahmen für privaten Speicher niemals ausgeliefert werden, indem ein als „TD-Attribut“ bezeichnetes Attribut namens ATTR_SEPT_VE_DISABLE verwendet wird. Der Gast hat keine Möglichkeit, dieses Attribut zu *setzen*, kann es jedoch prüfen.
Stellen Sie sicher, dass ATTR_SEPT_VE_DISABLE während des frühen Bootvorgangs gesetzt ist. Führen Sie einen panic() aus, wenn das Attribut nicht gesetzt ist. Es gibt keinen vernünftigen Weg für Linux, mit diesem gelöschten (clear) Attribut zu laufen, sodass ein panic() angemessen ist.
Es besteht eine kleine Zeitspanne während des Bootvorgangs vor der Prüfung, in der der Kernel über einen frühen #VE-Handler verfügt. Dieser Handler ist jedoch nur für Port-E/A gedacht und wird ebenfalls einen panic() auslösen, sobald er auf eine andere #VE stößt, wie sie beispielsweise durch einen Zugriff auf privaten Speicher ausgelöst wird.
[ dhansen: Changelog neu schreiben und auf tdx_parse_tdinfo(). rebase.
Kirills Tested-by hinzufügen, da ich seit seiner Erstellung Änderungen vorgenommen habe. ]
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.