Disclosure date: 2026-05-08 | Discoverer: Hyunwoo Kim (@v4bel) | Current status: zero patches for RxRPC, zero CVEs
One-line summary
Dirty Frag chains two independent vulnerabilities—xfrm-ESP (introduced 2017) and RxRPC (introduced 2023)—using the splice() zero-copy mechanism to inject read-only file page-cache pages into kernel-writable network decryption paths, achieving deterministic, race-free, cross-distribution root privilege escalation.
Family lineage
| Vulnerability | Year | Target | Key mechanism | |------|------|----------|----------| | Dirty COW | 2016 | Private memory | COW race | | Dirty Pipe | 2022 | Page cache | pipe_buffer flags | | Copy Fail | 2026.04 | Page cache | AF_ALG scatterlist | | Dirty Frag | 2026.05 | Page cache | skb frag |
Core mechanism
1. splice() places page-cache page references into skb frag slots in the socket buffer 2. ESP/RxRPC receive paths perform in-place decryption, directly modifying the page cache 3. When the file is subsequently executed, the kernel loads the tampered memory copy, triggering a root shell
Two complementary vulnerabilities
- xfrm-ESP: precise 4-byte write, requires user namespace (blocked by Ubuntu AppArmor)
- RxRPC: 8-byte write, no namespace required, but requires rxrpc.ko (loaded by default on Ubuntu)
- Chained effect: covers almost all distributions
- ESP patch: merged into the netdev tree (2026-05-07), commit f4c50a4034e6, based on Kuan-Ting Chen's shared-frag approach
- RxRPC patch: still not merged upstream
Confirmed affected systems
Ubuntu 24/26, RHEL 10.1, Fedora 44, openSUSE Tumbleweed, CentOS Stream 10, AlmaLinux 10, WSL2
Temporary mitigation (side-effect warning)
Disable the esp4/esp6 kernel modules.
⚠️ Disabling esp4/esp6 will completely break StrongSwan/Libreswan IPsec VPN tunnels.
Patch status
Deeper implications
There is a systemic mismatch between splice()'s zero-copy assumption (read-only pass-through) and in-place write operations in kernel subsystems. As long as paths exist that pass page references via splice() and later perform in-place writes, new "Dirty" variants will continue to appear.
---
The full 12,000+ word in-depth research report (including technical details, attack flow diagrams, container escape analysis, and detection guidance) has been saved to a local workspace.