AI Is Forcing the Linux Kernel to Shed Its Technical Debt
- 60% of MD5 Password Hashes Can Be Cracked in Under an Hour with a Single GPU
- Dirty Frag: Root Access on Every Major Linux Distribution — No Patch, No Warning
- Ubuntu 26.04 LTS (Resolute Raccoon): The Most Ambitious Ubuntu LTS in a Decade
- Proton Mail: Data Transferred to FBI Again!
- How Close Are Quantum Computers to Breaking RSA-2048?
- How to Prevent Ransomware Infection Risks?
- What is the best alternative to Microsoft Office?
AI Is Forcing the Linux Kernel to Shed Its Technical Debt
A nine-year-old logic flaw discovered with AI assistance triggered a cascade of events that will see the Linux kernel’s AF_ALG cryptographic interface fully deprecated in Linux 7.2 — and it’s only the beginning.
This article is based on verified public sources and corrects several inaccuracies present in earlier reporting. Notably: the Copy Fail exploit is a deterministic logic bug — not a race condition. The zero-copy removal from
AF_ALG was led by Eric Biggers, not David Hildenbrand. And as of this writing, Linux 7.2 has not yet been released; the deprecation is queued for its upcoming merge window.
The Vulnerability: Copy Fail
A logic flaw in the Linux kernel’s algif_aead module allows any unprivileged local user to gain root access via a 732-byte Python proof-of-concept. It abuses the AF_ALG socket interface and splice() to perform a controlled 4-byte write directly into the page cache of a setuid binary — corrupting its in-memory representation without touching the file on disk.
The flaw traces back to 2017, when the kernel team introduced an in-place optimization to the algif_aead code path (commit 72548b093ee3). This change caused page-cache pages — including those backing privileged executables like /usr/bin/su — to be placed in a writable destination scatterlist. By chaining an AF_ALG socket operation with splice(), an attacker can leverage this to write four attacker-controlled bytes into that cache page, altering the binary’s in-memory behavior without any trace on disk.
Crucially, this is not a race condition. It is a deterministic logic bug: given the right inputs, the write happens reliably every time, with no timing dependency. Existing integrity monitoring tools like AIDE and Tripwire see nothing, because the on-disk file is never changed. The upstream fix — reverting the 2017 optimization — was committed on April 1, 2026, and major distributions followed with patched kernels within days of the public disclosure.
The exploit works unmodified across Ubuntu, RHEL, Debian, SUSE, Amazon Linux, and Fedora on kernels built since 2017. Security firm Xint Code (Theori) published a full write-up and the working proof-of-concept alongside the disclosure. Researchers at Huntress later noted that Copy Fail belongs to a broader cluster of zero-copy-related privilege escalation vulnerabilities uncovered around the same period, including Dirty Frag (CVE-2026-43284 / CVE-2026-43500) and Fragnesia (CVE-2026-46300) — all discovered with AI assistance.
“We’re in wild-west type days now with AI finding bugs. A rough ride for the moment.” — Bruce Schneier’s blog, May 2026
The Response: AF_ALG Zero-Copy Removed, Full Deprecation Queued
The immediate engineering reaction moved in two stages. In mid-May 2026, kernel crypto maintainer Eric Biggers at Google submitted a patch removing zero-copy support from AF_ALG‘s SKCIPHER and AEAD code paths. The zero-copy mode — accessed via splice() and vmsplice() — allowed user space to request cryptographic operations directly on page-cache pages of arbitrary files, and enabled concurrent modification of memory being operated on, a classic recipe for exploitation. Biggers judged the performance benefit negligible for a niche interface, while the security cost was severe.
Then, in early June 2026, Biggers went further: a patch was queued in the kernel’s cryptodev subsystem tree to formally deprecate the entire AF_ALG interface, targeting Linux 7.2. His patch note was unusually direct:
“AF_ALG is almost completely unnecessary, and it exposes a massive attack surface that hasn’t been standing up to modern vulnerability discovery tools. The latest one even has its own website, providing a small Python script that reliably roots most Linux distros: https://copy.fail/ This isn’t sustainable, especially as LLMs have accelerated the rate the vulnerabilities are coming in.” — Eric Biggers, kernel patch note, June 2026
AF_ALG, originally designed to give user-space programs direct access to the kernel’s cryptographic engine — useful for hardware accelerator offloading — had seen its practical value erode for years. User-space libraries like OpenSSL and libsodium long surpassed it in both performance and security. Today, only a small number of programs — notably iwd, libkcapi, and cryptosetup — still depend on it, and Biggers determined that migrating those remaining users is a far better investment than the ongoing cost of patching the attack surface.
As of this writing, Linux 7.1 is in its release-candidate phase (RC6). The Linux 7.2 merge window is expected to open in mid-June 2026, with a stable release anticipated around late August 2026. The deprecation is approved and queued, but Linux 7.2 has not yet been released.
A Timeline of Events
-
2017
In-place optimization introduced to
algif_aead(commit72548b093ee3), unknowingly creating a path for page-cache corruption. -
April 1, 2026
Upstream fix for Copy Fail committed to the mainline kernel, reverting the 2017 optimization.
-
April 29, 2026
Public disclosure of CVE-2026-31431 “Copy Fail” by Taeyang Lee / Xint Code (Theori), with working 732-byte Python PoC.
-
April 30 – May 2, 2026
Major distributions — Debian, Ubuntu, RHEL, AlmaLinux, SUSE, Fedora — roll out patched kernels. CERT-EU publishes advisory.
-
May 7–13, 2026
Dirty Frag and Fragnesia — related zero-copy LPE vulnerabilities — disclosed. All three found with LLM assistance.
-
May 18, 2026
Eric Biggers submits patch removing zero-copy (splice/vmsplice) support from
AF_ALG‘s SKCIPHER and AEAD paths. -
June 1, 2026
Full
AF_ALGdeprecation patch queued for Linux 7.2 merge window. Biggers cites LLM-accelerated vulnerability discovery as the tipping point. -
Late August 2026 (projected)
Linux 7.2 stable release, at which point
AF_ALGdeprecation officially takes effect.
The Bigger Picture: AI as a Forcing Function
The Linux kernel contains nearly 40 million lines of code, maintained by a relatively small number of active contributors. For years, obscure subsystems accumulated technical debt not because maintainers were unaware of the risk, but because the resources needed to exhaustively audit every code path simply did not exist. The decision calculus was implicitly: if no one is exploiting it, the cost of a deep audit isn’t justified.
AI-assisted security tooling changes that calculus fundamentally. A race condition or logic flaw that would take a senior security researcher weeks to surface can now be identified in hours with LLM-assisted fuzzing and static analysis. Copy Fail lay dormant for nine years; once the right tooling was applied, it was found quickly. Dirty Frag and Fragnesia followed within two weeks.
The practical effect on kernel maintainers is a compression of the decision timeline. The old pattern — report, patch, report again, patch again, eventual cleanup — is no longer viable when vulnerabilities arrive faster than patches can be written. Biggers’ response to Copy Fail skipped straight from “this is dangerous” to “deprecate the whole interface,” a decisiveness that would have been harder to justify before AI-assisted auditing made the full scope of exposure visible.
The open-source community’s relationship with AI tooling has been contentious. Projects like Zig and Ghostty have pushed back hard against AI-generated contributions, and with good reason: low-quality automated pull requests impose real costs on maintainers. But the security auditing side of the ledger looks very different. Here, AI tools are surfacing vulnerabilities before attackers do — and forcing overdue cleanups of interfaces whose long-term security costs have always exceeded their practical value.
AF_ALG is the first Linux kernel interface to be accelerated through full deprecation by this dynamic. It will not be the last. How many other niche kernel interfaces carry similar debt? The honest answer is: no one knows yet. But AI is finding out, one interface at a time.
Sources: Xint Code / copy.fail advisory · Phoronix · OSTechNix · CERT-EU · AlmaLinux Blog · Huntress · Sysdig TRT · Schneier on Security · Linux Kernel Mailing List (LKML)
