Bug 2507041 (CVE-2026-64265) - CVE-2026-64265 kernel: fuse: clear intr_entry in fuse_resend and fuse_remove_pending_req
Summary: CVE-2026-64265 kernel: fuse: clear intr_entry in fuse_resend and fuse_remove_...
Keywords:
Status: NEW
Alias: CVE-2026-64265
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
high
high
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-07-25 10:01 UTC by OSIDB Bzimport
Modified: 2026-07-28 17:40 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-07-25 10:01:55 UTC
In the Linux kernel, the following vulnerability has been resolved:

fuse: clear intr_entry in fuse_resend and fuse_remove_pending_req

When fuse_resend() moves a request from fpq->processing back to
fiq->pending, it sets FR_PENDING and clears FR_SENT but does not
remove the requests intr_entry from fiq->interrupts.  If the
request had FR_INTERRUPTED set from a prior signal, intr_entry
remains dangling on fiq->interrupts.  When the requesting task
then receives a fatal signal, fuse_remove_pending_req() sees
FR_PENDING=1, removes the request from fiq->pending and frees it
via the refcount path, also without cleaning intr_entry.  The
stale intr_entry causes use-after-free when fuse_read_interrupt()
iterates fiq->interrupts:
  - list_del_init(&req->intr_entry) -> UAF write on freed slab
  - req->in.h.unique -> UAF read, data leaked to userspace

Remove intr_entry from fiq->interrupts in fuse_resend() for
interrupted requests before they are placed back on fiq->pending.

Add a WARN_ON if the intr_entry is not empty on request destruction.

Comment 1 Mauro Matteo Cascella 2026-07-28 16:34:57 UTC
Upstream advisory:
https://lore.kernel.org/linux-cve-announce/2026072558-CVE-2026-64265-5f6c@gregkh/T


Note You need to log in before you can comment on or make changes to this bug.