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.
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2019-3901.json"
[
{
"events": [
{
"introduced": "0"
},
{
"fixed": "4.8"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "8.0"
}
]
},
{
"events": [
{
"introduced": "9.5"
}
]
},
{
"events": [
{
"introduced": "7.2"
}
]
},
{
"events": [
{
"introduced": "7.2"
}
]
},
{
"events": [
{
"introduced": "7.2"
}
]
}
]