GHSA-4P4J-8FXF-MVHP
Vulnerability from github – Published: 2026-09-11 21:31 – Updated: 2026-09-11 21:31In the Linux kernel, the following vulnerability has been resolved:
fuse: copy request headers via a stack buffer for io-uring
The fuse-io-uring transport copies req->in.h out to the ring in fuse_uring_copy_to_ring() and req->out.h back in fuse_uring_commit(). Both headers live inside the fuse_request slab object, whose cache (fuse_req_cachep) is created without a usercopy whitelist, so copying them directly to/from userspace trips CONFIG_HARDENED_USERCOPY and panics:
usercopy: Kernel memory exposure attempt detected from SLUB object 'fuse_request' (offset 56, size 40)! kernel BUG at mm/usercopy.c:102! Oops: invalid opcode: 0000 [#1] SMP KASAN NOPTI RIP: 0010:usercopy_abort (mm/usercopy.c:90) Call Trace: __check_heap_object (mm/slub.c:8268) __check_object_size (mm/usercopy.c:197 mm/usercopy.c:258 mm/usercopy.c:223) copy_header_to_ring (fs/fuse/dev_uring.c:618) fuse_uring_prepare_send (fs/fuse/dev_uring.c:776 fs/fuse/dev_uring.c:785) fuse_uring_send_in_task (fs/fuse/dev_uring.c:1306) tctx_task_work_run (io_uring/tw.c:96) task_work_run (kernel/task_work.c:233) io_run_task_work (io_uring/tw.h:84) io_cqring_wait (io_uring/wait.c:278) __do_sys_io_uring_enter (io_uring/io_uring.c:2685) entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121)
Bounce both headers through an on-stack copy so the usercopy touches stack memory, not the slab object.
{
"affected": [],
"aliases": [
"CVE-2026-80946"
],
"database_specific": {
"cwe_ids": [],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2026-09-11T20:19:00Z",
"severity": null
},
"details": "In the Linux kernel, the following vulnerability has been resolved:\n\nfuse: copy request headers via a stack buffer for io-uring\n\nThe fuse-io-uring transport copies req-\u003ein.h out to the ring in\nfuse_uring_copy_to_ring() and req-\u003eout.h back in fuse_uring_commit().\nBoth headers live inside the fuse_request slab object, whose cache\n(fuse_req_cachep) is created without a usercopy whitelist, so copying\nthem directly to/from userspace trips CONFIG_HARDENED_USERCOPY and\npanics:\n\n usercopy: Kernel memory exposure attempt detected from SLUB object\n \u0027fuse_request\u0027 (offset 56, size 40)!\n kernel BUG at mm/usercopy.c:102!\n Oops: invalid opcode: 0000 [#1] SMP KASAN NOPTI\n RIP: 0010:usercopy_abort (mm/usercopy.c:90)\n Call Trace:\n __check_heap_object (mm/slub.c:8268)\n __check_object_size (mm/usercopy.c:197 mm/usercopy.c:258 mm/usercopy.c:223)\n copy_header_to_ring (fs/fuse/dev_uring.c:618)\n fuse_uring_prepare_send (fs/fuse/dev_uring.c:776 fs/fuse/dev_uring.c:785)\n fuse_uring_send_in_task (fs/fuse/dev_uring.c:1306)\n tctx_task_work_run (io_uring/tw.c:96)\n task_work_run (kernel/task_work.c:233)\n io_run_task_work (io_uring/tw.h:84)\n io_cqring_wait (io_uring/wait.c:278)\n __do_sys_io_uring_enter (io_uring/io_uring.c:2685)\n entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121)\n\nBounce both headers through an on-stack copy so the usercopy touches\nstack memory, not the slab object.",
"id": "GHSA-4p4j-8fxf-mvhp",
"modified": "2026-09-11T21:31:20Z",
"published": "2026-09-11T21:31:20Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-80946"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/194d0fb0ea4720535ff3168c9d04c7632cec7071"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/a47a416ff68d706dc3327ab583f86b9ee757358b"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/fd10f40af314f07b6d6e028b1ca25c8b49903aab"
}
],
"schema_version": "1.4.0",
"severity": []
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.