AutoHunter:解放双手!AI自主漏洞挖掘平台"

admin 2026-10-18 03:27:44 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

AutoHunter:解放双手!AI 自主漏洞挖掘平台

InfVul无限漏洞实验室

2026年8月20日 06:47
北京

在小说阅读器读本章

去阅读

一台机器 = 24×7 不停歇的挖洞平台,你只当「人工复审员」,醒来几分钟完成裁决。


一、项目简介

AutoHunter是一款基于多 Agent 协同的自动化漏洞挖掘系统,由安全研究员 StanleyNull 开发。它的核心理念很简单——让 AI 干脏活累活,人只做最终决策。

你把一台服务器交给它,配好大模型 API 和 FOFA Key,它就能 7×24 小时不停歇地搜集目标、发起侦察、执行真实攻击验证、提交漏洞发现,而你只需要每天花几分钟看看 AI 审核后的结果,做通过/打回/编辑的裁决。

项目地址:https://github.com/StanleyNull/AutoHunter

在此特别向工具的作者——Stanley\_Null 大佬致敬!


二、核心优势

1. 真实工具链挖洞,不是纸上谈兵

容器内置了完整的渗透工具链:

  • nmap — 端口扫描与服务识别
  • nuclei — PoC 漏洞验证
  • sqlmap — SQL 注入自动化
  • httpx — 批量 HTTP 探测
  • whatweb — 指纹识别
  • curl/wget/jq — 通用请求与数据处理

LLM 通过 function calling 真实调用这些工具、真实发包验证,产出的是有请求/响应证据链的实锤漏洞。

2. 多 Agent 协同的流水线架构

不是一个模型干所有事,而是多个专职 Agent 各司其职:

Agent 职责
Collector 从 FOFA 持续搜集目标,探活、预筛、评分、归属标注后入队
Worker 每个目标一个 Worker,LLM 自主侦察 + 调用工具链挖洞
Reviewer 极理性 AI 初审,过滤半成品/误报,只把够格的洞送到人工面前
KillSweep 出洞后分析能否「一打一片」,自动验证同款站点
Deepen 对有潜力的目标进行深度挖掘
Intel Curator 情报沉淀与复用

3. 极理性 AI 审核机制

Reviewer Agent 不是简单过滤,而是:

  • 只认「实际可利用 + 实锤危害」的漏洞
  • 要求完整证据链(请求包 → 响应包 → 影响证明)
  • 高危/严重漏洞会触发复现验证(重新发包确认)
  • 垃圾洞(反射 XSS、phpinfo、用户名枚举等)直接丢弃

大幅减少无效人工复审时间。

4. 通杀 Hunter — 一打一片

发现一个漏洞后,KillSweep Agent 自动:

  1. 识别系统指纹(CMS/框架/版本)
  2. FOFA 圈定同款系统并统计规模
  3. 抽样验证其他同款站点
  4. 判定是否可批量通杀

一个低危变成批量中危,一个中危变成批量高危。

5. 24×7 无人值守 + 崩溃恢复

  • 状态全持久化到 SQLite,进程重启从 DB 重建
  • Docker restart: unless-stopped 崩溃自动拉起
  • AUTOHUNTER_RESTORE_ON_STARTUP=1

重启自动续跑之前 running 的任务
* Watchdog 监控主循环健康状态

6. 情报沉淀与复用

验证过的凭证、端点、指纹进入全局情报库,后续 Worker 打同一目标或同款系统时直接复用,不重复劳动。

7. 内置安全防护

  • 应用层 WAF 默认开启(保护控制台本身)
  • 多角色访问令牌:全权限 / 只读 / 观摩
  • SSRF 防护(防止把 FOFA Key 发往内网)
  • 工具执行沙箱(超时限制、输出截断)

三、系统架构与工作逻辑

整体流程

Worker 工具能力

Worker 通过 function calling 可调用以下工具:

工具 用途
http_request 发送任意 HTTP 请求,自动管理 Cookie/会话
run_shell 执行任意 shell 命令(nmap/nuclei/sqlmap 等)
decode_transform 解码 base64/hex/JWT/URL 编码
suggest_waf_bypass WAF 被拦截时给出绕过建议
analyze_javascript 分析 JS 文件提取接口/密钥/逻辑
submit_finding 提交发现的漏洞
finish 完成当前目标的挖掘

技术栈

层 选型
后端 Python 3.12 · FastAPI · SQLAlchemy (SQLite) · asyncio
前端 Vue 3 · Vite
容器 Docker · Docker Compose v2
模型 支持 OpenAI Chat / Anthropic Messages 协议
工具链 nmap · nuclei · sqlmap · httpx · whatweb

四、部署流程(完整实操)

环境要求

  • 任意装得上 Docker 的系统(推荐 Linux)
  • 最低配置:2C4G,磁盘 ≥ 20G
  • 需要能访问 LLM API 和目标网络

方式一:一键部署脚本(推荐)

# 1. 安装 Docker(已装跳过)curl -fsSL https://get.docker.com | sh && sudo systemctl enable --now dockersudo usermod -aG docker $USER && newgrp docker # 2. 拉代码git clone https://github.com/StanleyNull/AutoHunter.git autohunter && cd autohunter # 3. 运行引导脚本(交互式填 Key)bash scripts/install.sh

脚本会引导你填写:

  1. LLM API Key(必填)
  2. FOFA Key(推荐)
  3. 控制台访问令牌(自动生成)
  4. 对外端口(默认 18800)

方式二:手动部署

# 复制配置文件cp .env.example .env # 编辑配置(至少填 LLM_API_KEY)vim .env # 构建并启动docker compose up -d --build # 查看日志docker compose logs -f autohunter

首次构建耗时

首次构建约5-15 分钟,包括:

  • 拉取 Python/Node 基础镜像
  • 编译 Vue 前端
  • 安装渗透工具(nmap/nuclei/sqlmap/httpx/whatweb)
  • 下载 nuclei 模板库

构建完成后访问 http://<服务器IP>:18800/

防火墙放行

# Ubuntu/Debiansudo ufw allow 18800/tcp # CentOS/RHELsudo firewall-cmd --permanent --add-port=18800/tcp && sudo firewall-cmd --reload

五、模型配置详解

AutoHunter 支持多种大模型,核心要求是支持 tool calling(function calling)。

支持的模型协议

协议 配置值 适用模型
OpenAI Chat Completions openai_chat DeepSeek / GPT / 通义 / Kimi / GLM(paas/v4)
Anthropic Messages anthropic_messages Claude / GLM(anthropic端点) / 第三方中转
自动检测 auto 按 base\_url 特征自动判断

推荐模型配置

DeepSeek(性价比最高):

LLM_BASE_URL=https://api.deepseek.com/v1LLM_API_KEY=sk-xxxLLM_MODEL=deepseek-chatLLM_PROTOCOL=openai_chat

智谱 GLM-5.2(Anthropic 协议):

LLM_BASE_URL=https://open.bigmodel.cn/api/anthropicLLM_API_KEY=你的智谱keyLLM_MODEL=glm-5.2LLM_PROTOCOL=anthropic_messages

第三方中转站(如 TokenRhythm):

LLM_BASE_URL=https://tokenrhythm.studio/v1LLM_API_KEY=sk_tr_xxxLLM_MODEL=deepseek-v4-pro-0813LLM_PROTOCOL=anthropic_messages

工具调用兼容模式

# auto(默认):原生优先,不支持时自动切提示词模拟# prompt:始终用提示词模拟(给不支持 tool calling 的模型)# native:仅原生AUTOHUNTER_TOOL_COMPAT=auto

多端点池化

支持配置多个 LLM 端点做负载均衡和故障切换:

LLM_PROVIDER_MODE=poolLLM_PROVIDERS_JSON=[{”name”:”primary”,”base_url”:”...”,”api_key”:”...”,”model”:”...”,”protocol”:”...”,”weight”:3},{”name”:”backup”,”base_url”:”...”,”api_key”:”...”,”model”:”...”,”weight”:1}]

六、使用指南

创建挖掘任务

登录控制台 → 「新建挖掘任务」:

字段 说明
任务名称 随便起,方便区分
任务模式 EduSRC / 企业SRC
目标来源 FOFA 自动搜 / 手动清单 / 两者
搜集方式 FOFA 语法 / 自然语言意图 / 自动判断

FOFA 语法示例

# 找教育网下的管理后台body=”管理” && org=”China Education and Research Network Center” # 找某集团的资产cert.subject.org=”某某集团” && country=”CN” # 找特定 CMSbody=”Powered by XXX” && domain=”.edu.cn”

自然语言搜集

不会写 FOFA 语法也行,直接用大白话:

找全国高校的统一身份认证登录系统找某集团的 OA / CRM / ERP 资产

Collector Agent 会自动翻译成 FOFA 查询并逐轮演化。


七、常见问题与避坑

问题 1:LLM 调用失败 / 暂时不可用

现象:日志显示 LLM 暂时不可用,预计 XX 秒后重试

原因:连续失败触发了熔断冷却机制(分级冷却 300s → 900s → 1800s → 3600s)

解决:

# 彻底重启清除冷却状态docker compose down && docker compose up -d # 或者清除所有数据重建(会丢任务记录)docker compose down -v && docker compose up -d

预防:调整冷却参数,降低敏感度:

LLM_PROVIDER_FAILED_RETRY_SECONDS=10LLM_PROVIDER_FAIL_THRESHOLD=8

问题 2:协议不匹配(404 / Not Found)

现象:请求发到了错误的路径

原因:LLM\_PROTOCOL=auto 自动检测错误

解决:显式指定协议:

# OpenAI 兼容接口LLM_PROTOCOL=openai_chat # Anthropic 兼容接口LLM_PROTOCOL=anthropic_messages

问题 3:模型列表拉取失败(JSONDecodeError)

现象:设置页显示\"拉取模型列表失败\"

原因:LLM\_BASE\_URL 缺少 /v1 后缀,导致请求路径错误

解决:确保 base\_url 以 /v1 结尾:

# ✅ 正确LLM_BASE_URL=https://api.example.com/v1 # ❌ 错误LLM_BASE_URL=https://api.example.com

问题 4:额度不足(quota)

现象:余额不足或无可用资源包

解决:

  • 充值对应模型的资源包
  • 注意某些平台资源包是按模型区分的
  • 切换到免费/便宜模型(如 glm-4-flash、deepseek-chat)

问题 5:控制台设置页配置与 .env 冲突

重要:控制台设置页保存的配置优先级高于 .env 文件(存在数据库中)

如果你在设置页保存过旧配置,即使改了 .env 也不会生效。必须同时在设置页更新。

问题 6:Token 消耗过快

控制策略:

# 限制 Worker 最大轮数WORKER_MAX_ROUNDS=90WORKER_SOFT_ROUNDS=45 # 降低并发AUTOHUNTER_AGENT_THREAD_POOL_SIZE=4 # 工具输出截断(减少回传给模型的数据量)WORKER_LLM_TOOL_OUTPUT_TRUNCATE=4096

问题 7:构建失败(网络问题)

首次构建需要下载 nuclei/httpx 的 GitHub Release,国内可能超时:

  • 确保服务器能访问 GitHub
  • 或提前下载二进制放到 Dockerfile 对应路径
  • 使用代理:docker build --build-arg HTTP_PROXY=xxx

八、运维命令速查

# 查看实时日志docker compose logs -f autohunter # 重启服务docker compose restart autohunter # 停止服务(数据保留)docker compose down # 更新代码后重建docker compose up -d --build # 彻底清除重建(丢数据)docker compose down -v && docker compose up -d --build

九、安全注意事项

  1. 务必设置 AUTOHUNTER_API_TOKEN:否则控制台对全网裸奔
  2. 收窄 FOFA 搜索范围:用 org/domain/cert 限定归属,避免打到授权范围外
  3. 成本控制:目标越多 token 越贵,合理设置并发和轮数预算
  4. 仅对授权目标使用:本工具遵循 CC BY-NC 4.0,禁止商业用途,滥用后果自负

十、总结

AutoHunter 的定位很清晰:把漏洞挖掘中最耗时间的「初筛 + 验证 + 重复劳动」交给 AI,人只负责最终的「决策 + 报告提交」。

适合谁用:

  • SRC 赏金猎人(批量挖教育/企业 SRC)
  • 安全团队(7×24 持续监控资产安全状态)
  • 安全研究员(验证某类漏洞的批量影响面)

不适合:

  • 没有 LLM API 预算的(token 消耗不低)
  • 网络受限环境(需要访问目标 + LLM API)
  • 追求 0day 级漏洞发现(目前更擅长已知漏洞类型的批量验证)

一句话总结:挂机过夜,醒来收洞。


Warning:仅限对已获明确书面授权的目标使用。 本工具遵循 CC BY-NC 4.0,禁止任何商业用途,滥用后果自负。


AutoHunter:解放双手!AI自主漏洞挖掘平台" 网络安全文章

AutoHunter:解放双手!AI自主漏洞挖掘平台"

AutoHunter是一款基于多Agent协同的自动化漏洞挖掘系统,由安全研究员StanleyNull开发。其核心理念是让AI执行侦察、攻击验证等任务,人工仅做最终审核。系统内置nmap、nuclei等真实工具链,通过多Agent流水线架构实现7x24小时无人值守挖洞,并具备通杀验证、情报复用、崩溃恢复等特性。部署简单,支持多种大模型,适合SRC漏洞挖掘场景。
PentAGI:全自主AI渗透测试代理系统" 网络安全文章

PentAGI:全自主AI渗透测试代理系统"

PentAGI是一套开源的全自主AI渗透测试代理系统,采用多智能体协作、沙箱化Docker架构、知识图谱与长期记忆,整合20+安全工具实现自动化测试。系统支持10+模型供应商,提供执行监控与任务规划功能,强调仅限授权测试。面向安全工程师、红队人员及AI研究者,提供完整API与报告能力。
AITokenJacking:被偷走的不只是APIKey,还有失控的算力账单" 网络安全文章

AITokenJacking:被偷走的不只是APIKey,还有失控的算力账单"

AITokenJacking成为安全新焦点,攻击者窃取AIAPI密钥后滥用算力产生巨额费用并可能泄露敏感数据。风险被低估因模型密钥可快速变现且缺乏监控。蓝队应重新定义资产、优化风险排序、保全关联日志。应急处置需止血排查恢复三步并行,中期治理需责任到流程。检测应侧重行为逻辑而非静态IOC,验证需确保发现研判阻断闭环。长期需将事件转化为可重复的治理框架。
评论:0   参与:  0