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
packet_edit_meme — PACKET_EDIT_MEME.c (aka CVE-2026-46331): yet another page cache poisoning nightmare | Kitploit
Tools/GitHubGitHub/sgkdev/packet_edit_meme
Privilege EscalationVulnerability AnalysisExploitationPost-ExploitationPenetration TestingRed TeamingBinary Exploitation
GitHubsgkdev/packet_edit_meme

packet_edit_meme

PACKET_EDIT_MEME.c (aka CVE-2026-46331): yet another page cache poisoning nightmare

View Repository
137452 months agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

PACKET_EDIT_MEME - aka CVE-2026-46331

net/sched act_pedit partial-COW page-cache corruption (culprit 899ee91156e5, present v5.18 .. fixed v7.1-rc7). packet_edit_meme.c turns it into unprivileged local root: a userns CAP_NET_ADMIN child overwrites the cached ELF entry of setuid-root /bin/su with setgid(0)+setuid(0)+execve("/bin/sh") shellcode.

root@kitploit:~
make                     
./packet_edit_meme         
./packet_edit_meme --ubuntu  # AppArmor-gated Ubuntu: aa-exec bypass first

Targets (verified 2026-06, unprivileged user -> root)

DistroKernelFlagResult
RHEL 10.06.12.0-228.el10(none)ROOT
Debian 13 trixie6.12.90+deb13.1(none)ROOT
Ubuntu 24.04.46.17.0-22--ubuntuROOT
Ubuntu 26.047.0.0-14-generic--ubuntuFAIL

RHEL / Debian: unprivileged userns is open by default, no flag needed. RHEL ships no cls_basic / em_meta, so the primitive falls back to matchall automatically.

Ubuntu AppArmor gate

Ubuntu denies unconfined unprivileged userns via two sysctls:

root@kitploit:~
kernel.apparmor_restrict_unprivileged_userns       # denies unconfined userns creation
kernel.apparmor_restrict_unprivileged_unconfined   # forces unconfined change_profile to STACK,
                                                   # so an aa-exec permissive profile cannot
                                                   # shed the userns restriction

--ubuntu re-execs via aa-exec -p {trinity,chrome,flatpak} (profiles that carry a userns, rule).

root@kitploit:~
24.04.4 : userns=1, unconfined=0  -> aa-exec bypass WORKS
26.04   : userns=1, unconfined=1  -> aa-exec bypass CLOSED
Download Tool