Hugging Face模型安全:恶意Pickle文件伪装7z压缩绕过Picklescan检测,已植入200+开发环境

Hugging Face作为全球最大开源模型库(超400万开发者),正成为AI供应链攻击前沿阵地。该事件暴露了协作平台与安全的内在矛盾。
攻击技术细节:
Pickle文件滥用:Python标准库Pickle模块用于ML模型序列化,但其反序列化本质上执行任意Python代码。PyTorch默认依赖Pickle,使其成为隐藏恶意代码的完美载体。

Picklescan绕过:Hugging Face使用Picklescan工具基于黑名单机制检测危险函数(如os.system、subprocess等)。攻击者通过两层绕过:

压缩格式变异:PyTorch标准ZIP压缩改为7z格式,Picklescan无法解压

文件破损利用:在Pickle流末尾插入破坏字节,Picklescan验证失败后直接放行;但Python解释器按顺序执行,恶意代码已在文件破损前触发

隐藏负载:恶意代码位于序列化流开头,执行完毕后文件立即破损,迷惑检测工具

实战样本:

模型库”glockr1/ballr7″、”who-r-u0000/0000000000000000000000000000000000000″含反向Shell

植入IP地址:107.173.7.141(C2服务器)

影响范围:未知有多少开发者已下载这些模型集成到生产代码

防守层级:

平台级:Hugging Face升级Picklescan支持7z解压、检测破损文件;推广SafeTensors(安全格式)替代Pickle

开发者级:禁用不知名模型、启用模型签名验证、隔离模型加载进程、扫描依赖链中的Pickle文件

检测级:实施运行时沙箱,监控模型加载时的网络连接和进程创建行为

启示:民主化AI的代价是安全债务累积。每个Pickle文件都是潜在的”特洛伊木马”,黑名单防线正在瓦解。

Previous:

Next: