RedAmon 详解 - AI 驱动的自动化红队渗透测试框架
前言
RedAmon 是一个 AI 驱动的自动化红队渗透测试框架,能够自主执行从侦察、利用到后渗透的完整攻击链,并且能够自动修复发现的漏洞并提交 GitHub PR。与传统的渗透测试工具不同,RedAmon 采用多 Agent 协作架构,实现了零人工干预的完整渗透测试流程。本文详细介绍 RedAmon 的核心特性、安装配置、使用方法和实际应用场景。
⚠️ 法律免责声明:本工具仅用于授权的安全测试、教育目的和研究。切勿使用本系统扫描、探测或攻击任何您不拥有或未获得明确书面许可的系统。未经授权的访问是非法的,将受到法律制裁。使用本工具即表示您对您的行为承担全部责任。
项目地址:https://github.com/samugit83/redamon
Stars:1,506+
版本:v2.3.0
一、项目简介
1.1 核心定位
RedAmon 是一个模块化、容器化的渗透测试框架,将自动化侦察、AI 驱动的利用和图驱动的情报整合到一个端到端的进攻安全管道中。主要特点:
| 特性 | 说明 | 优势 |
|---|---|---|
| 完整攻击链 | 侦察→利用→后渗透→修复 | 零人工干预 |
| AI Agent 编排 | LangGraph 自主 Agent | 智能决策和工具选择 |
| 攻击表面图 | Neo4j 知识图谱 | 统一情报源 |
| 自动修复 | CypherFix 代码修复 Agent | 自动提交 GitHub PR |
| 30+ 安全工具 | Nmap、Nuclei、Metasploit 等 | Kali Linux 容器化 |
| 185K+ 检测规则 | Nuclei + GVM 漏洞库 | 全面漏洞覆盖 |
1.2 核心架构
RedAmon 围绕六大支柱构建:
1. 侦察管道(Reconnaissance Pipeline)
- 6 个顺序扫描阶段
- 从域名或 IP/CIDR 开始
- 映射完整攻击表面
- 结果存储为 Neo4j 图谱
2. AI Agent 编排器
- LangGraph 自主 Agent
- ReAct(推理 + 行动)模式
- 三阶段执行:信息→利用→后渗透
- 实时聊天控制
3. 攻击表面图谱
- Neo4j 知识图谱
- 17 种节点类型
- 20+ 种关系类型
- 每个发现的单一事实源
4. EvoGraph(攻击链演进)
- 持久化攻击链图谱
- 追踪每个步骤、发现、决策
- 跨会话情报积累
5. CypherFix 自动修复
- AI 分类和优先级排序
- 代码修复 Agent
- 自动克隆仓库、实施修复
- 提交 GitHub PR
6. 项目设置引擎
- 180+ 每项目参数
- 控制每个工具行为
- Web 界面配置
二、快速开始
2.1 系统要求
# 必需
- Docker 和 Docker Compose v2+
# 最低系统要求(不含 OpenVAS)
- CPU: 2 核心
- RAM: 4 GB
- 磁盘:20 GB 可用空间
# 完整系统要求(含 OpenVAS)
- CPU: 4 核心
- RAM: 8 GB(推荐 16 GB)
- 磁盘:50 GB 可用空间
# 注意:不需要在主机上安装 Node.js、Python 或安全工具
# 所有组件都在 Docker 容器中运行
2.2 安装步骤
步骤 1:克隆项目
git clone https://github.com/samugit83/redamon.git
cd redamon
步骤 2:配置环境变量
# 复制示例配置
cp .env.example .env
# 编辑 .env 文件,至少添加一个 AI 提供商密钥
vi .env
步骤 3:配置 AI 密钥
# 必需:至少配置一个 AI 提供商
ANTHROPIC_API_KEY=sk-ant-... # 推荐
# 或
OPENAI_API_KEY=sk-proj-...
# 可选:其他 AI 提供商
OPENROUTER_API_KEY=sk-or-... # OpenRouter - 300+ 模型
AWS_ACCESS_KEY_ID=AKIA... # AWS Bedrock
AWS_SECRET_ACCESS_KEY=...
AWS_DEFAULT_REGION=us-east-1
# 本地模型(可选)
OPENAI_COMPAT_BASE_URL=http://host.docker.internal:11434/v1 # Ollama
OPENAI_COMPAT_API_KEY= # 可选
步骤 4:配置可选服务
# 可选:增强功能
TAVILY_API_KEY=tvly-... # Web 搜索
NVD_API_KEY=... # NIST NVD API(更高速率限制)
NGROK_AUTHTOKEN=... # ngrok TCP 隧道(反向 shell)
CHISEL_SERVER_URL=... # Chisel TCP 隧道(多端口,需要 VPS)
CHISEL_AUTH=user:pass # Chisel 认证(可选)
步骤 5:构建和启动(不含 GVM)
# 构建所有镜像
docker compose --profile tools build
# 启动核心服务(不含 GVM)
docker compose up -d postgres neo4j recon-orchestrator kali-sandbox agent webapp
# 启动时间:< 1 分钟
# 镜像大小:约 15 GB
步骤 6:构建和启动(完整含 GVM)
# 构建所有镜像(包括漏洞扫描器)
docker compose --profile tools build
# 启动所有服务(包括 GVM/OpenVAS)
docker compose up -d
# 注意:首次启动 GVM 需要约 30 分钟同步漏洞库(170K+ NVTs)
# 后续启动是瞬间的
步骤 7:访问 Web 界面
# 浏览器访问
http://localhost:3000
# 创建项目、配置目标、开始扫描
三、核心功能详解
3.1 侦察管道(6 个阶段)
阶段 1:域名发现
- Certificate Transparency:通过 crt.sh 查询 CT 日志
- HackerTarget API:被动子域名查询
- Knockpy:主动子域名爆破(可选)
- WHOIS 查询:注册商、注册人、创建/过期日期
- DNS 解析:A、AAAA、MX、NS、TXT、CNAME、SOA 记录
阶段 2:端口扫描
- Naabu:快速 SYN/CONNECT 端口扫描器
- SYN 扫描:默认模式,自动 fallback 到 CONNECT
- CDN/WAF 检测:识别 Cloudflare、Akamai 等
- 被动模式:查询 Shodan InternetDB(零接触)
- IANA 服务查询:15,000+ 端口 - 服务映射
阶段 3:HTTP 探测和技术检测
- httpx:HTTP/HTTPS 探测
- 响应元数据:状态码、内容类型、页面标题、服务器头
- TLS 检查:证书、加密套件、JARM 指纹
- 技术指纹:httpx + Wappalyzer(6,000+ 指纹)
- Banner 抓取:SSH、FTP、SMTP、MySQL、Redis 等
阶段 4:资源枚举
- Katana:主动网络爬虫,JavaScript 渲染
- GAU:Wayback Machine、Common Crawl 被动 URL 发现
- Kiterunner:API 特定路径爆破(REST、GraphQL)
- 并行执行:ThreadPoolExecutor 同时运行三个工具
- 端点分类:auth、file_access、api、dynamic、static、admin
阶段 5:漏洞扫描
- Nuclei:8,000+ 社区模板
- DAST 模式:主动 fuzzing(XSS、SQLi、RCE、LFI、SSRF、SSTI)
- 严重性过滤:critical、high、medium、low
- Interactsh:带外检测(盲注 SQLi、XXE、SSRF)
- CVE 丰富:NVD/Vulners API 交叉引用
- 30+ 自定义安全检查:安全头、TLS 证书、DNS 安全等
阶段 6:MITRE 丰富
- CWE/CAPEC 映射:每个 CVE 自动映射到 CWE 弱点和 CAPEC 攻击模式
- 自动更新:CVE2CAPEC 仓库(24 小时缓存 TTL)
3.2 GVM 漏洞扫描器(可选)
什么是 GVM/OpenVAS?
Greenbone Vulnerability Management(GVM)是全球最大的开源网络漏洞扫描器。与 Nuclei 专注于 Web 应用层不同,GVM 在协议层直接探测服务:
- 测试错误配置
- 检测过时软件
- 检查默认凭据
- 已知 CVE 探测
GVM 组件
- OpenVAS Scanner:执行网络漏洞测试(NVTs)
- GVM Daemon (gvmd):编排扫描、管理配置、存储结果
- 漏洞库:170,000+ NVTs(持续更新)
- PostgreSQL + Redis:后端存储
扫描配置文件
| 扫描配置 | NVT 数量 | 持续时间 | 说明 |
|---|---|---|---|
| Host Discovery | ~100 | 2-5 分钟 | 基础主机发现 |
| Discovery | ~500 | 5-10 分钟 | 网络发现 |
| System Discovery | ~2,000 | 10-20 分钟 | 详细枚举 |
| Full and fast | ~50,000 | 30-60 分钟 | 推荐默认配置 |
| Full and fast ultimate | ~70,000 | 1-2 小时 | 包含危险 NVTs |
| Full and very deep | ~50,000 | 2-4 小时 | 忽略 prior 数据 |
| Full and very deep ultimate | ~70,000 | 4-8 小时 | 最彻底、最慢 |
3.3 AI Agent 编排器
三阶段执行
信息阶段(默认起始)
- 查询 Neo4j 图谱
- Web 搜索 CVE 详情
- 使用 curl 进行 HTTP 请求
- 使用 Naabu 扫描端口
- 无攻击性工具
利用阶段(需要用户批准)
- CVE 利用:Metasploit 模块、payload 配置、反向 shell
- Hydra 暴力破解:SSH、FTP、RDP、SMB、MySQL 等 50+ 协议
- 钓鱼/社会工程:msfvenom payload、Office 宏、PDF、Web 交付
- 未分类回退:SQL 注入、XSS、SSRF、文件上传等
后渗透阶段(可选)
- 状态保持模式(Meterpreter):交互式命令、横向移动、数据外泄
- 无状态模式:重新执行 exploit,不同 command payload
基于聊天的图谱交互
用户:192.168.1.100 上有哪些漏洞?
Agent:生成 Cypher 查询 → 注入租户过滤 → 执行 → 返回自然语言结果
用户:哪些技术有严重 CVE?
Agent:遍历 Technology → CVE 关系链
用户:显示 example.com 子域上的所有开放端口
Agent:行走 Subdomain → IP → Port 路径
用户:查找所有可注入参数的端点
Agent:查询 Nuclei 标记为 injectable 的 Parameter 节点
实时控制
- Guidance:发送引导消息("专注于 SSH 漏洞,忽略 Web 应用")
- Stop:随时暂停执行,状态检查点保存
- Resume:从最后检查点继续,完整上下文保留
- Approval workflows:阶段转换需要用户批准
MCP 工具集成
| 工具 | 用途 | 可用阶段 |
|---|---|---|
| query_graph | Neo4j Cypher 查询 | 所有阶段 |
| web_search | Tavily Web 搜索 | 所有阶段 |
| execute_curl | HTTP 请求、API 探测 | 所有阶段 |
| execute_naabu | 端口扫描 | 所有阶段 |
| execute_nmap | 深度服务分析 | 所有阶段 |
| execute_nuclei | 漏洞扫描 | 所有阶段 |
| execute_metasploit | Metasploit 利用 | 利用阶段 |
| execute_hydra | 暴力破解 | 利用阶段 |
3.4 CypherFix 自动修复
自动漏洞修复管道
- AI 分类 Agent:关联数百个发现、去重、按可利用性排序
- CodeFix Agent:克隆目标仓库、导航代码库、实施针对性修复
- 11 个代码感知工具:文件读取、写入、搜索、AST 分析等
- GitHub PR:自动提交拉取请求,等待审查和合并
四、实战使用
4.1 创建项目
- 访问 http://localhost:3000
- 点击"创建项目"
- 输入目标域名或启用"从 IP 开始"输入 IP/CIDR
- 配置项目设置(180+ 参数可选)
- 保存项目
4.2 启动侦察
- 导航到 Graph 页面
- 点击"Start Recon"按钮
- 在抽屉中查看实时日志
- 等待 6 个阶段完成(约 10-30 分钟)
4.3 启动 GVM 扫描(可选)
- 侦察完成后,"GVM Scan"按钮启用
- 选择扫描配置(推荐"Full and fast")
- 点击开始扫描
- 查看 GVM 日志抽屉
- 下载 GVM 结果 JSON
4.4 启动 AI Agent
- 导航到 Agent 页面
- 输入目标或选择已有项目
- 点击"Start Agent"
- 在聊天界面实时交互
- 发送引导消息或批准阶段转换
4.5 查看攻击链演进
- 导航到 EvoGraph 页面
- 查看攻击链图谱
- 每个步骤、发现、决策都永久记录
- 跨会话情报积累
4.6 自动修复
- 导航到 CypherFix 页面
- 选择要修复的漏洞
- Agent 自动分类和优先级排序
- 克隆仓库、实施修复
- 提交 GitHub PR
- 审查和合并 PR
五、常用命令
# 检查服务状态
docker compose ps
# 查看所有日志
docker compose logs -f
# 查看特定服务日志
docker compose logs -f webapp # Web 应用(Next.js)
docker compose logs -f agent # AI Agent 编排器
docker compose logs -f recon-orchestrator # 侦察编排器
docker compose logs -f kali-sandbox # MCP 工具服务器
docker compose logs -f gvmd # GVM 漏洞扫描器
docker compose logs -f neo4j # Neo4j 图谱数据库
docker compose logs -f postgres # PostgreSQL 数据库
# 停止服务(保留数据)
docker compose down
# 停止并删除本地镜像(强制重建)
docker compose --profile tools down --rmi local
# 完全清理(删除所有数据!)
docker compose --profile tools down --rmi local --volumes --remove-orphans
# 开发模式(Next.js 快速刷新)
docker compose -f docker-compose.yml -f docker-compose.dev.yml up -d
# 重启 Python 服务(代码更改后)
docker compose restart agent
docker compose restart recon-orchestrator
docker compose restart kali-sandbox
六、架构优势
| 特性 | RedAmon | 传统工具 |
|---|---|---|
| 自动化程度 | 零人工干预 | 手动操作 |
| 攻击链覆盖 | 完整(侦察→修复) | 部分 |
| AI 决策 | 自主 Agent | 无 |
| 知识图谱 | Neo4j 统一情报 | 分散数据 |
| 自动修复 | GitHub PR 自动提交 | 手动修复 |
| 部署方式 | Docker 一键部署 | 复杂安装 |
总结
RedAmon 是一个革命性的 AI 驱动红队框架,核心优势包括:
- 完整攻击链:侦察→利用→后渗透→修复,零人工干预
- AI Agent 编排:LangGraph 自主决策,智能工具选择
- 知识图谱:Neo4j 统一情报源,EvoGraph 跨会话积累
- 自动修复:CypherFix 自动分类、修复、提交 PR
- 30+ 安全工具:Nmap、Nuclei、Metasploit、Hydra 等容器化
- 185K+ 检测规则:Nuclei + GVM 全面漏洞覆盖
- Docker 部署:一键启动,无需主机安装任何工具
适合场景:
- 授权的安全测试和渗透测试
- 红队演练和对抗模拟
- 漏洞研究和教育目的
- 自动化安全评估
- DevSecOps 集成
⚠️ 重要提醒:本工具仅用于授权测试。使用前请确保您拥有明确的书面授权。非法使用将承担法律责任。
项目地址:https://github.com/samugit83/redamon 🚀
注:本文基于 RedAmon v2.3.0 编写,具体功能可能随版本更新而变化,请以官方文档为准。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。






