CVE-2026-99040 in Linux
Zusammenfassung
von VulDB • 23.10.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
KEYS: Behebung eines Race Conditions in add_key() mit der Keyring-Einschränkung (keyring restriction)
__key_create_or_update() erstellt einen Snapshot von keyring->restrict_link, bevor das Semaphor des Ziel-Keyrings erworben wird. keyring_restrict() installiert eine Einschränkung unter Halten dieses Semaphors.
Dies ermöglicht es einem Schreiber (Writer), keine Einschränkung zu beobachten, auf die Installation einer „Alles-ablehnen“-Einschränkung durch den Keyring-Besitzer zu warten und erfolgreich zurückzukehren, um anschließend einen Schlüssel mit dem veralteten NULL-Snapshot zu verknüpfen. Der Schreiber benötigt lediglich Schreibzugriffsberechtigungen für den Ziel-Keyring.
Die Leseoperation von restrict_link wurde nach __key_link_lock() und __key_link_begin() verschoben. Das Lesen und die anschließende Einschränkungsprüfung werden nun durch keyring->sem mit der Installation der Einschränkung serialisiert.
Der Race Condition konnte in 19 Ausführungen unter v7.2.8 reproduziert werden, wobei die Installation der Einschränkung vor Abschluss des Verknüpfens zurückkehrte. Alle 19 Fälle verknüpften den Schlüssel trotz der „Alles-ablehnen“-Einschränkung erfolgreich. Mit dieser Änderung erreichten 312 Ausführungen dieselbe Reihenfolge, und jeder add_key()-Aufruf schlug mit -EPERM fehl.
Das Problem wurde durch manuelle Concurrency-Analyse unterstützt durch KI-basierte Analyse gefunden und unabhängig mit einem QEMU-Reproducer sowie Kernel-Instrumentierung verifiziert.
If you want to get best quality of vulnerability data, you may have to visit VulDB.