Why Linux Kernel Developers Are Turning to Rust Now

The same three Linux kernel privilege escalation flaws, all discovered using AI-assisted auditing tools, appeared within weeks of one another between late April and early May 2026. During that same period, Linux stable kernel maintainer Greg Kroah-Hartman made a strong argument in favor of Rust at the Rust Week 2026 conference held in Utrecht, Netherlands.

·
Published May 28, 2026 · Updated May 28, 2026
·
⏱ 4 min read

Highlights

1 Three kernel-level local privilege escalation bugs, CopyFail (CVE-2026-31431), Dirty Frag (CVE-2026-43284 and CVE-2026-43500), and Fragnesia (CVE-2026-46300), were all discovered using AI-assisted security tools within roughly two weeks. All three affect kernel versions 4.14 through 6.19.12, and all can potentially allow an unprivileged user to gain elevated privileges.
2 Kroah-Hartman, speaking at Rust Week 2026 on May 20, said the kernel team is now issuing around 13 CVEs per day, calling it "something crazy" and pointing to longstanding memory-management and error-handling challenges in C as a major contributing factor.
3 Real bugs from the kernel were used to illustrate the problem: a 15-year-old Bluetooth bug that dereferenced a pointer without checking it, and a Xen path where a lock was simply forgotten on an error exit. Read more on how Dirty Frag exploits this same class of bug.
4 CopyFail was added to CISA's Known Exploited Vulnerabilities catalog. Microsoft confirmed limited in-the-wild exploitation of Dirty Frag (CVE-2026-43284) in post-compromise scenarios by May 11, 2026, with attackers observed modifying GLPI LDAP authentication files on compromised systems.
5 Kroah-Hartman is not calling for a full kernel rewrite in Rust. New drivers and subsystems will increasingly use Rust going forward, while the existing C code stays in place.
6 Rust adoption in the kernel is already influencing C code quality. Kroah-Hartman credited Rust directly: "We stole this from Rust. Thank you. It's a good idea."

Multiple high-profile Linux kernel vulnerabilities were identified within a very short period, drawing significant attention from the security community. That is not a coincidence. The growing number of high-profile vulnerabilities being discovered today is increasingly linked to how quickly AI-assisted security tools can help researchers identify entire classes of bugs that would otherwise take highly skilled researchers days to find manually. Kroah-Hartman argues that the appearance of these vulnerabilities matters because they are the types of memory-safety issues Rust was specifically designed to help reduce before runtime.

Event Rust Week 2026, Utrecht, Netherlands, May 18-23, 2026
CVEs Involved CVE-2026-31431, CVE-2026-43284, CVE-2026-43500, CVE-2026-46300
Exploit Status CopyFail: CISA KEV, actively exploited. Dirty Frag: limited in-the-wild exploitation confirmed (Microsoft, May 11). Fragnesia: PoC public, no in-the-wild confirmed.
Affected Kernel Versions 4.14 through 6.19.12 (CopyFail and Dirty Frag). All kernels before May 13, 2026 (Fragnesia).

What Happened in April and May 2026

The first issue, CopyFail, was identified by Theori on April 29, 2026 using their Xint Code AI tool. A single operator prompt, combined with roughly an hour of scanning against the kernel crypto subsystem, exposed a logic flaw within the algif_aead module that had existed since a 2017 optimization commit. The flaw allows an unprivileged process to splice data into an AF_ALG socket and overwrite the page cache for files it does not own. All Linux kernels between versions 4.14 and 6.19.12 are affected by the issue.

Shortly afterward, Dirty Frag was identified by researcher Hyunwoo Kim on May 7. Dirty Frag combines two separate vulnerabilities: one in the esp4 and esp6 IPsec modules introduced in January 2017, and another in the rxrpc transport module introduced in June 2023. This was followed by Fragnesia, discovered by William Bowling of Zellic’s V12 Security Team on May 13 using an AI-powered agentic auditing tool. Fragnesia specifically targets a logic flaw in the espintcp Upper Layer Protocol path. When data is spliced into a TCP socket queue before switching into espintcp mode, the kernel mistakenly treats those file pages as ciphertext and decrypts them in place. This effectively gives an attacker the ability to write into read-only kernel memory.

This concentration of kernel vulnerability disclosures within such a short timeframe is unusual in the Linux security landscape. Historically, kernel-level Local Privilege Escalation (LPE) vulnerabilities affecting multiple Linux distributions have appeared only occasionally over several years. In this case, three major vulnerabilities surfaced within roughly two weeks. The broader Linux security threat landscape in 2026 shows how AI-assisted vulnerability discovery is beginning to reshape kernel security research at a much faster pace than before.

Why C Makes These Bugs Easy to Write

Kroah-Hartman used real kernel history to make his point. The 15-year-old Bluetooth bug dereferenced a pointer without checking whether it was null first. The Xen bug forgot to unlock a lock when taking an error path out of a function. These are not exotic edge cases. They are the everyday reality of writing C in a codebase with tens of millions of lines and thousands of contributors over decades.


"The majority of the bugs in the kernel are this tiny, minor stuff. Error conditions aren't checked, locks are forgotten, unreleased memories leak, and vulnerabilities add up over time. They crash the kernel. This is what we live with in C. This is why we don't like it."


Greg Kroah-Hartman, Rust Week 2026, May 2026

C provides very limited compile-time protection against many of these classes of mistakes. A forgotten unlock, a null dereference, a memory leak on an error path: all of them compile cleanly and run fine until the wrong input arrives. Rust's borrow checker and ownership model are designed to catch many of these memory-safety mistakes during compilation rather than at runtime.

What Kroah-Hartman Is Actually Proposing

No full rewrite. The kernel is 35 million lines of C, most of it working fine. The plan is to write new drivers and new subsystems in Rust and gradually expand from there. Existing C code stays unless there is a specific reason to touch it. The interop approach, championed by contributors like Alice Ryhl at Google, lets Rust and C code live side by side in the kernel without requiring a rip-and-replace strategy.

Kroah-Hartman also made a point that is easy to miss: even if Rust disappeared from the kernel tomorrow, it has already improved the C code around it. Rust integration efforts encouraged the kernel team to clean up C interfaces and adopt better memory management patterns. He credits this directly. If you are looking at server hardening practices for production Linux, this matters because cleaner kernel interfaces mean fewer places for bugs to hide regardless of language.

Which Distros Are Affected and What to Do Now

All three CVEs affect every major Linux distribution running kernels from 4.14 onward. Ubuntu, RHEL, Rocky Linux, AlmaLinux, and Fedora all have patches available through standard update channels. Fragnesia patches are in mainline and backported to stable branches. Patch first if you can reboot. If you cannot patch immediately, block the relevant kernel modules using both blacklist and install directives in your modprobe config for algif_aead, esp4, esp6, rxrpc, and espintcp.

CVE Disclosed Affected Kernel Versions Exploit Status
CopyFail (CVE-2026-31431) April 29, 2026 4.14 to 6.19.12 CISA KEV, actively exploited
Dirty Frag (CVE-2026-43284 / 43500) May 7, 2026 4.14 to 6.19.12 Limited in-the-wild exploitation confirmed (Microsoft, May 11)
Fragnesia (CVE-2026-46300) May 13, 2026 All kernels before May 13, 2026 PoC public, no in-the-wild confirmed

One step that is easy to miss after applying module blocks: if an attacker has already run the exploit before you applied the mitigation, corrupted file data can linger in the memory page cache even after the module is blocked. Clear it immediately with:

sudo sh -c "echo 3 > /proc/sys/vm/drop_caches"

Enterprise environments running containers or shared Linux hosts should treat all three as high priority. If you are running ransomware protection strategies on Linux, local privilege escalation is a key post-compromise step and these bugs make that step trivial for any attacker already inside the perimeter.

Linux Kernel Security: What Is Still Unresolved

The pace question is open. Security teams are now being flooded with both legitimate and hallucinated AI-generated bug reports. Legitimate ones like CopyFail and Dirty Frag are real and serious, but kernel maintainers are also dealing with a volume of plausible-looking reports that turn out to be nothing. Separating the two takes reviewer time that is already stretched thin.

Rust adoption in the kernel is also slower than headlines suggest. The language is in the kernel, but most subsystems are still C and will be for years. There is also the question of whether Rust in new code actually reduces the CVE rate in practice, or just shifts where the bugs appear. That data does not exist yet because the Rust-written subsystems are still young. Watch the CVE trends over the next 12 to 18 months for a clearer picture. For anyone working through Linux security tools, the tooling landscape around Rust kernel development is also still maturing.

Even supporters of Rust inside the Linux community acknowledge that Rust is not a complete replacement for existing kernel code, but rather an additional tool intended to reduce specific categories of memory-safety vulnerabilities.

LinuxTeck - A Complete Learning Blog

Tech News Stay updated with the latest Linux and open-source news, covering new releases, distro updates, security patches, and enterprise developments, delivered in plain language for sysadmins and developers.

About John Britto

John Britto Founder & Chief-Editor @LinuxTeck. A Computer Geek and Linux Intellectual having more than 20+ years of experience in Linux and Open Source technologies.

View all posts by John Britto →

Leave a Reply

Your email address will not be published.

L