CVE-2024-38306 in Linuxinfo

Zusammenfassung

von VulDB • 12.06.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

btrfs: Schutz von folio::private beim Anhängen von extent_buffer-Folios an Folios

[FEHLER]
Seit Version 6.8 wurden vereinzelt Kernel-Crashes durch verschiedene Benutzer gemeldet. Der gemeinsame Nenner sind Fehlermeldungen mit einem ungültigen Seitenstatus (Bad page state), wie diese:

BUG: Bad page state in process kswapd0 pfn:d6e840 page: refcount:0 mapcount:0 mapping:000000007512f4f2 index:0x2796c2c7c pfn:0xd6e840 aops:btree_aops ino:1 flags: 0x17ffffe0000008(uptodate|node=0|zone=2|lastcpupid=0x3fffff) page_type: 0xffffffff() raw: 0017ffffe0000008 dead000000000100 dead000000000122 ffff88826d0be4c0 raw: 00000002796c2c7c 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: non-NULL mapping

[URSACHE]
Der Commit 09e6cef19c9f („btrfs: refactor alloc_extent_buffer() to allocate-then-attach method") ändert die Reihenfolge bei der Allokation eines neuen extent_buffers.

Bisher wurde immer grab_extent_buffer() unterhalb von mapping->i_private_lock aufgerufen, um die Sicherheit bei Änderungen an folio::private (ein Zeiger auf den extent_buffer für reguläre sectorsize) zu gewährleisten.

Dies kann zur folgenden Race Condition führen:

Thread A versucht, einen extent_buffer bei bytenr X mit 4 Seiten à 4K zuzuweisen, während Thread B gleichzeitig versucht, die Seite bei X + 4K (die zweite Seite des extent_buffers bei X) freizugeben.

Thread

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Reservieren

24.06.2024

Veröffentlichung

25.06.2024

Moderieren

akzeptiert

Eintrag

VDB-269640

CPE

bereit

EPSS

0.00146

KEV

nein

Aktivitäten

very low

Quellen

Want to stay up to date on a daily basis?

Enable the mail alert feature now!