CVE-2023-6931 is an out-of-bounds write vulnerability in the Linux kernel Performance Events subsystem. An overflow of a perf event's read_size in perf_read_group() can cause an increment or write outside the intended heap buffer, including before or beyond its bounds.
Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.
What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.
What an attacker gets, and what they’ve been doing with it.
If you can’t patch tonight, do this now.
Patch, then assume compromise.
2 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos.
The repository contains five files: a Chinese README, a Bash build wrapper, and a three-file Frida-based second stage written in Bash, Python, and JavaScript. The README describes CVE-2023-6931 exploitation against Xiaomi Pad 6/pipa on HyperOS OS2.0.20.0.UMZCNXM with a 4.19.157-perf kernel. Its documented first stage uses a perf-event group-read overflow to corrupt a netlink socket destructor, pivot kernel control flow, call `commit_creds(&init_cred)`, and decrement the SELinux enforcing state. However, the claimed `exploit.c`, symbol headers, shipped binary, and checksum file are not present in the supplied five-file archive; consequently, the kernel exploit itself cannot be independently verified from this content. The included operational code is the second stage. `exp_forge_send.sh` uses ADB to deploy Frida, starts it by writing a command into `/data/local/tmp/root_in`, forwards local TCP/27042, and targets the Settings process. `frida_run.py` attaches or spawns the target package through Frida's remote TCP device API and records agent output. `forge_send.js` runs within Settings, harvests account/device identifiers, requests nonces, obtains a hardware/TEE-backed `MiuiFidSigner` signature, and submits signed `/v1/unlock/applyBind` requests. It cycles legacy-looking `rom_version` values and optionally retries against the international Xiaomi endpoint. This is not a detection-only repository and no destructive/fake behavior is evident, but stage 2 depends on the undocumented/absent stage-1 root primitive and external Frida artifacts.
This repository contains a proof-of-concept (PoC) exploit for CVE-2023-6931, a heap buffer overflow vulnerability in the Linux kernel's perf_event subsystem. The exploit is implemented in C (PoC.c) and is designed to trigger a kernel panic by exploiting an integer overflow in the calculation of the read_size for a perf event group. The PoC works by creating a group leader perf event with all possible read_format options, then adding a large number of sibling events. This causes the group leader's read_size to overflow, leading to a small buffer allocation and a subsequent heap buffer overflow when reading event data. The README.md provides a detailed explanation of the vulnerability, the requirements for successful exploitation (including kernel configuration and system limits), and the technical details of the attack. The exploit requires local access to the system and appropriate permissions to interact with the perf_event subsystem. The only fingerprintable endpoint is the kernel configuration file /proc/sys/kernel/perf_event_paranoid, which must be set to 1 or lower. The repository is structured simply, with a single C source file for the exploit and a comprehensive markdown README.
Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.
Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.
18 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.
Vulnerability addressed by the AlmaLinux 9.2 TuxCare advisory.
A vulnerability included in the TuxCare AlmaLinux 9.2 kernel security update advisory.
Linux kernel out-of-bounds write in perf_read_group() caused by perf_event read_size overflow.
Linux kernel out-of-bounds write in perf_read_group() caused by overflow of a perf_event read_size.
Query your assets running an affected version, and investigate the blast radius.
Every observed campaign linking this CVE to a named adversary.
Malware families riding this exploit, with evidence and IOCs.
YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.
Cross-references every affected SKU, including bundled OEM variants.
Community discussion across Reddit, Mastodon, and other social sources.