目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2024-3568 PoC — Hugging Face Transformers 代码问题漏洞

来源
关联漏洞
标题: Hugging Face Transformers 代码问题漏洞 (CVE-2024-3568)
Description:Hugging Face Transformers是为 Jax、PyTorch 和 TensorFlow 打造的先进的自然语言处理。 Hugging Face Transformers存在代码问题漏洞,该漏洞源于容易通过 TFPreTrainedModel() 类的 load_repo_checkpoint() 函数中反序列化不受信任的数据来执行任意代码。
Description
This study analyzes Python pickle deserialization vulnerabilities, focusing on CVE-2024-3568 in Hugging Face Transformers' TFAutoModel. We reproduce the exploit to examine its root cause, attack vectors, and risks.
介绍
# Transformers 中的 pickle 反序列化漏洞利用

## 实验简介
介绍pickle 反序列化机制及其__reduce__攻击原理,复现 Hugging Face Transformers 库中的反序列化漏洞[CVE-2024-3568](https://github.com/llm-sec/transformer-hacker/tree/main/docs/CVE-2024-3568),分析 Transformers 库中的安全隐患并提出安全加固的有效方案。**详细内容参见实验PDF文档**。

(poc作者代码详见[CVE-2024-3568](https://github.com/llm-sec/transformer-hacker)或者**author_inf**文件夹)

## 关键信息
1. **漏洞位置**
`TFAutoModel.load_repo_checkpoint()` 方法(Transformers ≤ v4.37.2)

2. **攻击原理**
恶意检查点中的 `extra_data.pickle` 文件通过 `pickle.load()` 反序列化时触发RCE

3. **影响范围**
- Transformers 库 ≤ v4.37.2
- 使用检查点恢复功能的AI应用

## 环境配置
```bash
# 详细配置说明见实验PDF
pip install transformers==4.37.2 tensorflow
git clone https://github.com/llm-sec/transformer-hacker
```

## pickle 反序列化机制

详见PDF文档。

test.py、test2.py涉及原理分析(由AI问小白辅助,感谢技术突破带来的生产力提升)。

## 漏洞复现

1. **恶意检查点生成**
(具体命令见PDF文档)

2. **漏洞触发**
(代码示例见PDF文档)

3. **攻击验证**
(验证方法见PDF文档)

## 防御方案
1. **升级Transformers至≥v4.38.0**
2. **禁用`load_repo_checkpoint()`方法**
3. **实施检查点文件校验**

> **详细技术分析**:
> 完整漏洞原理、利用过程和防御策略请参考实验PDF文档
> **POC实现**:poc作者代码详见[CVE-2024-3568](https://github.com/llm-sec/transformer-hacker)或者**author_inf**文件夹
文件快照

登录后查看神龙缓存的 POC 文件快照

登录查看
备注
    1. 建议优先通过来源进行访问。
    2. 本地 POC 快照面向订阅用户开放;当原始来源失效或无法访问时,本地镜像作为订阅权益的一部分提供。
    3. 持续抓取、验证、维护这份 POC 档案需要不少投入,因此本地快照已纳入付费订阅。您的订阅是让这份资料能继续走下去的关键,由衷感谢。 查看订阅方案 →