Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
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.

FeedsContactPrivacy© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
Tools/GitHubGitHub/imeiplus/cve-2026-23111-poc
Privilege EscalationMemory ForensicsVulnerability AnalysisExploitationLearning & EducationBinary Exploitation
GitHubimeiplus/cve-2026-23111-poc

CVE-2026-23111-PoC

Working local privilege escalation exploit for CVE-2026-23111, a use-after-free in the Linux kernel nf_tables subsystem, with KASLR bypass and ROP chain for kernel 6.12.x.

View Repository
12 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

CVE-2026-23111_exploit

CVE-2026-23111 — Linux Kernel nf_tables UAF → LPE

A working local-privilege-escalation exploit for CVE-2026-23111, a use-after-free in the Linux kernel nf_tables subsystem. Tested on linux-6.12.69 (x86-64).

Target requirements

The exploit assumes a target kernel built with:

OptionValueWhy
CONFIG_NF_TABLESyvulnerable subsystem
CONFIG_USER_NSydrive nf_tables unprivileged (user+net namespace)
CONFIG_RANDOMIZE_BASEyKASLR — defeated at runtime (Phase 1)
CONFIG_MEMCGyobjects land in kmalloc-cg-* caches (assumed by the spray)
CONFIG_STATIC_USERMODEHELPERnmodprobe_path must be writable
SLAB_FREELIST_RANDOM / HARDENEDnLIFO freelist keeps reclaim reliable

Offsets in offsets.h are specific to one kernel build — regenerate them for any other kernel


Repository layout

FilePurpose
exp.cThe exploit (Phases 1 → 4).
rootme.cTiny static setuid(0); execl("/bin/sh") helper used to land a root shell.
netlink_min.hMinimal Netlink definitions (built against musl, no kernel uapi headers).
offsets.hkbase-relative symbol/gadget offsets for the target kernel.
gen_offsets.shRegenerates offsets.h from a kernel System.map / vmlinux.
MakefileBuilds exp and rootme as static musl ELFs.

Build

Requires musl-gcc (sudo apt install musl-tools).

make          # builds exp + rootme (static ELFs)
make clean    # remove built binaries

Both binaries are static so they run inside a minimal busybox initramfs with no shared libs. exp expects rootme next to it at /cve-2026-23111-poc/ on the target.


Porting to another kernel

offsets.h is generated from a specific build. For a different vmlinux:

make offsets SYSTEM_MAP=/path/to/System.map

gen_offsets.sh extracts symbols (single_start, modprobe_path, init_ipc_ns, msleep, memcpy, …) and ROP gadgets, all as offsets from the kernel base. You will also need to re-verify the struct offsets baked into exp.c (nft_chain layout, nft_expr_ops.validate, init_ipc_ns + 0x110, msg_queue.q_messages, xa_node.slots) with pahole / disassembly if your kernel differs meaningfully from 6.12.x.


Disclaimer

This code is published for defensive security research and education. It targets a lab VM running a known-vulnerable kernel. Do not use it against systems you do not own or are not authorized to test. The author assumes no liability for misuse.

Download Tool