adithyan-ak/AgentHound

Offensive security framework for AI agent infrastructure - recon, credential looting, model exfiltration, poisoning, and attack-path analysis across MCP, A2A, gateways, and AI services. BloodHound for the agentic stack.

AgentHound – 面向 AI-代理基础设施的进攻性安全框架

是什么 – AgentHound 是一个开源工具,允许红队操作员枚举、验证并攻击现代 LLM 驱动的助手(Claude、Cursor、VS Code 扩展、Ollama、LiteLLM、Qdrant、MLflow、Jupyter 等)所依赖的整个“代理栈”。它从被攻陷主机的立足点启动,收集配置文件、密钥和可访问的 AI 服务,重用任何发现的凭据,验证真实访问权限,并将所有信息存储为单一的、带检查点的 JSON 资产。可选的服务器可摄入该资产,并通过 Web UI 展示基于图的攻击面,包括凭据链、执行和数据外泄路径,以及风险评分。


核心工作流

  1. 在被攻陷机器上部署静态收集器(单个二进制文件,无数据库或运行时依赖)。
  2. 运行 agenthound scan – 收集器收集本地代理配置、环境密钥、回环服务,以及(可选)网络范围。它会指纹识别 AI 服务,重用任何捕获的 API 密钥或令牌,并执行 验证过的 读取(先匿名,再凭据化)以证明访问权限。
  3. 生成 JSON 资产,其中包含每个凭据、服务指纹、访问证明,以及每一步后的检查点。
  4. (可选)在另一台机器上启动分析服务器,摄入资产,通过 Web UI 探索基于 Neo4j 的攻击图。该图展示可访问资源、执行能力、数据外泄路径、跨协议跳板,以及被污染的指令文件。

主要功能

功能 说明
立足点优先的自主收集 无需远程数据库,即可提取本地代理配置文件、指令文件、环境变量、回环服务,以及显式提供的网络范围。
原始凭据捕获与重用 将 API 密钥、承载令牌、Jupyter 令牌、主密钥等具体密钥去重存储,并立即尝试在同一次扫描中发现的任何兼容服务上使用。
基于证明的访问验证 先执行匿名读取;若失败,则使用凭据重试。凭据读取成功即记录为 扫描期间已验证 的证据。
可逆的主动验证 对于 ContextForge 管理的工具,写入临时标记,通过 MCP 读回,再恢复原始状态,在继续前确认回滚成功。
全谱系代理表面映射 检测并列出 MCP、A2A、十二种代理-客户端配置格式、模型网关、推理服务器、向量存储、模型注册表、笔记本和 Web 界面,作为单一连接的目标集。
深度服务与模型智能 列出 Ollama 模型、modelfiles、提示;提取 LiteLLM 凭据引用;枚举 MLflow 实验;发现 Qdrant 集合;检查 Jupyter 会话。在 深度 模式下,可调用受限的 Ollama 嵌入请求以证明计算访问权限。
原生图的攻击路径分析 服务器构建 Neo4j 图,链接信任、认证、凭据重用、工具能力与观测证据。操作员可查询可达性、执行、外泄、冒名、污染等。
访问丢失的容错性 收集器在每次有意义操作后对资产进行检查点;若变更失败,将回滚并可从最后一个检查点恢复。

操作模式

模式 行为
agenthound scan(默认) 活动收集:凭据重用、MCP 验证、可逆的 ContextForge 验证,以及(如适用)模型调用。
agenthound scan --deep 添加递归指令发现、受限的 Qdrant 点读取,以及 Ollama 嵌入验证等高成本服务探测。
agenthound scan --stealth 只读收集:不进行跨目标凭据重用、不调用模型/工具、不进行任何变更。仅执行匿名和精确配置读取。
agenthound scan --stealth --deep 与 stealth 相同,但保持非交互式收集的同时仍执行深度文件系统读取。

快速开始(来自 README)

# 安装静态二进制文件(macOS/Linux,amd64/arm64)
curl -sSfL https://raw.githubusercontent.com/adithyan-ak/agenthound/1.1.1/install.sh \
  | AGENTHOUND_VERSION=1.1.1 sh
export PATH="$HOME/.local/bin:$PATH"

# 从立足点运行基本扫描
agenthound scan --output scan.json

# 可选:使用 Docker Compose 启动分析服务器
curl -sSfL https://raw.githubusercontent.com/adithyan-ak/agenthound/1.1.1/docker/docker-compose.public.yml \
  -o agenthound-compose.yml
docker compose -f agenthound-compose.yml -p agenthound up -d --wait
docker compose -f agenthound-compose.yml -p agenthound exec -T agenthound \
  agenthound-server ingest - < scan.json

# 打开 UI
open http://127.0.0.1:8080

扫描结果

发现类型 解答的问题示例
已验证凭据访问 哪个具体密钥证明了对哪个 MCP 资源的访问?
凭据链路径 捕获的 API 密钥如何将代理配置与模型网关连接?
可达性 根据当前信任和认证链接,可以访问哪些服务?
执行路径 哪些代理可以调用 shell 或数据库工具?
外泄路径 敏感数据可以发送到环境外的哪些位置?
跨协议跳板 A2A 委托能否用于访问向量存储?
指令污染 哪些指令文件包含提示注入或污染上下文的证据?
工具伪装 / 路径劫持 是否存在外观相似的工具可能劫持预期能力?
未认证表面 哪些服务在无任何凭据的情况下暴露数据?
风险热点 哪些节点或路径具有最高影响评分?

安全与 OPSEC 注意事项(来自 README)

  • 仅限授权使用 – 仅在您拥有或获得明确授权的系统上运行。
  • 活动模式 执行凭据重用和可逆变更;如需隐蔽,使用 --stealth 进行只读收集。
  • 硬排除(--exclude)可防止意外与您不希望接触的主机或 URL 交互。
  • 即时恢复 – 任何变更在下一步前都会被撤销;若清理失败,资产会记录状态,可安全重试。
  • 明文证据 – JSON 资产包含原始密钥和响应;Web UI 默认隐藏,但可点击显示。

文档与贡献

  • 完整文档: https://docs.agenthound.io
  • 快速入门、扫描器、CLI、攻击路径、部署和安全指南均在 docs/ 文件夹中。
  • 可添加模块以支持新服务;参见 CONTRIBUTING.md 和 docs/contributing/modules.md。
  • 许可证为 Apache-2.0;漏洞报告请发送至 SECURITY.md。

总结 – AgentHound 是一个专为现代 LLM 驱动助手设计的进攻性框架,将它们视为联网攻击面。它自动化凭据收集、基于证明的验证和图级分析,为红队提供单一资产和可视化 UI,以理解并利用整个代理栈。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目