Physical memory disclosure via unsynchronized GPU page zeroing
Published Oct 12, 2022 · Updated May 15, 2025
Information disclosure in Qualcomm Snapdragon Adreno GPU components allows local users to read stale physical memory through GPU commands. CPU-only zeroing leaves backing pages unchanged until a cache flush, so a newly mapped GPU region exposes contents from another process or the kernel. An untrusted local app must submit GPU commands on an affected device; the reported effect is memory disclosure without modification or service interruption.
Summary
What happened
Information disclosure in Qualcomm Snapdragon Adreno GPU components allows local users to read stale physical memory through GPU commands. CPU-only zeroing leaves backing pages unchanged until a cache flush, so a newly mapped GPU region exposes contents from another process or the kernel. An untrusted local app must submit GPU commands on an affected device; the reported effect is memory disclosure without modification or service interruption.
The record
- CVE
- CVE-2022-25664
- Published
- Oct 12, 2022
- Updated
- May 15, 2025
- Vendor
- Qualcomm
- Product
- Snapdragon
- Classifications
- CWE-459, T1005
- Attack vector
- local
- Privileges
- unauthenticated
Timeline
How it unfolded
- Oct 12, 2022CVE publishedPublication date reported by the CVE source.
- May 15, 2025Record updatedLatest update available in the CVE record.
Exploitability
Present is not the same as exploitable
Compare your product and version with the public record. A matching version still requires validation against your environment.
Is a vulnerable build present?
Compare these published version ranges with your installed build and any vendor patches.
- Affected versionversion=APQ8009, APQ8052, APQ8053, APQ8056, APQ8076, APQ8096AU, AQT1000, MDM9150, MDM9650, MSM8108, MSM8208, MSM8209, MSM8608, MSM8952, MSM8953, MSM8956, MSM8976, MSM8976SG, MSM8996AU, QAM8295P, QCA6174A, QCA6310, QCA6320, QCA6335, QCA6390, QCA6391, QCA6420, QCA6421, QCA6426, QCA6430, QCA6431, QCA6436, QCA6564, QCA6564A, QCA6564AU, QCA6574, QCA6574A, QCA6574AU, QCA6595AU, QCA6696, QCA8337, QCC5100, QCM6125, QCS410, QCS605, QCS610, QCS6125, QCS8155, QSM8250, Qualcomm215, SA6145P, SA6150P, SA6155, SA6155P, SA8145P, SA8150P, SA8155, SA8155P, SA8195P, SA8295P, SD 8 Gen1 5G, SD205, SD210, SD429, SD660, SD820, SD821, SD835, SD845, SD855, SD865 5G, SD870, SD888 5G, SDA429W, SDM429W, SDX50M, SDX55, SDX55M, SDXR1, SDXR2 5G, SW5100, SW5100P, WCD9326, WCD9335, WCD9340, WCD9341, WCD9370, WCD9380, WCD9385, WCN3610, WCN3615, WCN3620, WCN3660B, WCN3680, WCN3680B, WCN3950, WCN3980, WCN3988, WCN3990, WCN3998, WCN6850, WCN6851, WCN6855, WCN6856, WCN7850, WCN7851, WSA8810, WSA8815, WSA8830, WSA8835
What conditions does exploitation require?
What is affected?
Published CVSS scores
CVSS describes severity. EPSS estimates exploitation probability.
Attacks
What attackers are doing with it
Daily unique IPs observed by Shadowserver honeypots for known exploited vulnerabilities (KEVs). Missing observations do not establish an absence of attacks.
Public exploit references
- Adreno GPU stale-page memory read proof of conceptproof of concept · demonstrated
Labels summarize the accepted research assessment. They do not indicate a test against your environment.
Technologies
Your stack
See the directory against your own environment.
Your stack
Check the software in your environment
Book a demo to see how Hinoki identifies affected software and validates exploitability in your environment.
Book a demo