在红队资产测绘与渗透侦察工作中,你是否也常常遇到FOFA查询结果为零、语法调整繁琐、人工优化效率低下的痛点?FofaMap 2.0正是为解决这一系列问题而生。它不仅内置了独特的AI反思机制,能够自动优化并重试查询语法以告别空结果,更能智能联动 Nuclei 扫描工具,实现从资产收集到漏洞检测的一键式自动化流程,极大地提升了安全侦察的效率与智能化水平。
核心功能概览
FofaMap 2.0是一个AI驱动的交互式侦察向导,其核心功能围绕自动化与智能化展开。
✨ AI 自动任务完成
这是工具最具特色的能力。你只需用自然语言描述需求,AI便会:
- 理解你的意图。
- 生成并执行FOFA查询语法。
- 若结果为0,则启动自我反思机制,自动放宽条件或重写语法进行多策略重试。
- 对获取的资产进行指纹分析。
- 智能判断资产价值并决定是否发起扫描。
- 自动生成优化的Nuclei扫描参数并询问用户是否执行。
整个过程你只需要输入一句话,例如:
帮我收集一下美国哈佛大学的子域名网站,并扫描一下

执行后,工具不仅会返回资产列表,还会提供详细的AI资产画像分析报告,指出潜在的攻击路径与高危点。

最终,它会自动准备好目标列表并推荐扫描命令,等待用户确认执行。

🔍 FOFA 标准查询
直接使用标准的FOFA语法进行查询。
app=“ThinkPHP” && country=“CN”

🖥️ Host 聚合查询(AI 深度画像)
输入单个IP或域名,获取该目标的深度聚合信息与画像。
8.8.8.8 / baidu.com
📁 批量文件查询
通过TXT文件批量执行FOFA查询。将查询语句逐行写入文件(如 targets.txt),然后指定文件路径即可。
114.114.114.114
www.baidu.com
app=“kafka”

核心特性详解
🤖 会“自我反思”的AI
这是解决“0 Results”痛点的黑科技。当查询无果时,AI会自动反思:
- 判断:地区条件是否过严?关键词是否不合理?语法是否太死板?
- 行动:自动放宽条件、重写语法、并进行多策略重试。
- 目标:尽全力为用户产出有效的资产结果,极大减少因语法问题导致的无功而返。
快速开始指南
1. 环境准备
确保系统已安装 Python 3.10 或更高版本。
2. 安装工具
# 克隆项目(假设已下载)
cd FofaMap
pip3 install -r requirements.txt

安装完成后,可以查看工具的所有参数说明:
python3 fofamap.py --help

3. 初始化配置
工具提供了交互式向导来初始化配置,运行以下命令并按提示填写:
python3 fofamap.py init
向导会引导配置:
- FOFA 账号邮箱和 API Key
- AI 服务(支持 DeepSeek / OpenAI / Ollama / LMStudio 等)
- 默认模型名称
- 其他查询参数(如默认字段、页数等)
配置将自动保存至 config/settings.yaml 文件。

4. 配置 Nuclei (可选)
如果需要使用漏洞扫描功能,请确保 Nuclei 可用。
- 方法一:将
nuclei 二进制文件添加到系统 PATH 中,并可通过 nuclei -version 验证。
- 方法二:直接下载对应操作系统的
nuclei 二进制文件,放置于 FofaMap 项目根目录下。

配置文件解析
主要配置存储在 config/settings.yaml 中,结构清晰:
#====== 用户信息 (User Info) ======
userinfo:
# [基础] FOFA 凭证
email: “your_email@example.com”
key: “your_fofa_api_key”
# [进阶] AI 模型配置 (支持 DeepSeek/OpenAI/Ollama 等)
deepseek_api_key: “sk-xxxxxxxxxxxxxxxxxxxxxxxx”
# 场景 A: 使用官方 DeepSeek
api_type: “deepseek”
base_url: “https://api.deepseek.com/v1”
model: “deepseek-chat”
# 场景 B: 使用本地 Ollama (注释掉上方,启用下方)
# api_type: “ollama”
# base_url: “http://localhost:11434/v1”
# model: “qwen2.5:7b”
# ====== 搜索设置 (Search Settings) ======
search:
fields: “host,protocol,ip,port,title,domain,country,icp”
size: 100
full: false # 设为 true 可查询一年前的数据
start_page: 1
end_page: 5 # 自动爬取前 5 页
# ====== 性能与输出 (System) ======
system:
logger: true
sheet_merge: true
concurrency: 15 # 建议根据网络状况调整 (10-50)
export_format: “xlsx” # 支持 xlsx / csv
output_dir: “results” # 默认输出目录
总结
FofaMap 2.0 通过深度集成AI能力,显著优化了传统资产侦察的工作流。其“自我反思”机制有效解决了查询无结果的尴尬,而与 Nuclei 的无缝联动则将资产发现与漏洞初筛合并为一个连贯的自动化过程。对于从事渗透测试与安全运营的工程师而言,这无疑是一个能大幅提升效率的利器。如果你对这类自动化安全工具的实战应用感兴趣,欢迎在云栈社区与更多安全同行交流探讨。