High Risk Security Hole Discovered In Qualcomm's GPU Driver

Written by Michael Larabel in Linux Security on 24 June 2014 at 02:17 AM EDT. 3 Comments
LINUX SECURITY
Rob Clark, the developer employed by Red Hat who has near single-handedly been developing Freedreno as a reverse-engineered, open-source GPU driver for Qualcomm's Adreno graphics hardware, made a big discovery. Rob was playing around with the Amazon Fire TV that boasts a Qualcomm SoC and runs on the Qualcomm proprietary graphics driver when discovering a "high risk" security issue.

Now that CVE-2014-0972 is public that was reported by Rob Clark, he can talk about this issue with the the Android kernel graphics code by Qualcomm. The issue comes down to unprivileged GPU command streams being able to change the IOMMU page table and thus is able to access arbitrary physical memory. "When using the per-process page table feature, IOMMU context registers, which control the physical location of the IOMMU page table in memory, are mapped into the GPU’s memory space and are not properly protected from write-access. Specifically, the register used by the GPU to switch an IOMMU page table during a context switch is not protected. An unprivileged local attacker can use this flaw to switch to a fake page table via a specially crafted GPU command stream and access arbitrary physical memory locations."


All active branches of the Qualcomm "KGSL" Android kernel driver are affected by this security issue. A patch to the KGSL code is available to address the issue. Qualcomm's graphics driver is open-source on the kernel side while their user-space portion is a binary blob. Freedreno, meanwhile, has a fully open-source kernel DRM driver and Gallium3D user-space driver.

Rob blogged about the KGSL security problem this morning on his blog. He was going to release a Fire TV jail-break using this GPU hole, but given that there's already other jailbreaks, this is no longer necessary. Rob ended up being able to install Fedora on his Amazon Fire TV.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week