CVE-2021-35090
📋 TL;DR
This vulnerability allows a malicious application to potentially corrupt hypervisor memory through a Time-of-Check Time-of-Use (TOCTOU) race condition when updating address mappings in Qualcomm Snapdragon chipsets. It affects devices using Snapdragon Auto, Compute, Connectivity, Industrial IoT, and Mobile platforms. Successful exploitation could lead to hypervisor compromise and privilege escalation.
💻 Affected Systems
- Snapdragon Auto
- Snapdragon Compute
- Snapdragon Connectivity
- Snapdragon Industrial IOT
- Snapdragon Mobile
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete hypervisor compromise allowing attacker to escape virtualization, gain root privileges, execute arbitrary code, and potentially compromise the entire device including other virtual machines or containers.
Likely Case
Privilege escalation from a malicious application to hypervisor level, enabling data theft, persistence, and further system compromise.
If Mitigated
Limited impact if proper application sandboxing and hypervisor hardening are implemented, though the vulnerability still presents a significant security risk.
🎯 Exploit Status
Exploitation requires local access and ability to execute malicious code. The TOCTOU race condition makes timing critical for successful exploitation.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Refer to Qualcomm security bulletin for specific chipset firmware versions
Vendor Advisory: https://www.qualcomm.com/company/product-security/bulletins/may-2022-bulletin
Restart Required: Yes
Instructions:
1. Check device manufacturer for firmware updates. 2. Apply Qualcomm-provided firmware patches. 3. Reboot device to load patched firmware. 4. Verify patch installation through device firmware version checks.
🔧 Temporary Workarounds
Application Sandboxing Enhancement
allStrengthen application isolation and privilege separation to limit potential damage from compromised applications.
Hypervisor Hardening
allImplement additional hypervisor security controls and monitoring where supported by platform.
🧯 If You Can't Patch
- Isolate affected devices in network segments with strict access controls
- Implement application allowlisting to prevent unauthorized code execution
🔍 How to Verify
Check if Vulnerable:
Check device chipset model and firmware version against Qualcomm's advisory. Use device-specific commands like 'getprop ro.bootloader' or 'cat /proc/cpuinfo' on Android/Linux devices.
Check Version:
Android: getprop ro.bootloader || getprop ro.build.fingerprint; Linux: cat /proc/cpuinfo | grep -i qualcomm
Verify Fix Applied:
Verify firmware version has been updated to patched version specified by device manufacturer. Check for security patch level updates.
📡 Detection & Monitoring
Log Indicators:
- Hypervisor crash logs
- Unexpected privilege escalation attempts
- Memory corruption errors in system logs
Network Indicators:
- Unusual outbound connections from hypervisor/privileged processes
- Anomalous inter-VM communication patterns
SIEM Query:
source="kernel" AND ("hypervisor" OR "hv") AND ("crash" OR "panic" OR "corruption")