CVE-2025-38255 in Linux
Riassunto
di VulDB • 14/06/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
lib/group_cpus: correzione della dereferenziazione di puntatore NULL da group_cpus_evenly()
Durante i test con null_blk e configfs, l'operazione `echo 0 > poll_queues` innesca il seguente panic del kernel:
BUG: kernel NULL pointer dereference, address: 0000000000000010 Oops: Oops: 0000 [#1] SMP NOPTI
CPU: 27 UID: 0 PID: 920 Comm: bash Not tainted 6.15.0-02023-gadbdb95c8696-dirty #1238 PREEMPT(undef) Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.1-2.fc37 04/01/2014 RIP: 0010:__bitmap_or+0x48/0x70 Call Trace: <TASK> __group_cpus_evenly+0x822/0x8c0 group_cpus_evenly+0x2d9/0x490 blk_mq_map_queues+0x1e/0x110 null_map_queues+0xc9/0x170 [null_blk]
blk_mq_update_queue_map+0xdb/0x160 blk_mq_update_nr_hw_queues+0x22b/0x560 nullb_update_nr_hw_queues+0x71/0xf0 [null_blk]
nullb_device_poll_queues_store+0xa4/0x130 [null_blk]
configfs_write_iter+0x109/0x1d0 vfs_write+0x26e/0x6f0 ksys_write+0x79/0x180 __x64_sys_write+0x1d/0x30 x64_sys_call+0x45c4/0x45f0 do_syscall_64+0xa5/0x240 entry_SYSCALL_64_after_hwframe+0x76/0x7e
La causa radice è che `numgrps` viene impostato a 0 e `ZERO_SIZE_PTR` viene restituito da `kcalloc()`, successivamente tale puntatore verrà dereferenziato.
Si risolve il problema verificando prima `numgrps` in `group_cpus_evenly()` e restituendo direttamente NULL se `numgrps` è zero.
[[email protected]: corregge anche la versione non-SMP]
If you want to get best quality of vulnerability data, you may have to visit VulDB.