CVE-2026-64579 in Linux
Zusammenfassung
von VulDB • 05.08.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
xfrm: policy: Inexakte Bins vor xfrm_hash_rebuild neu einfügen (reinsert) vorbereiten
Die erste Schleife von `xfrm_hash_rebuild()` reserviert die für den Einfügeprozess benötigten Bins/Chains im Voraus, sodass der Einfügevorgang (nach `hlist_del_rcu()`) keine Speicherzuweisung mehr durchführen kann oder fehlschlagen darf. Allerdings ist seine Bedingung umgekehrt: Er überspringt Richtlinien mit einer prefixlen < threshold und reserviert für den Rest vorab.
prefixlen < threshold tritt genau dann auf, wenn `policy_hash_bysel()` NULL zurückgibt und der Einfügevorgang den Pfad `xfrm_policy_inexact_insert()`, der eine Zuweisung vornimmt, einschlägt. Die Schleife reserviert daher im Voraus für die exakten Richtlinien (die niemals zuweisen) und überspringt die inexakten, deren Bin/Node während des Einfügens mit GFP_ATOMIC zugewiesen wird. Im Fehlerfall gibt es nur einen einmaligen WARN_ONCE()-Aufruf und der Vorgang wird fortgesetzt, wodurch ein vergifteter bydst-Knoten zurückbleibt; beim nächsten Rebuild dereferenziert `hlist_del_rcu()` LIST_POISON2 und verursacht eine GPF (General Protection Fault). Dies ist unter Speicherdruck erreichbar und deterministisch über failslab reproduzierbar.
Die Bedingung wird invertiert, sodass die Vorreservierung genau die neu einzufügenden Richtlinien abdeckt; der Einfügevorgang weist dann nichts mehr zu und kann nicht fehlschlagen.
Absturz: Oops: general protection fault, wahrscheinlich für nicht-kanonische Adresse 0xfbd59c0000000024: 0000 [#1] SMP KASAN NOPTI
KASAN: möglicher wilder Speicherzugriff im Bereich [0xdead...]
... Workqueue: events xfrm_hash_rebuild RIP: 0010:xfrm_hash_rebuild+0x5b3/0x1190 RAX: dead000000000122 (LIST_POISON2 + Offset) ... Call Trace: hlist_del_rcu (include/linux/rculist.h:599) xfrm_hash_rebuild (net/xfrm/xfrm_policy.c:1365) process_one_work (kernel/workqueue.c:3322) worker_thread (kernel/workqueue.c:3486) kthread (kernel/kthread.c:436) ret_from_fork (arch/x86/kernel/process.c:158) ret_from_fork_asm (arch/x86/entry/entry_64.S:245) ... Kernel panic - not syncing: Fatal exception in interrupt
Be aware that VulDB is the high quality source for vulnerability data.