isheng-eqi/agentfuzz

GitHub: isheng-eqi/agentfuzz

AgentFuzz 是一个基于 LangGraph 的 AI Agent 红队测试引擎,通过自适应多轮攻击图自动发现 Agent 系统的安全漏洞。

Stars: 0 | Forks: 0

# AgentFuzz AI agent red-teaming engine — 用 LangGraph 构建的**自适应攻击图**,自动测试 AI agent 的安全性。 不是跑固定探针列表,而是像真正的攻击者一样:侦察 → 规划 → 攻击 → 分析 → 调整 → 再攻击。 ## 为什么做这个 | 现有工具 | 局限 | |----------|------| | Garak / Promptfoo / Augustus | 测的是**LLM端点**,不是**agent系统** | | 它们的方法 | 预定义探针库,单轮请求 → 二元判断 | | AgentFuzz的方法 | 自适应多轮攻击,观察agent的工具调用链和决策偏差 | 覆盖 **OWASP Agentic Top 10** + **OWASP LLM Top 10** 两大标准。 ## 快速开始 # 安装 pip install -e . # 用内置 mock agent 测试(验证工具本身是否工作) agentfuzz test --adapter mock -v # 列出可用的攻击向量 agentfuzz list-attacks # 测试真实的 HTTP agent agentfuzz test --adapter http --url https://your-agent-api.com --api-key sk-xxx ## 架构 CLI → [LangGraph 攻击引擎] → [目标适配器] → 被测 Agent │ ├── 侦察 (Recon): 了解目标行为 ├── 规划 (Plan): 选攻击向量 ├── 攻击 (Attack): 发 payload ├── 分析 (Analyze): 判断结果 ├── 判断 (Judge): 决定下一步 └── 报告 (Report): Markdown + JSON ### 攻击向量 | ID | 名称 | 严重度 | |----|------|--------| | ASI01 | Agent Goal Hijack | CRITICAL | | LLM01 | Prompt Injection | CRITICAL | | ASI02 | Tool Misuse | HIGH | | LLM07 | System Prompt Leakage | HIGH | ### 添加新攻击向量 在 `src/agentfuzz/attacks/knowledge/` 下创建 YAML 文件即可,无需改代码: id: MY001 name: My Custom Attack owasp: CUSTOM severity: high description: 描述这个攻击向量的原理 tactics: - name: my-tactic description: 战术描述 seed_payloads: - "攻击 payload 1" - "攻击 payload 2" indicators_of_success: - 成功标志1 - 成功标志2 ### 自定义适配器 继承 `TargetAdapter` 协议,实现三个方法: class MyAdapter: async def send_message(self, message: str) -> str: ... async def get_tool_calls(self) -> list[ToolCall]: ... async def reset(self) -> None: ... ## 开发 # 安装开发依赖 pip install -e ".[dev]" # 运行测试 pytest -v ## License MIT
标签:AI智能体, DLL 劫持, LangGraph, 大语言模型, 安全规则引擎, 文档结构分析, 红队评估, 自动化攻击, 逆向工具