Vigil@nce - Linux kernel: privilege escalation via ARM/perf_event
September 2013 by Vigil@nce
This bulletin was written by Vigil@nce : http://vigilance.fr/offer
SYNTHESIS OF THE VULNERABILITY
A local attacker can use the perf_event_open() system call on an
ARM processor, with a special group of events, in order to
escalate his privileges.
Impacted products: Fedora, Linux
Severity: 2/4
Creation date: 19/08/2013
DESCRIPTION OF THE VULNERABILITY
The perf_event_open() system call opens a file descriptor, in
order to monitor performances. It exists when the kernel is
compiled with CONFIG_PERF_EVENTS.
On an ARM processor, the validate_event() function of the
arch/arm/kernel/perf_event.c file validates every group event.
However, if it is an hardware (not software) event, a function
pointer is incorrectly used.
A local attacker can therefore use the perf_event_open() system
call on an ARM processor, with a special group of events, in order
to escalate his privileges.
ACCESS TO THE COMPLETE VIGIL@NCE BULLETIN
http://vigilance.fr/vulnerability/Linux-kernel-privilege-escalation-via-ARM-perf-event-13288