CVE-2025-21999 in Linuxinfo

Zusammenfassung

von VulDB • 13.06.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

proc: Behebung eines Use-After-Free (UAF) in proc_get_inode()

Behebung einer Race Condition zwischen rmmod und der Inode-Instantiierung von /proc/XXX.

Der Fehler besteht darin, dass pde->proc_ops nicht zu /proc gehört, sondern zu einem Modul. Daher ist das Dereferenzieren nach der Registrierung des /proc-Eintrags ein Fehler, es sei denn, das use_pde/unuse_pde()-Paar wurde verwendet.

Die Verwendung von use_pde/unuse_pde kann vermieden werden (2 atomare Operationen!), da pde->proc_ops sich niemals ändert. Daher können die für die Inode-Instantiierung erforderlichen Informationen vor proc_register() in der PDE selbst gespeichert und später verwendet werden, wodurch das Dereferenzieren von pde->proc_ops->... vermieden wird.

rmmod lookup sys_delete_module proc_lookup_de pde_get(de); proc_get_inode(dir->i_sb, de); mod->exit() proc_remove remove_proc_subtree proc_entry_rundown(de); free_module(mod);

if (S_ISREG(inode->i_mode)) if (de->proc_ops->proc_read_iter) --> Da das Modul bereits freigegeben wurde, wird ein UAF ausgelöst.

BUG: unable to handle page fault for address: fffffbfff80a702b PGD 817fc4067 P4D 817fc4067 PUD 817fc0067 PMD 102ef4067 PTE 0 Oops: Oops: 0000 [#1] PREEMPT SMP KASAN PTI
CPU: 26 UID: 0 PID: 2667 Comm: ls Tainted: G Hardware name: QEMU Standard PC (i440FX + PIIX, 1996) RIP: 0010:proc_get_inode+0x302/0x6e0 RSP: 0018:ffff88811c837998 EFLAGS: 00010a06 RAX: dffffc0000000000 RBX: ffffffffc0538140 RCX: 000000000000000

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Zuständig

Linux

Reservieren

29.12.2024

Veröffentlichung

03.04.2025

Moderieren

akzeptiert

Eintrag

VDB-303119

CPE

bereit

EPSS

0.00193

KEV

nein

Aktivitäten

very low

Quellen

Interested in the pricing of exploits?

See the underground prices here!