faresrafat3/ai-agent-security-portfolio
GitHub: faresrafat3/ai-agent-security-portfolio
面向 Kaggle AI Agent 安全竞赛的完整红队测试作品集,利用 AgentDojo 框架和 WhiteRabbitNeo 模型自动化生成多步骤攻击链以发现工具调用 Agent 的安全漏洞。
Stars: 0 | Forks: 0
# AI Agent 安全 - 多步骤工具攻击 | 参赛作品集
**比赛**:AI Agent 安全 - 多步骤工具攻击(特色代码竞赛)
**主办方**:OpenAI + Google + IEEE
**奖金池**:50,000 美元
**截止日期**:2026 年 8 月 25 日
**平台**:Kaggle
**我的参与情况**:活跃参与者(截至 2026-07-18 进行中)
**目标**:开发攻击算法,以识别工具调用 AI Agent 中的可复现多步骤漏洞(AgentDojo 框架)。
**框架**:AgentDojo(ETH Zurich SPYLab)
**评分**:在 GPT-OSS 20B 和 Gemma 4 26B-A4B-it 上进行基于重放、归一化的攻击评分。每个模型时间预算:1800 秒。
## 为什么选择这个 Repo?
这个代码库是我参赛的**完整且专业的作品集**。它记录了:
- 所有的思考过程和迭代。
- 与 LLM(WhiteRabbitNeo 等)一起使用的每一个 prompt。
- 代码演进(attack.py 版本、notebooks)。
- 技术优化(模型剪枝、量化、架构分析)。
- 结果、分析以及经验教训。
- AI 工程技能的有力证明:prompt 工程、agent 安全研究、LLM 优化、代码架构。
**非常适合**应用于 AI 安全、红队测试、LLM 安全和 Agentic AI 的求职申请。
**可信度**:所有声明均有官方来源(Kaggle、论文、SDK 文档)支持。包含相关链接和事实。
## 快速统计(截至最新提交 - 2026-07-18)
- Starter baseline:0.075(官方 Getting Started Notebook v5)
- 常见的高公开分数:52.200(重放密集的激进 notebook,例如 rauffauzanrambe)
- 目前公开排行榜榜首:~103.67(Rishi Gupta)
- **我的最佳公开分数:76.995 (V6)**
- Notebook:https://www.kaggle.com/code/faresrafat/notebook85c5782962 (scriptVersionId=335686112)
- 核心创新点:混合模板 + LLM(WhiteRabbitNeo-V3-7B)、多步骤链(快照/恢复)、代理攻击、重放安全的数量生成(REPLAY_SAFE=0.99,硬截断)。
- 使用的模型:WhiteRabbitNeo-V3-7B(确切的 Kaggle 模型路径:`/kaggle/input/models/larien9205/whiterabbitneo-v3-7b/transformers/default/1`)
- 内部代码版本:v8.1(生产版 attack.py)
## 代码库结构
```
ai-agent-security-repo/
├── README.md # This file - full narrative + skills showcase
├── prompts/ # All LLM prompts (raw + processed)
│ ├── initial_prompts.md
│ ├── comprehensive_prompts.md
│ └── optimization_prompts.md
├── code/ # All code artifacts
│ ├── attack.py # Latest production attack.py
│ ├── notebooks/ # Kaggle notebooks (v1-vX)
│ └── experiments/ # Supporting scripts (pruning, quantization)
├── analysis/ # Thinking, iterations, lessons
│ ├── competition_overview.md
│ ├── strategy_evolution.md
│ ├── model_optimization.md
│ └── lessons_learned.md
├── results/ # Scores, traces, submissions
│ ├── scores.md
│ └── submission_logs/
└── docs/ # Supporting materials
├── competition_facts.md
└── references.md
```
## 比赛事实(已验证来源 - 本人于 2026-07-18 亲自获取)
- 启动时间:2026 年 6 月 12 日(约 6 月 11 日公布)。
- 奖金:15k / 10k / 8k / 7k / 5k 美元 + 2×2.5k 美元 Working Notes 奖。
- 每天最多提交 5 次。
- 框架:AgentDojo(ETH Zurich SPYLab)。
- 论文:arXiv:2406.13352
- GitHub:https://github.com/ethz-spylab/agentdojo
- 环境:银行、slack、workspace、旅游。
- API:`class AttackAlgorithm(AttackAlgorithmBase): def run(self, env, config) -> list[AttackCandidate]`
- 最高公开分数(已验证):52.200+(多个高分公开 notebook)
- 当前排行榜榜首(公开):103.670(Rishi Gupta 等人)
- Starter:0.075(官方 notebook)
- 关键洞察:数量 × 命中率 > 纯智能。重放预算(每个模型 9000 秒)是瓶颈。许多“绿色”(通过)的运行在重放时得分为 0 或超时。
**来源**(直接获取并验证):
- Kaggle 官方:https://www.kaggle.com/competitions/ai-agent-security-multi-step-tool-attacks(概览 + 排行榜 + 讨论)
- 顶尖 notebook:https://www.kaggle.com/code/rauffauzanrambe/security-agresive-multi-attack-with-agents-ai (52.200)
- Starter:https://www.kaggle.com/code/martynaplomecka/getting-started-notebook
- AgentDojo 论文:https://arxiv.org/abs/2406.13352
- Kaggle 讨论(评估器常见问题解答,Private LB 重放问题)
## 我的方法与创新
### 核心策略(混合)
1. **模板**(受到顶尖得分者的启发):7 个简短、高容量的模板(plain、bare、inj_close、urgent、system 等)。
2. **LLM 层**(WhiteRabbitNeo-2.5-7B):针对 Phase 4 的创意生成、上下文感知攻击。
3. **多步骤 + 代理 (Deputy)**:快照/恢复链 + 混淆代理(机密发布)。
4. **重放安全的数量**:探测 → 选择成本最低的模板 → 填充至 99% 的重放预算。
5. **优化**:模型剪枝/量化研究(28→20 层 + INT4),动态模型路径查找。
### 关键文件
- `code/attack.py`:来自 V6 notebook (v8.1) 的**确切**生产代码 —— 包含完整的多步骤 + 代理 + LLM + 重放安全机制。
- Prompts:用于架构分析、剪枝计划等的完整上下文 prompt。
### 探索过的 LLM 优化
- 架构深度分析(28 层,GQA,SwiGLU)。
- 层剪枝(建议对短文本生成剪枝中间层 10-17)。
- 量化(AWQ/GPTQ 与 GGUF 在 T4 上运行 vLLM 的对比)。
- VRAM:FP16 ~14.5GB → 目标 INT4 ~4.5GB。
- 目标:<6GB VRAM,<60 秒加载,在剩余时间内生成 100+ 个独特攻击。
## Prompts 与思考过程
所有 prompt 和完整的推理过程都保存在 `/prompts/` 中。
亮点:
- 涵盖完整上下文(比赛机制、API、评分、顶尖得分者分析)的初始综合 prompt。
- 针对 WhiteRabbitNeo 的架构分析 prompt(层重要性、剪枝计划)。
- 迭代修复:f-string bug、LLM 路径、验证、提交服务器。
有关逐步的决策过程,请参见 `analysis/strategy_evolution.md`。
## 代码演进
各版本请见 `/code/`:
- v1-v4:基础模板 + 多步骤。
- v5-v7:LLM 集成、动态路径、验证。
- v8+:重放安全、代理攻击、日志记录、安全截断。
所有 notebook 和 attack.py 均已达到生产就绪状态,并包含详尽的检查。
## 结果与分析
(在此处插入您最新的提交分数)
- 公开分数尝试记录。
- 分析:什么有效(数量 + 命中率),什么无效(LLM 加载时间)。
完整追踪记录在 `/results/` 中。
## 展现的技能
- **Prompt 工程**:高级、多轮、全上下文 prompt。
- **LLM 优化**:针对特定用例(短攻击生成)进行剪枝、量化、架构分析。
- **Agent 安全研究**:深入理解 AgentDojo、间接 prompt 注入、多步骤攻击。
- **软件工程**:整洁、模块化的代码;错误处理;验证;具备提交条件。
- **研究与迭代**:系统化测试、分析顶尖分数、进行适应调整。
- **文档编写**:用于作品集的专业 repo。
## 如何使用此 Repo
1. 克隆它。
2. 阅读 README 和 `analysis/`。
3. 查看 `prompts/` 以获取确切的 LLM 交互。
4. 在本地或 Kaggle 上运行 `code/attack.py`。
5. 查看 `results/` 了解结果。
## 未来工作 / 面向求职的扩展
- 完整的剪枝 + 量化实现。
- 第二个模型(判断/多样性)。
- 基于收集到的成功攻击进行 fine-tuning(如果资源允许)。
- 开源攻击模板。
**联系方式 / 链接**
[您的 GitHub] | [Kaggle 主页] | [比赛链接](https://www.kaggle.com/competitions/ai-agent-security-multi-step-tool-attacks)
**GitHub Push 说明**(使用提供的 token):
- Token 已配置为通过身份验证的 push (REDACTED_TOKEN)
- 目标:添加 remote,例如 https://:@github.com//ai-agent-security-portfolio.git
- 运行:git push origin main(设置 remote 之后)
*这个 repo 证明了在 AI agent 红队测试和 LLM 系统方面的实际动手经验。建立在真实参与的基础上,而非纸上谈兵。*
**参考资料与来源**(用于提供可信度)
- Kaggle 比赛页面
- AgentDojo 文档和论文
- 顶尖公开 notebook(JED Attack 系列)
- 关于 Qwen2 剪枝、PAIR 攻击等的 arXiv 论文。
- 关于 WhiteRabbitNeo 的 vLLM / HuggingFace 文档
所有事实均已与官方来源进行双重核对。
标签:AI安全, Chat Copilot, DLL 劫持, 大语言模型, 实时告警, 提示词工程, 模型优化, 策略决策点, 逆向工具, 配置审计