Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
copy-fail-python — Zero-dependency Python PoC for CVE-2026-31431, Linux kernel LPE via AF_ALG/splice page-cache corruption. | Kitploit
Tools/GitHubGitHub/1m1ssher/copy-fail-python
Privilege EscalationVulnerability AnalysisExploitationLearning & EducationBinary Exploitation
GitHub1m1ssher/copy-fail-python

copy-fail-python

Zero-dependency Python PoC for CVE-2026-31431, Linux kernel LPE via AF_ALG/splice page-cache corruption.

View Repository
16 days agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

copy-fail-python

A compact, zero-dependency Python proof-of-concept for Copy Fail (CVE-2026-31431), a Linux kernel local privilege escalation through AF_ALG and splice() that corrupts the page cache of a readable file such as /usr/bin/su.

This is a port of the Theori PoC with two practical changes: the splice() syscall is invoked via ctypes instead of C, making it run on Python 3.7+ with nothing to compile, and the payload spawns a /bin/bash root shell rather than /bin/sh.

Affected Kernels

Branch

Check yours with uname -r. The exploit targets roughly kernels 4.9 through 6.18; patched distro kernels may be unaffected even within those ranges.

Usage

Nothing to install: the exploit uses only the Python standard library. You need read access to the target binary (readable SUID binaries are the usual target) and a vulnerable kernel.

root@kitploit:~
python3 copy_fail_exp.py /usr/bin/su

Expected output on a vulnerable host:

root@kitploit:~
[*] target: /usr/bin/su
[*] AF_ALG socket opened
[*] splicing page cache of target...
[*] page cache corrupted
[*] spawning root shell...
# whoami
root

Real output varies by kernel and timing. If the shell doesn't appear, re-run it; timing-dependent cache corruption sometimes needs a second attempt.

Requirements

RequirementWhy

References

  • Theori PoC and writeup
  • CVE-2026-31431, NVD

Disclaimer

Authorized testing and education only. Do not run this on systems you do not own or have explicit permission to test.

Download Tool
Affected versions
4.94.9.x
4.14–4.19All stable point releases
5.4–5.15All stable point releases
6.16.1.x
6.66.6.x
6.126.12.x (upstream-fixed range)
Python 3.7+ctypes splice implementation
Readable target binaryCache page to corrupt (e.g., /usr/bin/su)
Vulnerable kernelSee the affected-versions table above
Local user accountThis is a local privilege escalation