ZeroHour
Cyber Security Newspublished ()ingested Abinaya
Part of a story covered by 4 sources: “Four aged Linux kernel local root flaws (DirtyAH6, TUNderflow, PPPoEject, DiagSpill) disclosed with PoC exploits; fixes shipped in stable branches” — merged summary and timeline →

Linux Kernel Hit by Four Privilege Escalation Flaws Enabling Root Access

AI summary · glm-5.3-flash

Four patched Linux kernel flaws—DirtyAH6, TUNderflow, PPPoEject, and DiagSpill—let local attackers corrupt kernel memory and gain root privileges.

Researchers disclosed four Linux kernel privilege escalation vulnerabilities in long-standing networking code: DirtyAH6 (CVE-2026-80844) in IPv6 Authentication Header/XFRM processing, TUNderflow (CVE-2026-81000) in the TUN/TAP subsystem, PPPoEject (CVE-2026-68121), a use-after-free in PPP over Ethernet's pppoe_sendmsg(), and DiagSpill (CVE-2026-74469) in SCTP sock_diag reporting caused by a wrapping 16-bit transport counter. Most are local privilege escalation bugs, though IPv6 routers using AH transport mode face narrow remote denial-of-service risk, and one researcher demonstrated remote root access in a lab via memory grooming. Researcher Asim Viladi Oglu Manizada reported the issues to the kernel security team in mid-July, and coordinated patches are now available in stable branches including 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, 6.18.50, and 7.2.4. Restricting unprivileged user namespaces helps for three flaws but does not mitigate DiagSpill.

  • DirtyAH6 (CVE-2026-80844): unvalidated IPv6 AH segments_left causes out-of-bounds access in IPsec/XFRM
  • 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 pppoe_sendmsg() corrupts freed kernel memory
  • DiagSpill (CVE-2026-74469): 16-bit SCTP transport counter wraps, overflowing Netlink diagnostic buffers
  • Fixes shipped in stable kernels from 5.10.270 through 7.2.4; disabling user namespaces does not fix DiagSpill
VendorsLinux
ProductsLinux kernel

Vulnerabilities mentionedAll →

CVEVulnerabilityCVSSEPSSFlagsAffectedExposurePublished
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%
  • Linux kernel xfrm AH6 (net/ipv6/ah6.c)
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
  • Linux kernel (net/tun.c TUN/TAP driver)
mass≈hundreds of millions of devices run kernels containing the affected driver; millions of hosts actively use TUN/TAP (VPN gateways, container networking, Open…
Full article542 words · extracted from cybersecuritynews.com · click to collapse

Four newly disclosed Linux kernel vulnerabilities could allow local attackers to corrupt kernel memory and escalate privileges to root on affected systems.

The flaws, named DirtyAH6, TUNderflow, PPPoEject, and DiagSpill, affect long-standing networking code and have now received upstream fixes. The vulnerabilities are tracked as CVE-2026-80844, CVE-2026-81000, CVE-2026-68121, and CVE-2026-74469.

DirtyAH6, tracked as CVE-2026-80844, affects IPv6 Authentication Header processing in Linux IPsec/XFRM code. The issue occurs when the kernel handles malformed IPv6 routing-header values without correctly validating the segments_left field. This can move an internal pointer outside the intended memory area and trigger an out-of-bounds memory operation.

The bug is primarily a local privilege escalation issue when an attacker can create or control suitable network namespaces. However, systems acting as IPv6 routers or gateways that use AH in transport mode could face remote denial-of-service risk under narrow conditions.

The researcher demonstrated remote root access in a laboratory setup with memory grooming, though achieving that through a remote-only attack was described as highly difficult.

TUNderflow, identified as CVE-2026-81000, exists in the TUN/TAP virtual network-device subsystem. A malicious local user can abuse oversized receive-headroom values passed through specific network-device configurations, including Open vSwitch paths.

The error causes an integer underflow during socket-buffer allocation, potentially placing packet data outside its allocated memory area and enabling out-of-bounds reads and writes.

PPPoEject, or CVE-2026-68121, is a use-after-free flaw in the Linux PPP over Ethernet implementation. The pppoe_sendmsg() function keeps a pointer to a PPPoE header while calling a lower-level device-header function.

That callback can reallocate the socket buffer and invalidate the original pointer. Later writes through the stale pointer may corrupt freed kernel memory. The upstream patch reloads the header pointer after device-header creation.

Linux Kernel Privilege Escalation Flaws

DiagSpill, tracked as CVE-2026-74469, affects SCTP diagnostic reporting through sock_diag. An SCTP association can contain up to 65,536 peer transports, while the related counter is only 16 bits wide.

When the count reaches the limit, it wraps to zero, causing the diagnostic code to reserve insufficient space before copying peer information. The resulting overwrite can extend far beyond the intended Netlink response buffer.

Unlike the first three issues, DiagSpill does not require unprivileged user namespaces or special Linux capabilities when SCTP and sctp_diag support are available.

Remote crash conditions may also exist if SCTP address-configuration features are enabled. However, those features are turned off by default.

Researcher Asim Viladi Oglu Manizada reported the issues to the Linux kernel security team in mid-July. Patches were released through coordinated disclosure and are now available in supported stable kernel branches.

Administrators should upgrade to a kernel release containing all four fixes. The first stable versions that address the complete set are Linux 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, 6.18.50, and 7.2.4.

Where immediate patching is not possible, organizations should restrict unprivileged user namespaces and disable unused AH6, TUN/TAP, PPPoE, SCTP, or sctp_diag functionality. However, turning off user namespaces does not mitigate DiagSpill and is not a substitute for applying vendor kernel updates.

Cut every SOC alert investigation by 21 min. Power your SOC with instant IOC context for immediate response: Integrate TI Lookup in your SOC

Abinayahttps://cybersecuritynews.com/

Abi is a Security Editor and fellow reporter with Cyber Security News. She is covering various cyber security incidents happening in the Cyber Space.

Text extracted automatically; images, tables and formatting may be missing. Original: https://cybersecuritynews.com/linux-kernel-privilege-escalation-flaws/