Linux Kernel — OVSwrap: Open vSwitch Conntrack Local Privilege Escalation (CVE-2026-64531)
Published: 2026-08-15 • Researcher: HackSpeak
- Severity
- High
- CVE
- CVE-2026-64531
- Category
- binary
- Affected product
- Linux kernel, Open vSwitch (OVS) kernel module, conntrack subsystem
- Affected versions
- Linux kernels with the OVS kernel module loaded (version-specific; pre-derived offsets cover multiple distro kernels)
- Disclosed
- 2026-08-15
- Patch status
- Unverified
Tags
References
Archive entry
intelseclab/poc-archiveOn this page
Metadata
| Field | Value |
|---|---|
| Date Added | 2026-08-15 |
| Last Updated | 2026-08-15 |
| Author / Researcher | HackSpeak |
| CVE / Advisory | CVE-2026-64531 |
| Category | binary |
| Severity | High |
| CVSS Score | 7.8 (estimated, local LPE) |
| Status | Patched |
| Tags | linux, kernel, lpe, openvswitch, ovs, conntrack, netlink, memory-corruption, sudoers, CVE-2026-64531 |
| Related | pocs/binary/2026-08-15_cve-2026-64564-sctphantom-sctp-asconf-uaf-lpe/ (same author) |
Affected Target
| Field | Value |
|---|---|
| Software / System | Linux kernel, Open vSwitch (OVS) kernel module, conntrack subsystem |
| Versions Affected | Linux kernels with the OVS kernel module loaded (version-specific; pre-derived offsets cover multiple distro kernels) |
| Language / Platform | Python 3 (single-file exploit), targets x86-64 Linux with OVS kernel module |
| Authentication Required | Local unprivileged user |
| Network Access Required | None – local privilege escalation |
Summary
CVE-2026-64531 is a memory corruption vulnerability in the Linux kernel Open vSwitch (OVS) conntrack subsystem. The exploit, named OVSwrap, uses OVS Generic Netlink operations to corrupt conntrack timeout and labels carrier objects, establishing kernel read and write primitives. These primitives are then used to write a sudoers entry for the running user, granting passwordless root access.
The exploit is a single Python file (2,155 lines) that embeds pre-derived kernel offset tables for multiple distribution kernels (base85-compressed JSON). For uncovered kernels, it can dynamically derive offsets from locally readable BTF files, System.map, or /proc/kallsyms using pahole.
Vulnerability Details
Root Cause
The OVS kernel module processes conntrack actions via Generic Netlink. A vulnerability in the conntrack timeout/labels carrier handling allows an attacker to corrupt kernel memory through carefully crafted OVS flow operations. The exploit uses two carrier types (timeout and labels-only) to achieve controlled read and write access to kernel memory.
Exploitation Process
- Refuse root: The exploit verifies it is running as an unprivileged user without sudo access or effective capabilities.
- Kernel record lookup: Checks the running kernel against an embedded table of pre-derived offsets. Falls back to dynamic derivation via BTF/pahole/System.map if not covered.
- Namespace isolation: Creates private user and network namespaces via
unshare -Urn(with AppArmoraa-exec -p trinityfallback on Ubuntu). - OVS datapath creation: Sets up a private OVS datapath and flows via Generic Netlink.
- Conntrack corruption: Sends crafted conntrack actions to corrupt carrier objects, establishing kernel memory read/write primitives.
- Sudoers write: Uses the write primitive to add a sudoers entry granting the running user passwordless root.
- Root shell: Spawns
sudo -n bashto obtain a root shell.
Impact
Local privilege escalation from unprivileged user to root via sudoers policy modification. Requires the OVS kernel module to be loaded.
Environment / Lab Setup
| |
Proof of Concept
See
ovswrap-poc.py(2,155 lines, Python 3) in this folder – mirrored byte-for-byte from HackSpeak/CVE-2026-64531. The upstream README is preserved asupstream-README.md.
Step-by-Step Reproduction
- Ensure OVS module is loaded:
lsmod | grep openvswitch - Run as unprivileged user:
python3 ovswrap-poc.py - Acknowledge dynamic derivation if kernel is not in the pre-derived table.
- Observe: The exploit creates namespaces, establishes read/write primitives, writes a sudoers entry, and spawns a root shell.
Exploit Code
Kernel record lookup and namespace entry:
| |
Sudoers write for privilege escalation:
| |
Expected Output
***CHECKING BASELINE SUDO ACCESS***
baseline passwordless sudo for user: denied
***ENTERING PRIVATE USER AND NETWORK NAMESPACES***
namespace: direct unshare -Urn works
[exploit stages...]
RESULT: sudoers policy write achieved; spawning 'sudo -n /bin/bash' as user
root@host:~#Detection and Indicators of Compromise
Remediation
| Action | Detail |
|---|---|
| Patch | Apply the kernel fix for CVE-2026-64531. Check distribution security advisories for the specific patched kernel version. |
| Workaround | Unload the OVS kernel module if not needed (rmmod openvswitch). Disable unprivileged user namespaces. Restrict /sys/kernel/btf/ readability. |
| Verification | Audit /etc/sudoers and /etc/sudoers.d/ for unauthorized entries. Check for unexpected namespace creation in audit logs. |
References
Notes
Verified this session by reading the full exploit source (ovswrap-poc.py, 2,155 lines, first 1,033 lines in detail). The exploit is a single Python file using only standard library modules plus raw AF_NETLINK sockets for Generic Netlink communication. The embedded kernel offset table is base85-encoded, zlib-compressed JSON containing pre-derived structure offsets and symbol addresses for multiple distribution kernels.
Malware screen – clean. No obfuscated code, no remote downloaders, no credential exfiltration, no miners, no callbacks. The only persistence mechanism is the sudoers write (the intended exploitation outcome). All external process invocations are to standard system utilities (unshare, sudo, bash, pahole, aa-exec). The exploit explicitly refuses to run as root or with existing capabilities.
Author: HackSpeak describes itself as a “community PoC mirror” with 6 stars on this repo. The code references a blog post at heyitsas.im/posts/ovswrap for the full vulnerability analysis. Lower author confidence than the other entries but the code is legitimate, well-structured exploit research.