CVE-2026-99203
Received Received - Intake

Race Condition in Linux Kernel FASYNC Handling

Vulnerability report for CVE-2026-99203, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-10-28

Last updated on: 2026-10-28

Assigner: kernel.org

Description

In the Linux kernel, the following vulnerability has been resolved: pipe: preserve existing fasync readers on writer setup failure F_SETFL and FIOASYNC decide whether to invoke ->fasync() before pipe_fasync() takes pipe->mutex. Two enables of one O_RDWR FIFO can therefore both enter the callback. fasync_helper() allocates before checking for an existing entry. If the first enable installs both entries, a second enable can update the reader entry and then fail the allocation for the writer entry. The error path removes the pre-existing reader entry, clearing FASYNC while the writer entry remains registered. __fput() then skips ->fasync(), so a later pipe notification can dereference the freed file or its f_owner. An unprivileged memory-pressure reproducer triggers a KASAN slab-use-after-free in send_sigio() through this path. Keep the reader helper's result and undo the registration only if this call added it. The pipe mutex serializes changes to both lists, so a failed new registration still removes its reader, while a failed duplicate preserves the existing registrations and FASYNC. Successful duplicate enables continue to update fa_fd as before.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-10-28
Last Modified
2026-10-28
Generated
2026-10-28
AI Q&A
2026-10-28
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 4 associated CPEs
Vendor Product Version / Range
Linux Linux 76398425bb06b07cc3a3b1ce169c67dc9d6874ed
Linux Linux 76398425bb06b07cc3a3b1ce169c67dc9d6874ed
Linux Linux 76398425bb06b07cc3a3b1ce169c67dc9d6874ed
Linux Linux 2.6.30

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This is a use-after-free vulnerability in the Linux kernel related to pipe file descriptors. It occurs when two processes enable FASYNC on the same O_RDWR FIFO simultaneously. A race condition can cause the kernel to free a file structure while it is still in use, leading to a slab-use-after-free in send_sigio().

Detection Guidance

This vulnerability is specific to the Linux kernel and relates to a race condition in pipe fasync handling. Detection requires checking kernel version and examining kernel logs for related errors. Use 'uname -a' to check kernel version and 'dmesg | grep -i pipe' to look for pipe-related errors.

Impact Analysis

An unprivileged local attacker could exploit this to cause a denial of service or potentially execute arbitrary code with kernel privileges. This could lead to system crashes or unauthorized access to sensitive data.

Mitigation Strategies

Apply the latest kernel security patches immediately. If patches are unavailable, consider disabling F_SETFL and FIOASYNC operations on FIFOs as a temporary workaround. Monitor system logs for signs of exploitation.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-99203. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart