Four aged Linux kernel local root flaws (DirtyAH6, TUNderflow, PPPoEject, DiagSpill) disclosed with PoC exploits; fixes shipped in stable branches
Four Linux kernel memory-corruption local root flaws aged 10-21 years — DirtyAH6 (CVE-2026-80844), TUNderflow (CVE-2026-81000), PPPoEject (CVE-2026-68121), and DiagSpill (CVE-2026-74469) — were publicly disclosed on 2026-09-18 with published PoC exploits that…
Researcher Asim Viladi Oglu Manizada (listed as manizada) publicly disclosed four Linux kernel local root/privilege escalation vulnerabilities on oss-security on 2026-09-18 after the embargo agreed with linux-distros@ expired. The memory-corruption bugs, present in long-standing networking code for 10-21 years, were reported to [email protected] and relevant subsystem maintainers in mid-July 2026. They are: DirtyAH6 (CVE-2026-80844), an unvalidated IPv6 Authentication Header segments_left value causing out-of-bounds access in IPsec/XFRM processing; TUNderflow (CVE-2026-81000), an integer underflow in the TUN/TAP receive-headroom enabling out-of-bounds reads and writes; PPPoEject (CVE-2026-68121), a use-after-free in PPP over Ethernet's pppoe_sendmsg() that corrupts freed kernel memory; and DiagSpill (CVE-2026-74469), a wrapping 16-bit SCTP transport counter that overflows Netlink sock_diag diagnostic buffers, overwriting roughly 8 MB. Per GBHackers, the first three flaws rely on unprivileged user namespaces; the oss-security announcement confirmed the first three require preconditions but was truncated before detailing them. DiagSpill requires no namespaces or special capabilities when SCTP and sctp_diag are enabled, and disabling user namespaces does not fix it. Published proof-of-concept exploits demonstrate root shell access, and AppArmor and SELinux did not block the tested exploit paths. Cyber Security News adds that most of the flaws are local privilege escalations, though IPv6 routers using AH transport mode face a narrow remote denial-of-service risk from DirtyAH6, and one researcher demonstrated remote root access in a lab via memory grooming. Coordinated patches are included in stable branches 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, 6.18.50, and 7.2.4. In an oss-security follow-up, Hanno Böck recommended attack surface reduction: administrators who build their own kernels can compile out unused subsystems to avoid being affected by many recent and future vulnerabilities; the reply contained no CVE identifiers, patch details, or exploitation evidence.
- Four Linux kernel local root/LPE vulnerabilities disclosed on oss-security on 2026-09-18: DirtyAH6 (CVE-2026-80844), TUNderflow (CVE-2026-81000), PPPoEject (CVE-2026-68121), DiagSpill (CVE-2026-74469)
- Researcher: Asim Viladi Oglu Manizada (listed as manizada); reported to [email protected] and subsystem maintainers in mid-July 2026; public disclosure followed expiry of the embargo agreed with linux-distros@
- The bugs are stated to have existed for 10-21 years
- DirtyAH6 (CVE-2026-80844): unvalidated IPv6 Authentication Header segments_left causes out-of-bounds access in IPsec/XFRM processing; IPv6 routers using AH transport mode face a narrow remote denial-of-service risk
- TUNderflow (CVE-2026-81000): integer underflow in TUN/TAP receive-headroom enables out-of-bounds reads and writes
- PPPoEject (CVE-2026-68121): use-after-free in PPP over Ethernet's pppoe_sendmsg() corrupts freed kernel memory
- DiagSpill (CVE-2026-74469): wrapping 16-bit SCTP transport counter overflows Netlink sock_diag diagnostic buffers, overwriting roughly 8 MB
- Per GBHackers, the first three flaws rely on unprivileged user namespaces; the oss-security announcement confirmed the first three require preconditions but was truncated before stating details
Coverage timelineoldest first · each row is one article
- · 8h agoA quartet of Linux local root vulns: DirtyAH6, PPPoEject, TUNderflow, and DiagSpill
oss-security· 62
Four local root privilege escalation vulnerabilities in the Linux kernel, aged 10-21 years, disclosed as CVE-2026-80844, CVE-2026-81000, CVE-2026-68121, and CVE-2026-74469.
- · 4h agoLinux Kernel Hit by 4 LPE Flaws Enabling Attackers to Gain Root Shell
GBHackers· 68
Four Linux kernel privilege escalation flaws (DirtyAH6, TUNderflow, PPPoEject, DiagSpill) allow local root access; fixes ship in stable kernel branches with PoC exploits published.
- · 1h agoLinux Kernel Hit by Four Privilege Escalation Flaws Enabling Root Access
Cyber Security News· 68
Four patched Linux kernel flaws—DirtyAH6, TUNderflow, PPPoEject, and DiagSpill—let local attackers corrupt kernel memory and gain root privileges.
- · 1h agoRe: A quartet of Linux local root vulns: DirtyAH6, PPPoEject, TUNderflow, and DiagSpill
oss-security· 55
Follow-up on four Linux local root vulnerabilities dubbed DirtyAH6, PPPoEject, TUNderflow, and DiagSpill, advising kernel attack surface reduction as mitigation.
Vulnerabilities in this storyAll →
| CVE | Vulnerability | CVSS | EPSS | Flags | Affected | Exposure | Published |
|---|---|---|---|---|---|---|---|
| CVE-2026-68121 | In the Linux kernel, the following vulnerability has been resolved: In the Linux kernel, the following vulnerability has been resolved: pppoe: reload header pointer after dev_hard_header() pppoe_sendmsg() saves a pointer to the PPPoE header before calling dev_hard_header(). Device header callbacks are allowed to reallocate the skb head, invalidating pointers into it. This can happen when a send is blocked in copy_from_user() while the first non-Ethernet port is added to an empty team device. The team's delegated GRE header callback then expands the skb head. PPPoE subsequently writes six bytes through the stale pointer into the freed head. Reload the PPPoE header through the skb's network-header offset after device header creation. pskb_expand_head() updates that offset when it relocates the head. NVD description · AI analysis pending | 7.8 | <1% | — | — | ||
| CVE-2026-74469 | In the Linux kernel, the following vulnerability has been resolved: In the Linux kernel, the following vulnerability has been resolved: sctp: prevent peer transport count overflow sctp_assoc_add_peer() increments the association's 16-bit transport_count for every new unique peer. Adding the 65,536th transport wraps the count to zero. SCTP sock_diag uses transport_count to reserve the INET_DIAG_PEERS payload, then copies one sockaddr_storage for every entry in transport_addr_list. After the wrap, a diagnostic dump reserves an empty payload and writes 8 MiB of peer addresses past the skb tail. Reject a new unique peer when transport_count has reached U16_MAX. Perform the check after the existing-peer lookup so a duplicate address continues to return its existing transport at the limit. NVD description · AI analysis pending | 8.8 | <1% | — | — | ||
| CVE-2026-80844 | Out-of-bounds memory access in Linux kernel AH6 (xfrm) enables local privilege escalation The Linux kernel's IPv6 Authentication Header implementation (net/ipv6/ah6, part of xfrm) fails to validate the segments_left field of an IPv6 routing header before rearranging addresses for ICV computation, so a crafted raw IPv6 (IP_HDRINCL) packet with hdrlen=2 but segments_left=255 drives pointer arithmetic and a memmove roughly 4,064 bytes out of bounds. A local attacker who can open raw sockets (e.g., holding CAP_NET_RAW, which is commonly granted in containers) can trigger this kernel memory corruption — publicly tracked under the name 'DirtyAH6' — and potentially escalate privileges to root. Any Linux system whose kernel includes IPv6 AH support (the ah6 module) is affected, which spans most mainstream distribution kernels on servers, cloud hosts, containers, and embedded devices. No public proof-of-concept, CISA KEV listing, or confirmed in-the-wild exploitation is known; EPSS currently estimates a 0.2% probability of exploitation within 30 days (9th percentile). Do: Update to a kernel containing the upstream xfrm/ah6 fix once your distribution ships it (no fixed version number appears in the source data, so follow distro advisories for CVE-2026-80844). As interim mitigations, blacklist or avoid loading the ah6 module if you do not use IPsec AH, and remove or restrict CAP_NET_RAW from containers and unprivileged users. Check exposure on hosts with 'lsmod | grep ah6' and audit container runtime capability grants for CAP_NET_RAW. | — | <1% |
| mass≈10^8–10^9 Linux systems ship the affected code path (kernel ubiquitous; ah6 compiled into most mainstream distro kernels), though only… | ||
| CVE-2026-81000 | Linux kernel TUN/TAP headroom integer underflow enables local memory corruption An integer underflow in the Linux kernel's TUN/TAP driver (net/tun.c) lets tun_get_user() compute a negative linear data size when the configured headroom (tun->align) exceeds the one-page skb-head budget; the value wraps when stored as a size_t, so tun_alloc_skb() can place skb->data outside the allocated buffer. The oversized headroom can be set locally or propagated to a TUN/TAP port by Open vSwitch when packets arrive from another port, so triggering requires injecting packets into a TUN/TAP device with a large alignment value, which needs local access with privileges. Successful exploitation corrupts kernel memory adjacent to the skb, giving a local attacker full confidentiality, integrity, and availability impact (CVSS 7.8), i.e., potential ring-0 code execution and complete host compromise. Any system running a kernel with the vulnerable tun_get_user() logic is affected, with VPN gateways, container hosts, and Open vSwitch/SDN deployments the most likely exposure paths. No public PoC is known, the flaw is not in CISA's KEV, and no exploitation in the wild has been reported. Do: Apply a kernel update containing the upstream fix commit "net: tun: bound receive headroom" as soon as your distribution or vendor backports it. In the interim, restrict access to /dev/net/tun and CAP_NET_ADMIN for untrusted local users and containers, and review Open vSwitch bridges that forward traffic from ports with large headroom requirements into TUN/TAP ports. Monitor kernel logs for OOPS or BUG output in the tun_get_user/tun_alloc_skb paths as a sign of attempted abuse. | 7.8 | — |
| mass≈hundreds of millions of devices run kernels containing the affected driver; millions of hosts actively use TUN/TAP (VPN gateways, container networking, Open… |