CVE-2023-53531
Gravedad CVSS v3.1:
MEDIA
Tipo:
CWE-476
Desreferencia a puntero nulo (NULL)
Fecha de publicación:
01/10/2025
Última modificación:
23/01/2026
Descripción
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
null_blk: fix poll request timeout handling<br />
<br />
When doing io_uring benchmark on /dev/nullb0, it&#39;s easy to crash the<br />
kernel if poll requests timeout triggered, as reported by David. [1]<br />
<br />
BUG: kernel NULL pointer dereference, address: 0000000000000008<br />
Workqueue: kblockd blk_mq_timeout_work<br />
RIP: 0010:null_timeout_rq+0x4e/0x91<br />
Call Trace:<br />
? null_timeout_rq+0x4e/0x91<br />
blk_mq_handle_expired+0x31/0x4b<br />
bt_iter+0x68/0x84<br />
? bt_tags_iter+0x81/0x81<br />
__sbitmap_for_each_set.constprop.0+0xb0/0xf2<br />
? __blk_mq_complete_request_remote+0xf/0xf<br />
bt_for_each+0x46/0x64<br />
? __blk_mq_complete_request_remote+0xf/0xf<br />
? percpu_ref_get_many+0xc/0x2a<br />
blk_mq_queue_tag_busy_iter+0x14d/0x18e<br />
blk_mq_timeout_work+0x95/0x127<br />
process_one_work+0x185/0x263<br />
worker_thread+0x1b5/0x227<br />
<br />
This is indeed a race problem between null_timeout_rq() and null_poll().<br />
<br />
null_poll() null_timeout_rq()<br />
spin_lock(&nq->poll_lock)<br />
list_splice_init(&nq->poll_list, &list)<br />
spin_unlock(&nq->poll_lock)<br />
<br />
while (!list_empty(&list))<br />
req = list_first_entry()<br />
list_del_init()<br />
...<br />
blk_mq_add_to_batch()<br />
// req->rq_next = NULL<br />
spin_lock(&nq->poll_lock)<br />
<br />
// rq->queuelist->next == NULL<br />
list_del_init(&rq->queuelist)<br />
<br />
spin_unlock(&nq->poll_lock)<br />
<br />
Fix these problems by setting requests state to MQ_RQ_COMPLETE under<br />
nq->poll_lock protection, in which null_timeout_rq() can safely detect<br />
this race and early return.<br />
<br />
Note this patch just fix the kernel panic when request timeout happen.<br />
<br />
[1] https://lore.kernel.org/all/3893581.1691785261@warthog.procyon.org.uk/
Impacto
Puntuación base 3.x
5.50
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (incluyendo) | 6.1.54 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (incluyendo) | 6.5.4 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página



