CVE-2022-48649 in Linux
Zusammenfassung
von VulDB • 31.05.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
mm/slab_common: Behebung eines möglichen doppelten Freigabefehlers (double free) von kmem_cache
Bei der Durchführung des slub_debug-Tests verursachte der kunit-Testfall 'test_memcache_typesafe_by_rcu' von kfence einen Use-After-Free-Fehler:
BUG: KASAN: use-after-free in kobject_del+0x14/0x30 Lesezugriff auf Größe 8 an Adresse ffff888007679090 durch Task kunit_try_catch/261
CPU: 1 PID: 261 Comm: kunit_try_catch Tainted: G B N 6.0.0-rc5-next-20220916 #17 Hardwarename: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014 Call-Trace: dump_stack_lvl+0x34/0x48 print_address_description.constprop.0+0x87/0x2a5 print_report+0x103/0x1ed kasan_report+0xb7/0x140 kobject_del+0x14/0x30 kmem_cache_destroy+0x130/0x170 test_exit+0x1a/0x30 kunit_try_run_case+0xad/0xc0 kunit_generic_run_threadfn_adapter+0x26/0x50 kthread+0x17b/0x1b0
Die Ursache liegt in kmem_cache_destroy():
kmem_cache_destroy Sperre/Mutex erwerben shutdown_cache schedule_work(kmem_cache_release) (wenn RCU-Flag gesetzt) Sperre/Mutex freigeben kmem_cache_release (wenn RCU-Flag nicht gesetzt)
Zu bestimmten Zeitpunkten kann die geplante Arbeit vor der nächsten Überprüfung des RCU-Flags ausgeführt werden, was zu einem falschen Wert führt und einen doppelten Aufruf von kmem_cache_release() zur Folge hat.
Die Behebung erfolgt durch Zwischenspeichern des RCU-Flags im geschützten Bereich, ähnlich wie bei 'refcnt'.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.