ublk: fix handling recovery & reissue in ublk_abort_queue() (Linux Linux)
En bref
- Source
- NVD
- EPSS
- EPSS 0.24 % · centile 15 ()
- État
- PUBLISHED
- Publiée
- Mise à jour
- Attribuée par
- Linux
- Statut NVD
- Modified
Description
In the Linux kernel, the following vulnerability has been resolved: ublk: fix handling recovery & reissue in ublk_abort_queue() Commit 8284066946e6 ("ublk: grab request reference when the request is handled by userspace") doesn't grab request reference in case of recovery reissue. Then the request can be requeued & re-dispatch & failed when canceling uring command. If it is one zc request, the request can be freed before io_uring returns the zc buffer back, then cause kernel panic: [ 126.773061] BUG: kernel NULL pointer dereference, address: 00000000000000c8 [ 126.773657] #PF: supervisor read access in kernel mode [ 126.774052] #PF: error_code(0x0000) - not-present page [ 126.774455] PGD 0 P4D 0 [ 126.774698] Oops: Oops: 0000 [#1] SMP NOPTI [ 126.775034] CPU: 13 UID: 0 PID: 1612 Comm: kworker/u64:55 Not tainted 6.14.0_blk+ #182 PREEMPT(full) [ 126.775676] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-1.fc39 04/01/2014 [ 126.776275] Workqueue: iou_exit io_ring_exit_work [ 126.776651] RIP: 0010:ublk_io_release+0x14/0x130 [ublk_drv] Fixes it by always grabbing request reference for aborting the request.
Faiblesses (CWE)
- CWE-476 — Déréférencement de pointeur nul
Références
- https://git.kernel.org/stable/c/ab41bf5a211fbec3a85e025658ed90a911ccb692
- https://git.kernel.org/stable/c/caa5c8a2358604f38bf0a4afaa5eacda13763067
- https://git.kernel.org/stable/c/5d34a30efac9c9c93e150130caa940c0df6053c1
- https://git.kernel.org/stable/c/0a21d259ca4d6310fdfcc0284ebbc000e66cbf70
- https://git.kernel.org/stable/c/6ee6bd5d4fce502a5b5a2ea805e9ff16e6aa890f
Scores
| Version | Score | Vecteur | Évalué par |
|---|---|---|---|
| CVSS 3.1 | MEDIUM 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H | NVD · nvd@nist.gov (Primary) |
Références européennes
- ENISA EUVD · EUVD-2025-13047
- GCVE · GCVE-0-2025-37759
Avis du CERT-FR
- CERTFR-2026-AVI-0246 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0227 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0218 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0194 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0169 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2025-AVI-0589 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2025-AVI-0559 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
Configurations affectées (CPE NVD)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.5 < 6.12.24cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.13 < 6.13.12cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.14 < 6.14.3cpe:2.3:o:linux:linux_kernel:6.15:rc1:*:*:*:*:*:*
Produits affectés
| Produit | Versions |
|---|---|
| Linux · Linux | affected 8284066946e6d9cc979566ce698fe24e7ca0b31e < ab41bf5a211fbec3a85e025658ed90a911ccb692 ; affected 8284066946e6d9cc979566ce698fe24e7ca0b31e < caa5c8a2358604f38bf0a4afaa5eacda13763067 ; affected 8284066946e6d9cc979566ce698fe24e7ca0b31e < 5d34a30efac9c9c93e150130caa940c0df6053c1 ; affected 8284066946e6d9cc979566ce698fe24e7ca0b31e < 0a21d259ca4d6310fdfcc0284ebbc000e66cbf70 ; affected 8284066946e6d9cc979566ce698fe24e7ca0b31e < 6ee6bd5d4fce502a5b5a2ea805e9ff16e6aa890f |
| Linux · Linux | affected 6.5 ; unaffected 0 < 6.5 ; unaffected 6.6.160 ≤ 6.6.* ; unaffected 6.12.24 ≤ 6.12.* ; unaffected 6.13.12 ≤ 6.13.* ; unaffected 6.14.3 ≤ 6.14.* |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |