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 劫持, 大语言模型, 实时告警, 提示词工程, 模型优化, 策略决策点, 逆向工具, 配置审计