CVE-2019-3901
CWE-667Published: April 22, 2019· Updated: Jun 17, 2026
Official Description
A race condition in perf_event_open() allows local attackers to leak sensitive data from setuid programs. As no relevant locks (in particular the cred_guard_mutex) are held during the ptrace_may_access() call, it is possible for the specified target task to perform an execve() syscall with setuid execution before perf_event_alloc() actually attaches to it, allowing an attacker to bypass the ptrace_may_access() check and the perf_event_exit_task(current) call that is performed in install_exec_creds() during privileged execve() calls. This issue affects kernel versions before 4.8.
Technical Analysis
CVE-2019-3901 requires local access, meaning attackers must already have a foothold on the target system.
Exploitation requires low privileges, which limits the exposure to scenarios where an attacker has already gained initial access.
A successful exploit results in complete confidentiality breach (data exposure), with a CVSS base score of 4.7.
CVSS v3.1 Vector Breakdown
Affected Vendors & Products
Exploit & PoC Resources
Official Patches & Advisories
All References (10)
Quick Facts
Related CVEs (CWE-667)
Recommended Actions
- →Apply vendor patches immediately
- →Monitor CVE-2019-3901 in threat intel feeds
- →Review IDS/IPS signatures for exploitation attempts