CVE Catalog

CVE-2026-80778

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel's futex/pi mechanism, there is a vulnerability where a private futex owner from a different address space is accepted. The private futex key borrows the waiter's mm without taking an mm_users reference, and attach_to_pi_owner() copies the key into the owner's PI state. When the owner exits, a use-after-free can occur if the waiter's mm is freed concurrently. The fix adds validation that for private futexes, the owner's mm and waiter's mm are the same.

Risk Assessment

The vulnerability could lead to use-after-free, potentially causing system crash or privilege escalation in kernel context.

Recommendation

Apply the official Linux kernel patch that adds the appropriate validation in attach_to_pi_owner(), and update the system to a kernel version containing the fix.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: futex/pi: Reject cross-mm private futex owners A private futex key borrows the waiter's mm without taking an mm_users reference. Nevertheless, attach_to_pi_owner() currently accepts an owner from a different address space and copies the private key into the owner's PI state. When that owner exits, exit_pi_state_list() uses the saved key to find the hash bucket and acquires a reference to the waiter's private hash. If the last user of the waiter's mm exits concurrently, futex_hash_free() frees the hash while the owner still uses its bucket and reference. Prevent this by validating in attach_to_pi_owner() that, for private futexes, the owner mm and waiter mm are the same. Perform the check with the owner's pi_lock held and after validating owner::futex::state to serialize against a concurrent PI-state exit cleanup. [ tglx: Amended comment ]

Vulnerability data from NVD (NIST) · CISA KEV · EPSS