CVE-2024-46971

7.8 HIGH

📋 TL;DR

This vulnerability allows non-privileged users to exploit GPU driver flaws to read and write freed physical memory from the GPU. This affects systems using Imagination Technologies GPU drivers where unprivileged GPU access is permitted. Attackers could potentially access sensitive data or execute arbitrary code.

💻 Affected Systems

Products:
  • Imagination Technologies GPU drivers
Versions: Specific versions not detailed in reference; check vendor advisory for affected versions
Operating Systems: Linux, Android, Other systems using Imagination GPU drivers
Default Config Vulnerable: ⚠️ Yes
Notes: Affects systems where non-privileged users have GPU access permissions. Embedded systems, mobile devices, and IoT devices using Imagination GPUs may be particularly vulnerable.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Full system compromise via arbitrary code execution, privilege escalation to root/kernel, and complete data exfiltration from GPU-accessible memory regions.

🟠

Likely Case

Information disclosure of sensitive data from GPU memory, potential for limited code execution within GPU context, and system instability.

🟢

If Mitigated

Limited impact with proper access controls, but potential for denial of service or information leakage if GPU access is restricted but not eliminated.

🌐 Internet-Facing: LOW - Requires local access or ability to execute code on target system.
🏢 Internal Only: HIGH - Any user with local access could potentially exploit this vulnerability to escalate privileges or access sensitive data.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires local access and ability to execute GPU system calls. Exploitation involves manipulating GPU memory management.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Check Imagination Technologies advisory for specific patched versions

Vendor Advisory: https://www.imaginationtech.com/gpu-driver-vulnerabilities/

Restart Required: Yes

Instructions:

1. Check Imagination Technologies advisory for affected versions. 2. Update GPU drivers to patched version from vendor. 3. Reboot system to load new drivers. 4. Verify GPU functionality post-update.

🔧 Temporary Workarounds

Restrict GPU Access

linux

Limit GPU system call access to privileged users only

chmod 750 /dev/gpu*
setfacl -m u:root:rwx,g:video:rx,o:- /dev/gpu*

Disable Unprivileged GPU

linux

Prevent non-privileged users from accessing GPU resources

echo 'kernel.gpu.unprivileged_access = 0' >> /etc/sysctl.conf
sysctl -p

🧯 If You Can't Patch

  • Implement strict access controls to limit GPU device access to trusted users only
  • Monitor for unusual GPU system call activity and implement application whitelisting

🔍 How to Verify

Check if Vulnerable:

Check GPU driver version against Imagination Technologies advisory. Review system logs for GPU access by non-privileged users.

Check Version:

modinfo gpu_driver_module | grep version

Verify Fix Applied:

Verify GPU driver version matches patched version from vendor. Test that non-privileged users cannot execute GPU system calls.

📡 Detection & Monitoring

Log Indicators:

  • GPU system calls from non-root users
  • Permission denied errors for GPU device access
  • Unusual GPU memory allocation patterns

Network Indicators:

  • Not applicable - local exploitation only

SIEM Query:

source="kernel" AND ("GPU" OR "gpu") AND user!="root"

🔗 References

📤 Share & Export