A security researcher has published working exploit code for four Linux kernel vulnerabilities that each allow a local user to gain root privileges, the highest level of system access, according to a technical write-up and disclosure published September 18 by researcher Asim Manizada. Kernel maintainers have patched all four flaws over recent weeks, so systems running current kernel versions remain unaffected. But with exploit code now publicly available, any machine still operating an older kernel should be updated immediately.

The vulnerabilities—named DirtyAH6, TUNderflow, PPPoEject, and DiagSpill—were discovered by Manizada and reported to the Linux kernel security team in mid-July. He released the technical details and working exploits after a coordinated disclosure period that gave Linux distributions time to ship fixes first. So far, no reports indicate the four have been exploited in real-world attacks. Three of the four flaws can be reached by an ordinary user only when unprivileged user namespaces are enabled—a Linux feature that allows a normal user to act as root inside a private sandbox and is turned on by default in many distributions. The fourth vulnerability, DiagSpill, requires no user namespaces or special privileges as long as the system has the SCTP networking module available. Two of the flaws, DirtyAH6 and DiagSpill, can be triggered over the network but only in narrow scenarios and mainly to crash the system. DirtyAH6 can crash a host acting as an IPv6 router or gateway that adds an IPsec Authentication Header in transport mode, while DiagSpill can crash a host only when certain SCTP options—off by default—are switched on. The first stable kernel releases carrying all four patches are versions 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, 6.18.50, and 7.2.4. Most users run a kernel from a distribution such as Debian, Ubuntu, Red Hat, or SUSE, which uses its own version numbers and adds these fixes on its own schedule, so administrators should check their distribution's security advisory to confirm the update includes all four rather than matching the version numbers above.

All four are memory-safety bugs in different parts of the kernel's networking code, each allowing an attacker to corrupt kernel memory in ways Manizada then used to gain a root shell, according to the write-up. The underlying mistakes are old, ranging from 10 to 21 years. DirtyAH6 is in the IPsec code handling the IPv6 Authentication Header, where the code trusted a routing-header field without verifying it against the number of addresses present, causing a crafted packet to move an internal pointer far out of bounds and write past the buffer. TUNderflow is in the TUN and TAP virtual network devices, where a single value was used both as spare space and as a size, and an oversized value passed through Open vSwitch caused the size calculation to wrap around so packet data landed outside its buffer. PPPoEject is in the code for PPP over Ethernet, which kept a pointer into a network buffer while calling a device routine that could free and move that buffer, creating a use-after-free bug. DiagSpill is in the reporting code for SCTP, where a 16-bit-wide counter tracking connection endpoints wraps back to zero at the 65,536th endpoint, causing the reporting code to set aside no space but copy the full list, writing about 8 MiB of data past the end of its buffer. Manizada said he reached remote root with DirtyAH6 only in his own lab and only by shaping memory on the target first, and doing that from a remote position alone "looks extremely difficult," though he did not rule it out. For DiagSpill, he said he sees no path to remote root at all, even with perfect memory shaping.

Manizada recommends patching rather than turning off features because other paths to the same flaws may exist. If administrators cannot patch right away, two steps reduce the risk: turning off unprivileged user namespaces, which closes the ordinary-user path to DirtyAH6, TUNderflow, and PPPoEject but does not stop DiagSpill or a container or process that already has network-admin privileges, and turning off the affected features if they aren't in use—AH6, TUN/TAP, PPPoE, and SCTP. Local privilege escalation matters most where an attacker already has some access, such as a low-privileged account on a multi-user server, and wants to take full control. The exploits are tuned to specific kernel builds and can crash a machine, so they are meant for isolated test systems, but public exploit code raises the risk on shared systems. Manizada said he found the four flaws with an AI-assisted process that builds a map of how the kernel handles memory and reasons about its layout, and the kernel's fix for DirtyAH6 includes an "Assisted-by" line crediting his custom AI tooling. In his write-up, Manizada said this batch likely ends the public phase of his AI-assisted bug hunting. Organizations still operating legacy kernels face a stark choice between immediate patching and accepting elevated breach risk, while the disclosure timeline underscores the tension between giving defenders time to harden systems and limiting the window before attackers reverse-engineer public proof-of-concept code.