Skip to main content
No exploitation reported

CVE-2026-99203

pipe: preserve existing fasync readers on writer setup failure

No exploitation reported by the sources we read.

  • Published2026-10-28

Am I affected?

With a domain, we read the version its public headers and pages expose. A distribution build can carry the fix under an older number.

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.

Timeline

dates in UTC
  1. 2026-10-2811:17CVE publishedNVD

Observed activity

isMalicious corpus · updated 2026-10-31 15:37 UTC
Indicators tagged with this CVE, per day0 indicators over 7 days
Block these indicators
  • Firewall list (EDL, text): https://api.ismalicious.com/edl/cve/CVE-2026-99203?format=txt
  • CSV export: https://api.ismalicious.com/edl/cve/CVE-2026-99203?format=csv
  • TAXII collection of exploited CVEs
  • The EDL and CSV take an API key on the Pro plan.

Versions per branch

Distribution builds and vendor advisories

Packages from OSV.dev and products from the vendors' CSAF advisories.

version not verifiedVersions not verified: read as OSV.dev and the vendors publish them, not checked against each vendor's release list.

Vendor advisories

  • CVE-2026-99203 Red Hat Product Security278 known affected

    kernel: pipe: preserve existing fasync readers on writer setup failure

    kernel as a component of Red Hat Enterprise Linux 10 · kernel-64k as a component of Red Hat Enterprise Linux 10 · kernel-64k-core as a component of Red Hat Enterprise Linux 10 · +275 more

Full record on NVD

Fix

  1. No fix available, says the vendor Red Hat Product Security CVE-2026-99203 · 264 productsFix deferred
  2. No fix planned, says the vendor Red Hat Product Security CVE-2026-99203 · 14 productsOut of support scope

Detection

Nuclei template
none so far
ProjectDiscovery
Exploit-DB
no entry
Exploit-DB
Proof-of-concept repositories
none listed
PoC-in-GitHub

Sources

  • NVDCVE recordread 2026-10-31
  • CNACVSS 3.17.8read 2026-10-31
  • FIRST EPSSEPSS score0.2 %2026-10-30

Technical details

CVSS v3 Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Published
2026-10-28
Last Modified
2026-10-31
NVD status
Received

Frequently asked questions

What is CVE-2026-99203?

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.

Is CVE-2026-99203 actively exploited?

Active exploitation of CVE-2026-99203 has not been confirmed. Its EPSS score was 0.2% on 2026-10-30, the estimated probability of exploitation in the next 30 days.

What is the CVSS score for CVE-2026-99203?

CVE-2026-99203 has a CVSS v3 base score of 7.8 (HIGH severity), with vector string CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.

Running Linux kernel? Hear about its next vulnerability

Surveillance reads the versions in your stack — a domain, a lockfile or a list — checks each CVE against the ranges its sources publish, and alerts you when one you run is exploited or enters CISA KEV. A version it cannot read stays « version not verified ».

No credit card required · No monthly cap on website lookups · 250 API requests/month