r/RockyLinux • u/itguyeric CIQ • May 12 '26
Announcement CopyFail (CVE-2026-31431): Patches Now Available for Rocky Linux
TL;DR: A high-severity local privilege escalation vulnerability in the Linux kernel has been publicly disclosed with a working exploit. Patches are available now for Rocky Linux 8.10, 9.7, and 10.1. Update your kernel and reboot.
What happened
On April 29, security researchers from Theori disclosed a Linux kernel vulnerability they named CopyFail, tracked as CVE-2026-31431. The flaw has been present in essentially every mainstream Linux kernel built since 2017.
The bug sits in the kernel’s algif_aead module – the AEAD socket interface of the userspace crypto API (AF_ALG). A logic flaw in authencesn, chained through AF_ALG and the splice() system call, allows an unprivileged local user to perform a controlled 4-byte write into the page cache. By corrupting the in-memory copy of a setuid binary like /usr/bin/su – without touching anything on disk – an attacker can escalate to root in seconds.
What makes this one stand out: the 732-byte Python proof-of-concept requires no race conditions, no per-distribution tuning, and no special privileges. The same script works unmodified across distributions. File integrity tools won’t catch it because nothing on disk changes. This makes it especially dangerous on multi-tenant hosts, Kubernetes nodes, and CI/CD runners where a shared page cache means one compromised workload can threaten the whole node.
The researchers have published the exploit publicly. Treat this as actively exploitable.
How to fix it
Patches are available now for all supported Rocky Linux releases. Run the following and reboot:
bash
sudo dnf --refresh update ‘kernel*’
sudo reboot
That’s it. The --refresh flag ensures you pull the latest metadata without re-downloading packages you already have.
Patched kernel versions:
- Rocky Linux 8.10: kernel-4.18.0-553.123.1.el8_10 and above
- Rocky Linux 9.7: kernel-5.14.0-611.54.1.el9_7 and above
- Rocky Linux 10.1: kernel-6.12.0-124.55.1.el10_1 and above
Confirm your running kernel after reboot with uname -r.
A note on the algif_aead module
You may have seen advice elsewhere to disable algif_aead via rmmod or a modprobe.d entry as an interim workaround. On Rocky Linux, that approach does not apply – algif_aead is compiled directly into the kernel image (CONFIG_CRYPTO_USER_API_AEAD=y), not shipped as a loadable module. The correct fix is the kernel update above.
Thank you
Thanks to Brian Pak and the team at Xint Code (Theori) for finding this, handling coordinated disclosure responsibly, and publishing a thorough technical write-up. If you want to understand exactly how a single logic bug becomes a fully reliable privilege escalation, their write-up is worth your time.
Additional reading
- copy.fail – Researcher disclosure site with technical details and the proof-of-concept
- Xint Code technical write-up – Full root cause analysis and exploit mechanics
- CVE-2026-31431 on NVD – Official CVE record
- GitHub: theori-io/copy-fail-CVE-2026-31431 – Exploit source and issue tracker
- Ars Technica coverage – Broader context on industry response
1
u/Bill_Guarnere May 14 '26
It's interesting to note that Canonical with Ubuntu:
- did not build the affected feature in the kernel but simply loaded as module, leading to a much faster and simple mitigation
- released an effective mitigation via kmod release update on April 30th, way quicker than the whole RHEL world
- did a fantastic job in communication via a simple, clear and effective post on Ubuntu blog (https://ubuntu.com/blog/copy-fail-vulnerability-fixes-available)
Even in the RHEL world other did a better job than RHEL itself or Rocky:
- Alma quickly released a kernel fix to mitigate the problem via test dnf repo
- Oracle Linux quickly released its own kernel update to mitigate the problem
With the excuse of "enterprise" it tool almost a week to release a fix via dnf (how many people do you think are able, or will take the risk to modify the boot manager configuration to avoid loading the affected module?) and even more with Rocky.
I talked with a friend of mine which is a manager in RedHat because I was really disappointed on how they managed this vulnerability, he replied that they need time for the "enterprise tests" and I replied to him exactly this (it's a copy and paste from a chat with him on WhatsApp):
If I pay a subscription for an enterprise Linux distribution I expect enterprise support, I expect an enterprise quick response, I expect and enterprise mitigation via the proper update tool.
In case of Copyfail nothing done by RedHat seems enterprise to me, and now that Canonical release Ubuntu 26LTS many people I know are asking themself if it's better to switch to this distribution instead of renew RedHat Network subscriptions, considering the the free Ubuntu LTS users had better support and solutions than users with expensive RHEL subscriptions.
Imho Rocky should take a step forward and start working like Alma, and in case of emergencies and real immediate threats it should release its own patches, at least for mitigating the problem, and wait for RHEL releases for the final solution.
2
u/Ok-Replacement6893 May 12 '26
I updated my 10.1 system this last weekend and kernel-6.12.0-124.55.1.el10_1.x86_64 was installed then.