Demand for graphics processing units (GPUs) has exploded in recent years as video rendering and artificial intelligence systems expand the need for processing power. While most of the most visible shortages (and stock price inflation) relate to top-end PC and server chips, mobile graphics processors are the versions that everyone with a smartphone uses every day. As such, vulnerabilities in these chips and how they are implemented can have real-world implications. This is why Google’s Android vulnerability hunting red team set its sights on open-source software from chip giant Qualcomm, which is widely used to implement mobile GPUs.
At the Defcon security conference in Las Vegas on Friday, three Google researchers announced at least nine now-fixed vulnerabilities they discovered in Qualcomm’s Adreno GPU, a software suite used in Qualcomm-powered smartphones to coordinate GPUs with operating systems like Android. These “drivers” are an integral part of computer design, and are deeply empowered to coordinate hardware peripherals and software within the kernel of the operating system. Attackers could exploit the flaws the researchers found to take complete control of the device.
For years, engineers and attackers alike have focused most on potential vulnerabilities in a computer’s central processing unit (CPU), optimizing the efficiency of the GPU and relying on it for raw processing power. But as GPUs become more central to everything devices do all the time, hackers on both ends of the spectrum are considering how they can exploit GPU infrastructure.
“Compared to the entire Android ecosystem, we’re a small team. The scope is too broad to cover everything, so we need to identify what will have the most impact,” said Xuan Xing, Android Red Team Manager at Google. “So why did we focus on the GPU driver in this case? Because untrusted apps don’t need permission to access the GPU driver. This is very important and I think it will attract the attention of many attackers.”
Xing is referring to the fact that applications on Android phones can communicate directly with the Adreno GPU driver, in his words, “without sandboxing or additional permission checks.” This in itself doesn’t give applications any ability to misbehave, but the GPU driver is a bridge between the regular parts of the operating system (where data and access are carefully controlled) and the system kernel, which has complete control over the entire device, including memory. “The GPU driver has all kinds of powerful capabilities,” Xing says. “Mapping into memory is a powerful primitive that attackers covet.”
The researchers say that all of the vulnerabilities they found are flaws that arise from the complexity and intricate interconnections that GPU drivers have to deal with to coordinate everything. To exploit the flaws, an attacker would first need to establish access to the target device, for example by tricking a victim into sideloading a malicious app.
“With a lot of moving parts and no access restrictions, the GPU driver is easily accessible to almost any application,” said Eugene Rodionov, technical lead for the Android Red Team. “The real problem here is the complexity of the implementation, which is one of the causes of many vulnerabilities.”
Qualcomm has released patches for the flaws to “original equipment manufacturers” (OEMs) that use Qualcomm chips and software in their Android phones. “For the GPU issues disclosed by the Android Security Red Team, patches were provided to OEMs in May 2024,” a Qualcomm spokesperson told WIRED. “We encourage end users to apply security updates from their device manufacturers as soon as they are available.”
The Android ecosystem is complex, with patches having to be sent from vendors like Qualcomm to OEMs, then packaged and delivered to users’ phones by individual device manufacturers. This trickle-down process can sometimes leave devices vulnerable, but Google has invested years into improving these pipelines and streamlining communications.
Still, the findings are a reminder that the GPU itself, and the software that supports it, could become a key battleground in computer security.
“The complexity of implementation combined with ease of access makes it a very attractive target for attackers,” Rodionov said.