Tia N.List

Reported by 4 outlets

"Dirty Frag" — another universal Linux root zero-day, same class as Copy Fail, PoC public with no patches available

hot0.0
Why this score
Breadth
2.00 / 2.0 · 4 sources
Authority
1.80 / 2.0 · best outlet weight
Severity
4.70 / 5.0 · CVSS + KEV signals
Velocity
0.00 / 2.0 · updates in 48h
Pickup speed
0.00 / 0.6 · time to second source
Recency
× 0.00 temporal multiplier
Community
+ 0.00 / 1.5 · reddit signal
Score
0.0 / 10 = base × recency + community
bleepingcomputer.comgit.kernel.orggithub.comopenwall.com CVE-2026-31431 KEV desk first seen 159d ago

Desk analysis

Dirty Frag is a deterministic Linux kernel privilege escalation that chains two page-cache write flaws, xfrm-ESP Page-Cache Write and RxRPC Page-Cache Write, to modify protected system files in memory without authorization and put a local attacker on root across all major distributions with a single command. Hyunwoo Kim published the documentation, the disclosure rationale and the full exploit to oss-security at 18:56 UTC on May 7 after a third party broke the embargo; the exploit repository V4bel/dirtyfrag went public 38 minutes earlier, so working exploit code predates every vendor response. No CVE has been assigned and no distribution ships a fix. The ESP half is an old bug: Steffen Klassert's January 17, 2017 commit cac2661c53f3, which let esp4 skip skb_cow_data on the fast path, opened a window the disclosure measures at roughly nine years, matching the age of the algif_aead fragment handling in the original report. The upstream fix, f4c50a4034e6 in the netdev net tree dated May 4, states the mechanism precisely: MSG_SPLICE_PAGES attaches pipe pages straight into an skb, the datagram paths never set SKBFL_SHARED_FRAG, and ESP input decrypts in place over memory it does not own.

The chaining is the part to read twice, because neither flaw alone roots the fleet. The disclosure explains that the ESP vector yields an arbitrary 4-byte store primitive like Copy Fail but needs permission to create a user namespace, which AppArmor policy on Ubuntu often blocks, while the RxRPC vector needs no namespace but its module is rarely loaded anywhere except Ubuntu, where rxrpc.ko comes up by default. The blind spots cover each other, and the tested set is not theoretical: Ubuntu 24.04.4 on 6.17.0-23-generic, RHEL 10.1 on 6.12.0-124.49.1.el10_1, CentOS Stream 10, AlmaLinux 10, openSUSE Tumbleweed and Fedora 44 all fall. This is the third member of the Dirty Pipe page-cache-write class after Copy Fail, and unlike race-condition LPEs it is deterministic, needs no timing window, and fails without a kernel panic, so unsuccessful attempts leave no crash trail. It lands while Copy Fail, CVE-2026-31431, already sits on the CISA KEV catalog with a May 15 remediation deadline, which is direct evidence that attackers work this class operationally. A public, race-free root exploit with zero patch availability inverts the usual calculus: this time the defenders have nothing to deploy.

Mitigation is module denial, not patching. Write the disclosure's blacklist, install esp4 /bin/false, install esp6 /bin/false and install rxrpc /bin/false, into /etc/modprobe.d/dirtyfrag.conf, rmmod esp4 esp6 rxrpc, and afterward run echo 3 > /proc/sys/vm/drop_caches, which the PoC documentation requires because the exploit leaves the page cache contaminated until flush or reboot. Inventory first: hosts without IPsec endpoints can drop esp4 and esp6 immediately, hosts without AFS will not miss rxrpc, and the real availability cost concentrates on IPsec VPN terminators and AFS clients, which need tighter restriction of local shell access until their vendor backports f4c50a4034e6. The hunt is concrete because the exploit is public: watch process and exec logs for a binary named exp built with gcc -O0 -Wall -o exp exp.c -lutil, for clones of a dirtyfrag repository landing in world-writable directories, and for esp4, esp6 or rxrpc module loads on hosts with no IPsec or AFS reason to load them.

Two developments would change this assessment. The first distribution advisory backporting the ESP fix, or any upstream fix at all for the RxRPC half, which did not exist at disclosure, converts a mitigation story into a patch story and starts the fleet rollout clock. The first credible exploitation telemetry, vendor or mass-scan, would confirm what the KEV-listed Copy Fail precedent already implies, that this chain is in operator playbooks, and would justify accepting IPsec and AFS breakage on exposed hosts rather than the residual risk of keeping the modules loaded.

Timeline

  1. original reporting

    "Dirty Frag" — another universal Linux root zero-day, same class as Copy Fail, PoC public with no patches available

    bleepingcomputer.com · 159d ago · May 8th, 2026

    A new Linux kernel privilege escalation vulnerability dubbed "Dirty Frag" allows local attackers to gain root on all major distributions with a single command. Discovered by security researcher Hyunwoo Kim, Dirty Frag belongs to the same bug class as Dirty Pipe and Copy Fail but exploits the fragment field of a different kernel data structure — the algif_aead cryptographic algorithm interface, introduced roughly nine years ago. The exploit chains two separate kernel flaws: the xfrm-ESP Page-Cache Write vulnerability and the RxRPC Page-Cache Write vulnerability, modifying protected system files in memory without authorization. Unlike race-condition exploits, Dirty Frag is a deterministic logic bug with a high success rate and no kernel panic on failure. The vulnerability has not yet received a CVE-ID, and no patches exist. Kim released full documentation and a PoC exploit after a third party broke the responsible disclosure embargo on May 7. Mitigation requires removing the vulnerable esp4, esp6, and rxrpc kernel modules — which breaks IPsec VPNs and AFS distributed filesystems. Affected distros include Ubuntu, RHEL, CentOS Stream, AlmaLinux, openSUSE Tumbleweed, and Fedora. This disclosure lands while Linux maintainers are still rolling out patches for Copy Fail (CVE-2026-31431), which CISA added to KEV last Friday with a May 15 remediation deadline.

  2. update from git.kernel.org

    esp4: Avoid skb_cow_data whenever possible (introducing commit cac2661c53f3)

    git.kernel.org · 3556d ago · January 17th, 2017

    Steffen Klassert's January 17, 2017 change made esp4 skip skb_cow_data on the fast path, and the Dirty Frag disclosure scopes the affected window for the xfrm-ESP page-cache write from this commit to the May 2026 fix, roughly nine years of exposure across mainline kernels. This is the origin of the ESP half of the chain.

  3. update from git.kernel.org

    splice, net: Use sendmsg(MSG_SPLICE_PAGES) rather than ->sendpage() (commit 2dc334f1a63a)

    git.kernel.org · 1224d ago · June 7th, 2023

    David Howells' June 2023 conversion of the generic splice send paths to sendmsg with MSG_SPLICE_PAGES is the change the disclosure document scopes as the start of the affected window for the RxRPC page-cache write. It moved pipe-backed page splicing into the networking send paths the RxRPC half of the chain relies on.

  4. update from git.kernel.org

    xfrm: esp: avoid in-place decrypt on shared skb frags (netdev/net commit f4c50a4034e6)

    git.kernel.org · 162d ago · May 4th, 2026

    Kuan-Ting Chen's fix, dated May 4, 2026 in the netdev net tree, documents the ESP-half root cause: MSG_SPLICE_PAGES can attach pipe pages directly to an skb, the IPv4/IPv6 datagram append paths did not set SKBFL_SHARED_FRAG, and ESP input then took the no-COW fast path and decrypted in place over pages the skb did not own. The patch marks spliced frags with SKBFL_SHARED_FRAG and forces ESP input back to skb_cow_data() when the flag is present.

  5. update from github.com

    Dirty Frag: Universal Linux LPE (CVE-2026-43284, CVE-2026-43500)

    github.com · 159d ago · May 7th, 2026

    The original Dirty Frag disclosure, first made public on 2026-05-07 per the document itself, was written by Hyunwoo Kim (@v4bel) and chains the xfrm-ESP Page-Cache Write (CVE-2026-43284) with the RxRPC Page-Cache Write (CVE-2026-43500) to get root on major distributions without any race condition. The stated mitigation is rmmod esp4 esp6 rxrpc plus modprobe blacklist entries.

  6. update from openwall.com

    Dirty Frag: Universal Linux LPE (oss-security, original disclosure)

    openwall.com · 159d ago · May 7th, 2026

    The post states no patches or CVEs existed at publication, chains the xfrm-ESP and RxRPC page-cache write flaws, links the upstream ESP fix commit f4c50a4034e6, and gives a modprobe blacklist with rmmod for esp4, esp6 and rxrpc as the only mitigation. Full exploit source is embedded in the message.

Covered in

digest 2026-05-08

Source on GitHub