[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-asaotomo--FofaMap":3,"tool-asaotomo--FofaMap":61},[4,18,26,36,44,52],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",141543,2,"2026-04-06T11:32:54",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107888,"2026-04-06T11:32:50",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":10,"last_commit_at":50,"category_tags":51,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":53,"name":54,"github_repo":55,"description_zh":56,"stars":57,"difficulty_score":10,"last_commit_at":58,"category_tags":59,"status":17},4292,"Deep-Live-Cam","hacksider\u002FDeep-Live-Cam","Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具，用户仅需一张静态照片，即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点，让高质量的数字内容创作变得触手可及。\n\n这款工具不仅适合开发者和技术研究人员探索算法边界，更因其极简的操作逻辑（仅需三步：选脸、选摄像头、启动），广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换，还是制作趣味短视频和直播互动，Deep-Live-Cam 都能提供流畅的支持。\n\n其核心技术亮点在于强大的实时处理能力，支持口型遮罩（Mouth Mask）以保留使用者原始的嘴部动作，确保表情自然精准；同时具备“人脸映射”功能，可同时对画面中的多个主体应用不同面孔。此外，项目内置了严格的内容安全过滤机制，自动拦截涉及裸露、暴力等不当素材，并倡导用户在获得授权及明确标注的前提下合规使用，体现了技术发展与伦理责任的平衡。",88924,"2026-04-06T03:28:53",[14,15,13,60],"视频",{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":73,"owner_email":73,"owner_twitter":73,"owner_website":73,"owner_url":77,"languages":78,"stars":83,"forks":84,"last_commit_at":85,"license":86,"difficulty_score":32,"env_os":87,"env_gpu":88,"env_ram":88,"env_deps":89,"category_tags":98,"github_topics":100,"view_count":32,"oss_zip_url":73,"oss_zip_packed_at":73,"status":17,"created_at":112,"updated_at":113,"faqs":114,"releases":125},4581,"asaotomo\u002FFofaMap","FofaMap","FofaMap v2.0 是一款基于 Python3 开发的全网首个 AI 驱动红队资产测绘智能体。在延续原有 FOFA 数据采集、存活检测、统计聚合、图标 Hash 及批量查询等核心功能的基础上，2.0 版本原生支持 MCP 协议，可无缝接入 Cursor、Claude 等 AI 平台。其核心内置了 AI 自我反思机制，能根据查询结果自动调优语法，并智能联动 Nuclei 推荐精准扫描策略，实现从“被动采集”到“主动智能决策”的红队作业进化。","FofaMap v2.0 是一款基于 Python3 开发的 AI 驱动红队资产测绘智能体。它超越了传统 FOFA 数据采集工具的范畴，能够理解用户的自然语言指令，自动完成从意图识别、语法生成、资产查询到漏洞扫描策略推荐的全流程作业。\n\n该工具主要解决了传统资产测绘中查询语法编写门槛高、无结果时缺乏调整机制以及扫描策略盲目低效等痛点。其核心亮点在于内置了\"AI 自我反思机制”：当初始查询未返回结果时，它能自动分析原因（如条件过严或关键词不当），动态放宽限制并重试，确保持续产出有效数据。此外，FofaMap 原生支持 MCP 协议，可无缝接入 Cursor、Claude 等主流 AI 平台，让大模型直接调用其安全能力；同时能根据资产指纹智能联动 Nuclei，生成精准的扫描参数，实现“有脑子”的针对性检测。\n\nFofaMap 非常适合网络安全从业者使用：安全新手可通过对话轻松执行复杂任务；红队与 SRC 研究人员可利用其进行批量自动化挖洞与报告生成；AI Agent 开发者则可将其作为标准插件嵌入各类攻防平台或 SOC 系统，快速构建智能化安全应用。","# 🗺️ FofaMap v2.0 — Platinum Agent Edition\n> 🧠 **全网首个支持 MCP 协议 + AI 自我反思机制的红队资产测绘智能体**  \nSelf-Reflecting AI Queries → MCP Protocol Integration → Intelligent Vulnerability Scanning\n>\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPython-3.10+-blue.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FVersion-2.0.0-blue.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FAI-Self--Reflecting-blueviolet.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FMCP-AI%20Ready-purple.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FNuclei-Integrated-orange.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDeepSeek-V3-red.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-green.svg)\n---\n\n# ✨ 一句话介绍\n> ❌ 它不是 FOFA 工具  \n❌ 也不是 Nuclei 封装  \n✅ 它是：**一个可以被 AI 接管、会自己反思、会自己决策扫描策略的「全网资产测绘智能体」**\n>\n\n\u003Cimg width=\"1024\" height=\"559\" alt=\"xcy\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_3ddd517b0d22.png\" \u002F>\n\n\n---\n\n# 🚀 v2.0 是什么级别的升级？\n> FofaMap 从「资产查询工具」→ **进化为 AI Agent（智能体）**\n>\n\n### 🧠 1️⃣ 你只要说人话\n```bash\npython3 fofamap.py -ai \"帮我找一下bing.com所有的子域名，并扫描一下\"\n```\n\nAI 自动完成：\n\n+ 理解你的意图\n+ 生成 FOFA 语法\n+ 查询资产\n+ 若 0 结果 → 启动 **自我反思机制** 自动放宽条件重试\n+ 分析资产指纹\n+ 判断是否值得扫描\n+ 自动生成 Nuclei 扫描参数\n+ 询问你是否执行\n\n---\n\n### 🤖 2️⃣ 会“自我反思”的 AI（核心黑科技）\n> 不再出现：`0 Results`\n>\n\nAI 会自动：\n\n+ 判断：\n    - 是否地区条件过严？\n    - 是否关键词不合理？\n    - 是否语法太死？\n+ 自动：\n    - 放宽条件\n    - 重写语法\n    - 多策略重试\n+ 直到：**尽量给你产出结果**\n\n---\n\n### 🔌 3️⃣ 原生 MCP 支持（给 AI \u002F Agent 用）\n> 支持：**Claude Desktop \u002F Cursor \u002F 自建 Agent**\n>\n\n你可以直接对 AI 说：\n\n> 「调用 FofaMap，帮我分析最近致远 OA 的风险态势」\n>\n\nAI 会：\n\n> 自动调用 FofaMap → 自动跑任务 → 自动总结报告\n>\n\n+ **Cursor调用效果**\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_c359ec5c7e02.png)\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_18e8848b8f77.png)\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_24a4ee788271.png)\n\n+ **LM Stuido调用效果**\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_ec87a10ee254.png)\n\n---\n\n### 🎯 4️⃣ 看人下菜的“智能扫描决策”\nAI 会根据资产指纹：\n\n| 发现 | 自动推荐 |\n| --- | --- |\n| Spring | `-tags spring` |\n| WebLogic | `-tags weblogic` |\n| ThinkPHP | `-tags thinkphp` |\n| Struts2 | `-tags struts` |\n\n\n> ❌ 不再无脑全量扫  \n✅ 每一次扫描都是 **有脑子的精准打击**\n>\n\n---\n\n# 🧩 谁适合用？\n+ 🧑‍💻 安全小白：\n\n> 会说一句话就能用\n>\n\n+ 🛡️ SRC \u002F 红队：\n\n> 批量资产 + 自动化挖洞 + 自动报告\n>\n\n+ 🤖 AI Agent 开发者：\n\n> 直接当「安全能力插件」\n>\n\n+ 🏗️ 平台开发者：\n\n> 可嵌入到攻防平台 \u002F 资产平台 \u002F SOC\n>\n\n---\n\n# 📦 项目结构（平台级架构）\n```bash\n.\n├── config\u002F\n│   ├── __init__.py          # ✅ 负责读取 yaml 并导出 settings 对象\n│   └── settings.yaml        # ⭐ 全局配置（FOFA \u002F AI \u002F 系统）\n│\n├── core\u002F                    # 🧠 核心引擎层\n│   ├── ai.py                # AI Agent 中枢（意图 \u002F 反思 \u002F 决策 \u002F 总结）\n│   ├── client.py            # FOFA API 封装\n│   ├── core.py              # 主工作流调度器\n│   ├── excel.py             # Excel 报告导出\n│   ├── handler.py           # CLI \u002F MCP 入口分发\n│   └── scanner.py           # Nuclei 智能联动\n│\n├── utils\u002F\n│   ├── helpers.py           # 通用工具函数\n│   ├── logger.py            # 日志系统\n│   └── printer.py           # 终端富文本输出\n│\n├── fofamap.py               # 🚀 CLI 主入口（一切从这里开始）\n├── mcp_server.py            # 🔌 MCP Server（给 AI 调用）\n├── results\u002F                 # 📂 所有任务项目目录\n├── requirements.txt\n└── README.md\n```\n\n---\n\n# 🛠️ 安装\n## 1️⃣ 环境\n```bash\nPython >= 3.10\n```\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fasaotomo\u002FFofaMap.git\ncd FofaMap\npip3 install -r requirements.txt\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_c4f49b0a1dd3.png)\n\n```bash\npython3 fofamap.py --help #查看工具用法\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n\u003Cimg alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_46ef815d3d77.png\" \u002F>\n\n\n---\n\n## 2️⃣ 初始化配置（✨ 向导模式）\n```bash\npython3 fofamap.py init\n```\n\n自动引导你填写：\n\n+ FOFA Email \u002F Key\n+ 使用的 AI（DeepSeek \u002F OpenAI \u002F Ollama \u002F LMStudio）\n+ 默认模型名称\n\n配置保存至：\n\n```bash\nconfig\u002Fsettings.yaml\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_8c6e2fe3015a.png)\n\n---\n\n## 3️⃣ 配置 Nuclei（可选）\n如需漏洞扫描：\n\n+ 确保 `nuclei` 在 PATH 中\n\n```bash\nnuclei -version  #输入此命令查看是否添加成功\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_4f7edcc66229.png)\n\n+ 或下载nuclei二进制文件后直接放入项目根目录\n\n```bash\nhttps:\u002F\u002Fgithub.com\u002Fprojectdiscovery\u002Fnuclei\u002Freleases ## nuclei 扫描器官方下载地址，注意要下载对应自己操作系统版本的二进制文件\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_2c13b1746cc7.png)\n\n---\n\n# ⚙️ 配置文件详解（config\u002Fsettings.yaml）\n```bash\n#====== 用户信息 (User Info) ======\nuserinfo:\n  # [基础] FOFA 凭证\n  email: \"your_email@example.com\"\n  key: \"your_fofa_api_key\"\n  \n  # [进阶] AI 模型配置 (支持 DeepSeek\u002FOpenAI\u002FOllama 等)\n  deepseek_api_key: \"sk-xxxxxxxxxxxxxxxxxxxxxxxx\"\n  \n  # 场景 A: 使用官方 DeepSeek\n  api_type: \"deepseek\"\n  base_url: \"https:\u002F\u002Fapi.deepseek.com\u002Fv1\"\n  model: \"deepseek-chat\"\n\n  # 场景 B: 使用本地 Ollama (注释掉上方，启用下方)\n  # api_type: \"ollama\"\n  # base_url: \"http:\u002F\u002Flocalhost:11434\u002Fv1\"\n  # model: \"qwen2.5:7b\"\n\n# ====== 搜索设置 (Search Settings) ======\nsearch:\n  fields: \"host,protocol,ip,port,title,domain,country,icp\"\n  size: 100\n  full: false      # 设为 true 可查询一年前的数据\n  start_page: 1\n  end_page: 5      # 自动爬取前 5 页\n\n# ====== 性能与输出 (System) ======\nsystem:\n  logger: true\n  sheet_merge: true\n  concurrency: 15  # 建议根据网络状况调整 (10-50)\n  export_format: \"xlsx\"  # 支持 xlsx \u002F csv\n  output_dir: \"results\"  # 默认输出目录\n```\n\n---\n\n# 💻 使用方法\n---\n\n# 🧙 模式一：交互式任务向导模式（✨ 新手 & 日常首选）\n💡 **什么参数都不用记，只要运行：**\n\n```plain\npython3 fofamap.py\n```\n\n或：\n\n```plain\npython fofamap.py\n```\n\n即可进入 **AI 驱动的交互式任务向导界面**：\n\n```plain\n________      ____        __  ___            \n   \u002F ____\u002F \u002F_  __\u002F __\u002F___ _  \u002F  |\u002F  \u002F___ _____   \n  \u002F \u002F_  \u002F __ \\\u002F \u002F \u002F_\u002F __ `\u002F \u002F \u002F|_\u002F \u002F __ `\u002F __ \\  \n \u002F __\u002F \u002F \u002F_\u002F \u002F \u002F __\u002F \u002F_\u002F \u002F \u002F \u002F  \u002F \u002F \u002F_\u002F \u002F \u002F_\u002F \u002F  \n\u002F_\u002F    \\____\u002F_\u002F_\u002F  \\__,_\u002F \u002F_\u002F  \u002F_\u002F\\__,_\u002F .___\u002F   \n                                      \u002F_\u002F   v2.0 \n    [ AI Powered & Interactive Wizard ] -- By Hx0 Team\n\n[!] 启动任务向导...\n? 请选择您要执行的操作:\n » 1. 🔮 AI 智能侦察 (自然语言 -> 自动决策)\n   2. 🔍 FOFA 标准查询 (语法输入)\n   3. 🖥️ Host 聚合查询 (IP\u002F域名详情)\n   4. 📊 统计聚合查询 (数据分布分析)\n   5. 🖼️ Icon Hash 查询 (favicon 逆向)\n   6. 📁 批量文件查询 (TXT 批量指令)\n   ---------------\n   0. 🚪 退出程序\n```\n\n---\n\n## 🎯 这个模式适合谁？\n+ ✅ 不想记命令参数的人\n+ ✅ 第一次使用的新手\n+ ✅ 日常使用 \u002F 演示 \u002F 培训 \u002F 快速操作\n+ ✅ 所有“我只想点一下跑任务”的场景\n\n---\n\n## 🧠 向导模式能做什么？\n你可以通过方向键选择：\n\n### 1️⃣ 🔮 AI 智能侦察（⭐ 强烈推荐）\n直接输入一句话：\n\n```plain\n我收集一下美国哈佛大学的子域名网站，并扫描一下\n```\n\n系统将自动：\n\n+ AI 理解意图\n+ 自动生成 FOFA 语法\n+ 自动查询\n+ 自动反思（0 结果会重试）\n+ 自动判断是否扫描\n+ 自动生成扫描参数\n+ 自动生成报告\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_7fb2cef15abc.png)\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_d0a0119d6c79.png)\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_b36bec416ce6.png)\n\n---\n\n### 2️⃣ 🔍 FOFA 标准查询\n使用FOFA查询语句查询数据\n\n```plain\napp=\"ThinkPHP\" && country=\"CN\"\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_5cfeff7f710b.png)\n\n---\n\n### 3️⃣ 🖥️ Host 聚合查询（AI 深度画像）\n根据当前的查询内容，生成聚合信息，host通常是ip，包含基础信息和IP标签。\n\n```plain\n8.8.8.8 \u002F baidu.com \n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_9da202f3d5c6.png)\n\n---\n\n### 4️⃣ 📊 统计聚合查询（AI 态势分析）\n根据当前的查询内容，生成全球统计信息，当前可统计每个字段的前5排名。\n\n```plain\napp=\"redis\"\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_5715eef653aa.png)\n\n---\n\n### 5️⃣ 🖼️ Icon Hash 查询\n\u003Cfont style=\"color:rgb(31, 35, 40);\">用户可通过填入任意一网站地址，\u003C\u002Ffont>系统\u003Cfont style=\"color:rgb(31, 35, 40);\">会自动获取该网站的favicon.ico图标文件，并计算其hash值，并查找与此图标相似的网站。\u003C\u002Ffont>\n\n```plain\nhttps:\u002F\u002Fwww.bing.com\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_20ebc1dd574f.png)\n\n---\n\n### 6️⃣ 📁 批量文件查询\n\u003Cfont style=\"color:rgb(31, 35, 40);\">批量查询，用户可新建一个记事本文件，如targets.txt，然后将准备查询的fofa语句写入其中，输入文件路径（若放在工具根目录可以直接输入文件名称）即可进行批量查询。\u003C\u002Ffont>\n\n```plain\n114.114.114.114\nwww.baidu.com\napp=\"kafka\"\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_bed3be8fd580.png)\n\n# 🔮 模式二：经典模式（ 老用户推荐）\n## 1️⃣ AI查询模式\n```bash\npython3 fofamap.py -ai \"帮我收集一下美国哈佛大学的子域名网站，并扫描一下\"\n```\n\u003Cimg  alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_30b07371e6bd.png\" \u002F>\n\u003Cimg  alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_9320c9737086.png\" \u002F>\n\u003Cimg  alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_197615eb16ca.png\" \u002F>\n\n\n## 2️⃣ 基础查询\n如果用户想要使用fofa联合查询语句，例如：app=\"grafana\" && country=\"US\"。\n\nLinux和macOS用户直接使用python3 fofamap.py -q 'app=\"grafana\" && country=\"US\"'即可成功查询。\n\nWindows用户因为系统原因，需要使用python3 fofamap.py -q \"app=\\\"ThinkPHP\\\" && country=\\\"CN\\\"\"系统才可成功识别，即Windows用户需要对查询命令内部的\"使用\\进行转义，否则系统识别错误。\n```bash\npython3 fofamap.py -q 'app=\"ThinkPHP\" && country=\"CN\"'\n```\n\u003Cimg width=\"1440\" height=\"702\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_25e841d7bcb1.png\" \u002F>\n\n## 3️⃣ Host 深度画像（AI 报告）\n用户使用Host聚合查询模式时，系统可以根据当前的查询内容，生成聚合信息，host通常是ip，包含基础信息和IP标签。\n```bash\npython3 fofamap.py -hq 8.8.8.8\n```\n\u003Cimg alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_074e08d31d7f.png\" \u002F>\n\n## 4️⃣ 统计聚合（AI 态势解读）\n使用统计聚合功能，可以根据当前的查询内容，生成全球统计信息，当前可统计每个字段的前5排名。例如，我们使用下列命令统计全球范围内使用Redis应用的Top5国家。其中-cq为查询内容，-f为需要统计聚合的字段，默认为title，可按照示例配置多个字段 fields=country,protocol,domain,port。详细用法见FOFA API 官方文档\n```bash\npython3 fofamap.py -cq 'app=\"redis\"' -f country,org\n```\n\u003Cimg alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_27f1fdcd3912.png\" \u002F>\n\n---\n\n## 5️⃣ 图标 Hash 查询\n用户可通过填入任意一网站地址，Fofamap会自动获取该网站的favicon.ico图标文件，并计算其hash值，并去查找使用相同favicon.ico图标文件的网站。\n```bash\npython3 fofamap.py -ico https:\u002F\u002Fwww.bing.com\n```\n\u003Cimg alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_445aa3d31e7c.png\" \u002F>\n\n---\n\n## 6️⃣ 批量查询\n用户可新建一个记事本文件，如targets.txt，然后将准备查询的fofa语句写入其中，运行以下命令即可进行批量查询。\n```bash\npython3 fofamap.py -bq targets.txt\n```\n**targets.txt文件内容：**\n\n```plain\n8.8.8.8\nbaidu.com\nicp=\"京ICP备10036305号\"\n```\n\u003Cimg  alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_a7f176889b9d.png\" \u002F>\n\n## 7️⃣ 过滤查询\n| **特性**     | **-i (--include)**       | **-k (--key_word)**                  |\n| ------------ | ------------------------ | ------------------------------------ |\n| **筛选逻辑** | **过滤 (Filter)**        | **搜索 (Search)**                    |\n| **处理阶段** | 第一层 (先执行)          | 第二层 (后执行)                      |\n| **常用对象** | 状态码 | 筛选包含关键词的内容 |\n| **输入示例** | `\"200,301\"` (支持状态码)                  | `\"登录,后台\"` (支持多词)             |\n| **目的**     | **“筛选出对应状态码的查询结果”**     | **“把查询结果中保护指定关键词数据找出来”**               |\n\n\n如下命令：在 baidu.com 的所有资产中，保留 状态码为 200 (网页正常) 的结果，并进一步提取出包含 '文心' 或 '旅游' 关键词的目标。\n```bash\npython3 fofamap.py -q 'domain=\"baidu.com\"' -i \"200\" -k \"文心,旅游\"\n```\n\u003Cimg width=\"1470\" height=\"655\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_060bc447e5d9.png\" \u002F>\n\n## 8️⃣ 自定义导出格式与导出路径\n默认导出格式由 `config\u002Fsettings.yaml` 中的 `system.export_format` 控制，也可以在命令行临时覆盖。\n\n导出为 CSV：\n\n```bash\npython3 fofamap.py -q 'app=\"grafana\" && country=\"US\"' --export-format csv\n```\n\n导出到自定义目录：\n\n```bash\npython3 fofamap.py -q 'app=\"nginx\"' --outdir .\u002Fexports\n```\n\n同时指定文件名和路径：\n\n```bash\npython3 fofamap.py -q 'domain=\"example.com\"' -o .\u002Fexports\u002Fexample_assets.csv\n```\n\n说明：\n+ `--export-format` 支持 `xlsx` 和 `csv`\n+ `--outdir` 用于指定输出目录\n+ `-o\u002F--outfile` 可直接传文件名，也可附带完整路径；若文件后缀为 `.csv` 或 `.xlsx`，程序会自动识别导出格式\n\n\n\n---\n\n# 🔌 模式三：MCP 服务（🔥 给 AI \u002F Agent 用）\n### 1️⃣ 集成到 Cursor (最推荐，体验丝滑)\nCursor 对 MCP 的支持非常完善，配置好后，你可以直接在 Composer (Ctrl+I) 或 Chat (Ctrl+L) 中用自然语言调用工具。\n\n1. 打开 **Cursor Settings** (点击右上角齿轮)。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_4852515fe53f.png)\n\n2. 在左侧菜单找到 **Tools** **&** **MCP**。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_12bd59dc9ca8.png)\n\n3. 点击 **+ Add New MCP Server**。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_cf00b3b13ac9.png)\n\n4. 填写mcp.json配置信息：\n    - **Name**: `fofamap-v2` (随便起)\n    - **Type**: `command` (或者叫 Stdio)\n    - **Command**: `你的Python解释器绝对路径（若写入环境变量可以直接填python）`\n        * 例如：`python3.10`\n    - **Args**: `你的脚本绝对路径`\n        * 例如：`\u002FUsers\u002Fka\u002FDownloads\u002Ffofamap\u002Ffofa\u002Fmcp_server.py`\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_0dea66dd3849.png)\n\n5. 点击 **Save**。\n    - 此时你会看到一个 **绿色的圆点** 🟢，状态显示 `Connected`。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_675847757c0e.png)\n\n    - 如果显示红色，点击刷新图标，或者去 Cursor 的 `Output` -> `MCP Log` 或者是我们刚才修好的 `Log` 窗口看报错。\n\n**👉 如何使用：** 打开 Cursor Chat (Ctrl+L)，直接输入：\n\n“帮我查一下 baidu.com 的资产信息，并检查是否有存活。” \n\nCursor 会自动分析意图，并在界面上显示 `Using tool: search_assets...`。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_2a14e4c4b85c.png)\n\n---\n\n### 2️⃣ 集成到 LM Studio (本地模型)\nLM Studio 0.3.0+ 版本开始支持 MCP。这允许你用本地的 DeepSeek 或 Llama 3 调用你的工具。\n\n1. 打开 **LM Studio**。\n2. 点击对话框中的 **MCP (插头图标)**。\n3. 点击**Install按钮** 。\n4. **选择Edit mcp.json**。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_e600a8ec2925.png)\n\n5. 填写配置：\n    - **Name**: `fofamap-v2`\n    - **Command**: `你的Python解释器绝对路径`\n    - **Args**: `你的脚本绝对路径` (注意：LM Studio 有时需要把 args 分开填，或者填在一个框里，视版本而定)。\n        * _建议形式_: `[\"\u002FUsers\u002Fka\u002F...\u002Fmcp_server.py\"]`\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_c9e7855f2551.png)\n\n6. 点击 **Save**。\n\n**👉 如何使用：**\n\n1. 去 **Chat** 界面。\n2. 加载一个支持 Tool Calling 的模型（推荐 `openai\u002Fgpt-oss-20b` 或 `Qwen 2.5 7B Instruct`，或者是 LM Studio 里的 DeepSeek R1\u002FV3）。\n3. 在聊天框上方的 **Tools** 下拉菜单中，勾选 `mcp\u002Ffofamap-v2`。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_d4083af9358c.png)\n\n4. 输入提示词：“帮我查一下Nginx在美国的分布情况···”\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_4534eb9ce090.png)\n\n---\n\n# ☢️ 漏洞扫描联动（Nuclei）\n在2.0版本中AI 会根据查询结果智能生成Nuclei漏洞扫描命令参数：\n\n```latex\n[AI] 推荐命令: nuclei -tags spring -severity critical,high\n\n> 🚀 执行\n> ✏️ 修改\n> 🚫 仅生成报告\n```\n\n---\n\n# 📂 结果输出结构\n```bash\nresults\u002F\n└── domain__harvard_edu_____country__US_20260108_173107\n    ├── batch_merge_20260108_173107.xlsx\n    ├── nuclei_result_20260108_173107.txt\n    ├── report_20260108_173107.md\n    └── targets_20260108_173107.txt\n```\n\n如果使用 `--export-format csv`，对应的导出文件会变为 `.csv`；如果使用 `--outdir` 或带路径的 `--outfile`，结果会输出到你指定的目录。\n\n---\n\n# 🛡️ 免责声明\n+ 本工具仅面向**合法授权**的企业安全建设行为（如内部攻防演练、资产管理）。\n+ 在使用本工具进行检测时，您应确保该行为符合当地法律法规，并已取得目标所有者的授权。\n+ **禁止用于任何非法用途**。如您在使用本工具的过程中存在非法行为，您需自行承担相应后果，开发者不承担任何法律责任。\n\n---\n\n**FofaMap-V2.0由Hx0战队开发维护**\n\n\u003Cimg width=\"318\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_8b7867da5b5f.png\">\n\n**【打赏支持❤️】代码传情跨山海，点滴支持皆温暖✨**\n\n虽然代码完全开源，但每杯咖啡都能让我们走得更远 ☕️\n\n\u003Cimg width=\"500\" height=\"400\" alt=\"打赏码\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_ebe537450231.png\" \u002F>\n\n**特别鸣谢～渊龙Sec团队**\n\n\u003Cimg width=\"318\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_a823b2a1085e.jpg\">\n\n**特别鸣谢～FOFA官方**\n\nFoFaMap 已加入 FOFA [共创者计划](https:\u002F\u002Ffofa.info\u002Fdevelopment)，感谢 FOFA 提供的账号支持。\n\n\u003Cimg width=\"318\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_0e7b18dc2e13.png\">\n\n**【战队公众号】扫描关注战队公众号，获取最新动态**\n\n\u003Cimg width=\"318\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_0ef1ffb1173e.png\">\n\n**【战队知识星球】福利大放送，限时优惠-仅限前100名**\n\n\u003Cimg width=\"318\" height=\"958\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_74a05406ab5c.png\" \u002F>\n\n\n## 历史Star\n\n[![Star History Chart](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_2c5d48f9c5b3.png)](https:\u002F\u002Fstar-history.com\u002F#asaotomo\u002FFofaMap)\n","# 🗺️ FofaMap v2.0 — 白金版红队资产测绘智能体\n> 🧠 **全网首个支持 MCP 协议 + AI 自我反思机制的红队资产测绘智能体**  \n自我反思型AI查询 → MCP协议集成 → 智能漏洞扫描\n>\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPython-3.10+-blue.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FVersion-2.0.0-blue.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FAI-Self--Reflecting-blueviolet.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FMCP-AI%20Ready-purple.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FNuclei-Integrated-orange.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDeepSeek-V3-red.svg)\n![](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-green.svg)\n---\n\n# ✨ 一句话介绍\n> ❌ 它不是 FOFA 工具  \n❌ 也不是 Nuclei 封装  \n✅ 它是：**一个可以被 AI 接管、会自己反思、会自己决策扫描策略的「全网资产测绘智能体」**\n>\n\n\u003Cimg width=\"1024\" height=\"559\" alt=\"xcy\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_3ddd517b0d22.png\" \u002F>\n\n\n---\n\n# 🚀 v2.0 是什么级别的升级？\n> FofaMap 从「资产查询工具」→ **进化为 AI Agent（智能体）**\n>\n\n### 🧠 1️⃣ 你只要说人话\n```bash\npython3 fofamap.py -ai \"帮我找一下bing.com所有的子域名，并扫描一下\"\n```\n\nAI 自动完成：\n\n+ 理解你的意图\n+ 生成 FOFA 语法\n+ 查询资产\n+ 若 0 结果 → 启动 **自我反思机制** 自动放宽条件重试\n+ 分析资产指纹\n+ 判断是否值得扫描\n+ 自动生成 Nuclei 扫描参数\n+ 询问你是否执行\n\n---\n\n### 🤖 2️⃣ 会“自我反思”的 AI（核心黑科技）\n> 不再出现：`0 Results`\n>\n\nAI 会自动：\n\n+ 判断：\n    - 是否地区条件过严？\n    - 是否关键词不合理？\n    - 是否语法太死？\n+ 自动：\n    - 放宽条件\n    - 重写语法\n    - 多策略重试\n+ 直到：**尽量给你产出结果**\n\n---\n\n### 🔌 3️⃣ 原生 MCP 支持（给 AI \u002F Agent 用）\n> 支持：**Claude Desktop \u002F Cursor \u002F 自建 Agent**\n>\n\n你可以直接对 AI 说：\n\n> 「调用 FofaMap，帮我分析最近致远 OA 的风险态势」\n>\n\nAI 会：\n\n> 自动调用 FofaMap → 自动跑任务 → 自动总结报告\n>\n\n+ **Cursor调用效果**\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_c359ec5c7e02.png)\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_18e8848b8f77.png)\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_24a4ee788271.png)\n\n+ **LM Stuido调用效果**\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_ec87a10ee254.png)\n\n---\n\n### 🎯 4️⃣ 看人下菜的“智能扫描决策”\nAI 会根据资产指纹：\n\n| 发现 | 自动推荐 |\n| --- | --- |\n| Spring | `-tags spring` |\n| WebLogic | `-tags weblogic` |\n| ThinkPHP | `-tags thinkphp` |\n| Struts2 | `-tags struts` |\n\n\n> ❌ 不再无脑全量扫  \n✅ 每一次扫描都是 **有脑子的精准打击**\n>\n\n---\n\n# 🧩 谁适合用？\n+ 🧑‍💻 安全小白：\n\n> 会说一句话就能用\n>\n\n+ 🛡️ SRC \u002F 红队：\n\n> 批量资产 + 自动化挖洞 + 自动报告\n>\n\n+ 🤖 AI Agent 开发者：\n\n> 直接当「安全能力插件」\n>\n\n+ 🏗️ 平台开发者：\n\n> 可嵌入到攻防平台 \u002F 资产平台 \u002F SOC\n>\n\n---\n\n# 📦 项目结构（平台级架构）\n```bash\n.\n├── config\u002F\n│   ├── __init__.py          # ✅ 负责读取 yaml 并导出 settings 对象\n│   └── settings.yaml        # ⭐ 全局配置（FOFA \u002F AI \u002F 系统）\n│\n├── core\u002F                    # 🧠 核心引擎层\n│   ├── ai.py                # AI Agent 中枢（意图 \u002F 反思 \u002F 决策 \u002F 总结）\n│   ├── client.py            # FOFA API 封装\n│   ├── core.py              # 主工作流调度器\n│   ├── excel.py             # Excel 报告导出\n│   ├── handler.py           # CLI \u002F MCP 入口分发\n│   └── scanner.py           # Nuclei 智能联动\n│\n├── utils\u002F\n│   ├── helpers.py           # 通用工具函数\n│   ├── logger.py            # 日志系统\n│   └── printer.py           # 终端富文本输出\n│\n├── fofamap.py               # 🚀 CLI 主入口（一切从这里开始）\n├── mcp_server.py            # 🔌 MCP Server（给 AI 调用）\n├── results\u002F                 # 📂 所有任务项目目录\n├── requirements.txt\n└── README.md\n```\n\n---\n\n# 🛠️ 安装\n## 1️⃣ 环境\n```bash\nPython >= 3.10\n```\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fasaotomo\u002FFofaMap.git\ncd FofaMap\npip3 install -r requirements.txt\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_c4f49b0a1dd3.png)\n\n```bash\npython3 fofamap.py --help #查看工具用法\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n\u003Cimg alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_46ef815d3d77.png\" \u002F>\n\n\n---\n\n## 2️⃣ 初始化配置（✨ 向导模式）\n```bash\npython3 fofamap.py init\n```\n\n自动引导你填写：\n\n+ FOFA Email \u002F Key\n+ 使用的 AI（DeepSeek \u002F OpenAI \u002F Ollama \u002F LMStudio）\n+ 默认模型名称\n\n配置保存至：\n\n```bash\nconfig\u002Fsettings.yaml\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_8c6e2fe3015a.png)\n\n---\n\n## 3️⃣ 配置 Nuclei（可选）\n如需漏洞扫描：\n\n+ 确保 `nuclei` 在 PATH 中\n\n```bash\nnuclei -version  #输入此命令查看是否添加成功\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_4f7edcc66229.png)\n\n+ 或下载nuclei二进制文件后直接放入项目根目录\n\n```bash\nhttps:\u002F\u002Fgithub.com\u002Fprojectdiscovery\u002Fnuclei\u002Freleases ## nuclei 扫描器官方下载地址，注意要下载对应自己操作系统版本的二进制文件\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_2c13b1746cc7.png)\n\n---\n\n# ⚙️ 配置文件详解（config\u002Fsettings.yaml）\n```bash\n#====== 用户信息 (User Info) ======\nuserinfo:\n  # [基础] FOFA 凭证\n  email: \"your_email@example.com\"\n  key: \"your_fofa_api_key\"\n  \n  # [进阶] AI 模型配置 (支持 DeepSeek\u002FOpenAI\u002FOllama 等)\n  deepseek_api_key: \"sk-xxxxxxxxxxxxxxxxxxxxxxxx\"\n  \n  # 场景 A: 使用官方 DeepSeek\n  api_type: \"deepseek\"\n  base_url: \"https:\u002F\u002Fapi.deepseek.com\u002Fv1\"\n  model: \"deepseek-chat\"\n\n  # 场景 B: 使用本地 Ollama (注释掉上方，启用下方)\n  # api_type: \"ollama\"\n  # base_url: \"http:\u002F\u002Flocalhost:11434\u002Fv1\"\n  # model: \"qwen2.5:7b\"\n\n# ====== 搜索设置 (Search Settings) ======\nsearch:\n  fields: \"host,protocol,ip,port,title,domain,country,icp\"\n  size: 100\n  full: false      # 设为 true 可查询一年前的数据\n  start_page: 1\n  end_page: 5      # 自动爬取前 5 页\n\n# ====== 性能与输出 (System) ======\nsystem:\n  logger: true\n  sheet_merge: true\n  concurrency: 15  # 建议根据网络状况调整 (10-50)\n  export_format: \"xlsx\"  # 支持 xlsx \u002F csv\n  output_dir: \"results\"  # 默认输出目录\n```\n\n---\n\n# 💻 使用方法\n---\n\n# 🧙 模式一：交互式任务向导模式（✨ 新手 & 日常首选）\n💡 **什么参数都不用记，只要运行：**\n\n```plain\npython3 fofamap.py\n```\n\n或：\n\n```plain\npython fofamap.py\n```\n\n即可进入 **AI 驱动的交互式任务向导界面**：\n\n```plain\n________      ____        __  ___            \n   \u002F ____\u002F \u002F_  __\u002F __\u002F___ _  \u002F  |\u002F  \u002F___ _____   \n  \u002F \u002F_  \u002F __ \\\u002F \u002F \u002F_\u002F __ `\u002F \u002F \u002F|_\u002F \u002F __ `\u002F __ \\  \n \u002F __\u002F \u002F \u002F_\u002F \u002F \u002F __\u002F \u002F_\u002F \u002F \u002F \u002F  \u002F \u002F \u002F_\u002F \u002F \u002F_\u002F \u002F  \n\u002F_\u002F    \\____\u002F_\u002F_\u002F  \\__,_\u002F \u002F_\u002F  \u002F_\u002F\\__,_\u002F .___\u002F   \n                                      \u002F_\u002F   v2.0 \n    [ AI Powered & Interactive Wizard ] -- By Hx0 Team\n\n[!] 启动任务向导...\n? 请选择您要执行的操作:\n » 1. 🔮 AI 智能侦察 (自然语言 -> 自动决策)\n   2. 🔍 FOFA 标准查询 (语法输入)\n   3. 🖥️ Host 聚合查询 (IP\u002F域名详情)\n   4. 📊 统计聚合查询 (数据分布分析)\n   5. 🖼️ Icon Hash 查询 (favicon 逆向)\n   6. 📁 批量文件查询 (TXT 批量指令)\n   ---------------\n   0. 🚪 退出程序\n```\n\n---\n\n## 🎯 这个模式适合谁？\n+ ✅ 不想记命令参数的人\n+ ✅ 第一次使用的新手\n+ ✅ 日常使用 \u002F 演示 \u002F 培训 \u002F 快速操作\n+ ✅ 所有“我只想点一下跑任务”的场景\n\n---\n\n## 🧠 向导模式能做什么？\n你可以通过方向键选择：\n\n### 1️⃣ 🔮 AI 智能侦察（⭐ 强烈推荐）\n直接输入一句话：\n\n```plain\n我收集一下美国哈佛大学的子域名网站，并扫描一下\n```\n\n系统将自动：\n\n+ AI 理解意图\n+ 自动生成 FOFA 语法\n+ 自动查询\n+ 自动反思（0 结果会重试）\n+ 自动判断是否扫描\n+ 自动生成扫描参数\n+ 自动生成报告\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_7fb2cef15abc.png)\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_d0a0119d6c79.png)\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_b36bec416ce6.png)\n\n---\n\n### 2️⃣ 🔍 FOFA 标准查询\n使用FOFA查询语句查询数据\n\n```plain\napp=\"ThinkPHP\" && country=\"CN\"\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_5cfeff7f710b.png)\n\n---\n\n### 3️⃣ 🖥️ Host 聚合查询（AI 深度画像）\n根据当前的查询内容，生成聚合信息，host通常是ip，包含基础信息和IP标签。\n\n```plain\n8.8.8.8 \u002F baidu.com \n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_9da202f3d5c6.png)\n\n---\n\n### 4️⃣ 📊 统计聚合查询（AI 态势分析）\n根据当前的查询内容，生成全球统计信息，当前可统计每个字段的前5排名。\n\n```plain\napp=\"redis\"\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_5715eef653aa.png)\n\n---\n\n### 5️⃣ 🖼️ Icon Hash 查询\n\u003Cfont style=\"color:rgb(31, 35, 40);\">用户可通过填入任意一网站地址，\u003C\u002Ffont>系统\u003Cfont style=\"color:rgb(31, 35, 40);\">会自动获取该网站的favicon.ico图标文件，并计算其hash值，并查找与此图标相似的网站。\u003C\u002Ffont>\n\n```plain\nhttps:\u002F\u002Fwww.bing.com\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_20ebc1dd574f.png)\n\n---\n\n### 6️⃣ 📁 批量文件查询\n\u003Cfont style=\"color:rgb(31, 35, 40);\">批量查询，用户可新建一个记事本文件，如targets.txt，然后将准备查询的fofa语句写入其中，输入文件路径（若放在工具根目录可以直接输入文件名称）即可进行批量查询。\u003C\u002Ffont>\n\n```plain\n114.114.114.114\nwww.baidu.com\napp=\"kafka\"\n```\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_bed3be8fd580.png)\n\n# 🔮 模式二：经典模式（ 老用户推荐）\n## 1️⃣ AI查询模式\n```bash\npython3 fofamap.py -ai \"帮我收集一下美国哈佛大学的子域名网站，并扫描一下\"\n```\n\u003Cimg  alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_30b07371e6bd.png\" \u002F>\n\u003Cimg  alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_9320c9737086.png\" \u002F>\n\u003Cimg  alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_197615eb16ca.png\" \u002F>\n\n\n## 2️⃣ 基础查询\n如果用户想要使用fofa联合查询语句，例如：app=\"grafana\" && country=\"US\"。\n\nLinux和macOS用户直接使用python3 fofamap.py -q 'app=\"grafana\" && country=\"US\"'即可成功查询。\n\nWindows用户因为系统原因，需要使用python3 fofamap.py -q \"app=\\\"ThinkPHP\\\" && country=\\\"CN\\\"\"系统才可成功识别，即Windows用户需要对查询命令内部的\"使用\\进行转义，否则系统识别错误。\n```bash\npython3 fofamap.py -q 'app=\"ThinkPHP\" && country=\"CN\"'\n```\n\u003Cimg width=\"1440\" height=\"702\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_25e841d7bcb1.png\" \u002F>\n\n## 3️⃣ Host 深度画像（AI 报告）\n用户使用Host聚合查询模式时，系统可以根据当前的查询内容，生成聚合信息，host通常是ip，包含基础信息和IP标签。\n```bash\npython3 fofamap.py -hq 8.8.8.8\n```\n\u003Cimg alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_074e08d31d7f.png\" \u002F>\n\n## 4️⃣ 统计聚合（AI 态势解读）\n使用统计聚合功能，可以根据当前的查询内容，生成全球统计信息，当前可统计每个字段的前5排名。例如，我们使用下列命令统计全球范围内使用Redis应用的Top5国家。其中-cq为查询内容，-f为需要统计聚合的字段，默认为title，可按照示例配置多个字段 fields=country,protocol,domain,port。详细用法见FOFA API 官方文档\n```bash\npython3 fofamap.py -cq 'app=\"redis\"' -f country,org\n```\n\u003Cimg alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_27f1fdcd3912.png\" \u002F>\n\n---\n\n## 5️⃣ 图标 Hash 查询\n用户可通过填入任意一网站地址，Fofamap会自动获取该网站的favicon.ico图标文件，并计算其hash值，并去查找使用相同favicon.ico图标文件的网站。\n```bash\npython3 fofamap.py -ico https:\u002F\u002Fwww.bing.com\n```\n\u003Cimg alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_445aa3d31e7c.png\" \u002F>\n\n---\n\n## 6️⃣ 批量查询\n用户可新建一个记事本文件，如targets.txt，然后将准备查询的fofa语句写入其中，运行以下命令即可进行批量查询。\n```bash\npython3 fofamap.py -bq targets.txt\n```\n**targets.txt文件内容：**\n\n```plain\n8.8.8.8\nbaidu.com\nicp=\"京ICP备10036305号\"\n```\n\u003Cimg  alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_a7f176889b9d.png\" \u002F>\n\n## 7️⃣ 过滤查询\n| **特性**     | **-i (--include)**       | **-k (--key_word)**                  |\n| ------------ | ------------------------ | ------------------------------------ |\n| **筛选逻辑** | **过滤 (Filter)**        | **搜索 (Search)**                    |\n| **处理阶段** | 第一层 (先执行)          | 第二层 (后执行)                      |\n| **常用对象** | 状态码 | 筛选包含关键词的内容 |\n| **输入示例** | `\"200,301\"` (支持状态码)                  | `\"登录,后台\"` (支持多词)             |\n| **目的**     | **“筛选出对应状态码的查询结果”**     | **“把查询结果中保护指定关键词数据找出来”**               |\n\n\n如下命令：在 baidu.com 的所有资产中，保留 状态码为 200 (网页正常) 的结果，并进一步提取出包含 '文心' 或 '旅游' 关键词的目标。\n```bash\npython3 fofamap.py -q 'domain=\"baidu.com\"' -i \"200\" -k \"文心,旅游\"\n```\n\u003Cimg width=\"1470\" height=\"655\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_060bc447e5d9.png\" \u002F>\n\n## 8️⃣ 自定义导出格式与导出路径\n默认导出格式由 `config\u002Fsettings.yaml` 中的 `system.export_format` 控制，也可以在命令行临时覆盖。\n\n导出为 CSV：\n\n```bash\npython3 fofamap.py -q 'app=\"grafana\" && country=\"US\"' --export-format csv\n```\n\n导出到自定义目录：\n\n```bash\npython3 fofamap.py -q 'app=\"nginx\"' --outdir .\u002Fexports\n```\n\n同时指定文件名和路径：\n\n```bash\npython3 fofamap.py -q 'domain=\"example.com\"' -o .\u002Fexports\u002Fexample_assets.csv\n```\n\n说明：\n+ `--export-format` 支持 `xlsx` 和 `csv`\n+ `--outdir` 用于指定输出目录\n+ `-o\u002F--outfile` 可直接传文件名，也可附带完整路径；若文件后缀为 `.csv` 或 `.xlsx`，程序会自动识别导出格式\n\n\n\n---\n\n# 🔌 模式三：MCP 服务（🔥 给 AI \u002F Agent 用）\n### 1️⃣ 集成到 Cursor (最推荐，体验丝滑)\nCursor 对 MCP 的支持非常完善，配置好后，你可以直接在 Composer (Ctrl+I) 或 Chat (Ctrl+L) 中用自然语言调用工具。\n\n1. 打开 **Cursor Settings** (点击右上角齿轮)。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_4852515fe53f.png)\n\n2. 在左侧菜单找到 **Tools** **&** **MCP**。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_12bd59dc9ca8.png)\n\n3. 点击 **+ Add New MCP Server**。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_cf00b3b13ac9.png)\n\n4. 填写mcp.json配置信息：\n    - **Name**: `fofamap-v2` (随便起)\n    - **Type**: `command` (或者叫 Stdio)\n    - **Command**: `你的Python解释器绝对路径（若写入环境变量可以直接填python）`\n        * 例如：`python3.10`\n    - **Args**: `你的脚本绝对路径`\n        * 例如：`\u002FUsers\u002Fka\u002FDownloads\u002Ffofamap\u002Ffofa\u002Fmcp_server.py`\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_0dea66dd3849.png)\n\n5. 点击 **Save**。\n    - 此时你会看到一个 **绿色的圆点** 🟢，状态显示 `Connected`。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_675847757c0e.png)\n\n    - 如果显示红色，点击刷新图标，或者去 Cursor 的 `Output` -> `MCP Log` 或者是我们刚才修好的 `Log` 窗口看报错。\n\n**👉 如何使用：** 打开 Cursor Chat (Ctrl+L)，直接输入：\n\n“帮我查一下 baidu.com 的资产信息，并检查是否有存活。” \n\nCursor 会自动分析意图，并在界面上显示 `Using tool: search_assets...`。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_2a14e4c4b85c.png)\n\n---\n\n### 2️⃣ 集成到 LM Studio（本地模型）\nLM Studio 0.3.0+ 版本开始支持 MCP。这允许你用本地的 DeepSeek 或 Llama 3 调用你的工具。\n\n1. 打开 **LM Studio**。\n2. 点击对话框中的 **MCP（插头图标）**。\n3. 点击**Install按钮** 。\n4. **选择Edit mcp.json**。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_e600a8ec2925.png)\n\n5. 填写配置：\n    - **Name**: `fofamap-v2`\n    - **Command**: `你的Python解释器绝对路径`\n    - **Args**: `你的脚本绝对路径` (注意：LM Studio 有时需要把 args 分开填，或者填在一个框里，视版本而定)。\n        * _建议形式_: `[\"\u002FUsers\u002Fka\u002F...\u002Fmcp_server.py\"]`\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_c9e7855f2551.png)\n\n6. 点击 **Save**。\n\n**👉 如何使用：**\n\n1. 去 **Chat** 界面。\n2. 加载一个支持 Tool Calling 的模型（推荐 `openai\u002Fgpt-oss-20b` 或 `Qwen 2.5 7B Instruct`，或者是 LM Studio 里的 DeepSeek R1\u002FV3）。\n3. 在聊天框上方的 **Tools** 下拉菜单中，勾选 `mcp\u002Ffofamap-v2`。\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_d4083af9358c.png)\n\n4. 输入提示词：“帮我查一下Nginx在美国的分布情况···”\n\n\u003C!-- 这是一张图片，ocr 内容为： -->\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_4534eb9ce090.png)\n\n---\n\n# ☢️ 漏洞扫描联动（Nuclei）\n在2.0版本中AI 会根据查询结果智能生成Nuclei漏洞扫描命令参数：\n\n```latex\n[AI] 推荐命令: nuclei -tags spring -severity critical,high\n\n> 🚀 执行\n> ✏️ 修改\n> 🚫 仅生成报告\n```\n\n---\n\n# 📂 结果输出结构\n```bash\nresults\u002F\n└── domain__harvard_edu_____country__US_20260108_173107\n    ├── batch_merge_20260108_173107.xlsx\n    ├── nuclei_result_20260108_173107.txt\n    ├── report_20260108_173107.md\n    └── targets_20260108_173107.txt\n```\n\n如果使用 `--export-format csv`，对应的导出文件会变为 `.csv`；如果使用 `--outdir` 或带路径的 `--outfile`，结果会输出到你指定的目录。\n\n---\n\n# 🛡️ 免责声明\n+ 本工具仅面向**合法授权**的企业安全建设行为（如内部攻防演练、资产管理）。\n+ 在使用本工具进行检测时，您应确保该行为符合当地法律法规，并已取得目标所有者的授权。\n+ **禁止用于任何非法用途**。如您在使用本工具的过程中存在非法行为，您需自行承担相应后果，开发者不承担任何法律责任。\n\n---\n\n**FofaMap-V2.0由Hx0战队开发维护**\n\n\u003Cimg width=\"318\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_8b7867da5b5f.png\">\n\n**【打赏支持❤️】代码传情跨山海，点滴支持皆温暖✨**\n\n虽然代码完全开源，但每杯咖啡都能让我们走得更远 ☕️\n\n\u003Cimg width=\"500\" height=\"400\" alt=\"打赏码\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_ebe537450231.png\" \u002F>\n\n**特别鸣谢～渊龙Sec团队**\n\n\u003Cimg width=\"318\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_a823b2a1085e.jpg\">\n\n**特别鸣谢～FOFA官方**\n\nFoFaMap 已加入 FOFA [共创者计划](https:\u002F\u002Ffofa.info\u002Fdevelopment)，感谢 FOFA 提供的账号支持。\n\n\u003Cimg width=\"318\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_0e7b18dc2e13.png\">\n\n**【战队公众号】扫描关注战队公众号，获取最新动态**\n\n\u003Cimg width=\"318\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_0ef1ffb1173e.png\">\n\n**【战队知识星球】福利大放送，限时优惠-仅限前100名**\n\n\u003Cimg width=\"318\" height=\"958\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_74a05406ab5c.png\" \u002F>\n\n\n## 历史Star\n\n[![Star History Chart](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_readme_2c5d48f9c5b3.png)](https:\u002F\u002Fstar-history.com\u002F#asaotomo\u002FFofaMap)","# FofaMap v2.0 快速上手指南\n\nFofaMap 是一款支持 MCP 协议与 AI 自我反思机制的红队资产测绘智能体。它不仅能执行 FOFA 查询，还能通过 AI 自动理解意图、生成语法、在无结果时自我反思调整策略，并联动 Nuclei 进行智能漏洞扫描。\n\n## 1. 环境准备\n\n在开始之前，请确保您的系统满足以下要求：\n\n*   **操作系统**: Linux, macOS 或 Windows\n*   **Python 版本**: Python 3.10 或更高版本\n*   **依赖工具 (可选)**: 若需使用漏洞扫描功能，需安装 `nuclei` 并确保其在系统 PATH 中，或将二进制文件放入项目根目录。\n\n## 2. 安装步骤\n\n### 2.1 克隆项目与安装依赖\n\n打开终端，执行以下命令获取源码并安装 Python 依赖：\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fasaotomo\u002FFofaMap.git\ncd FofaMap\npip3 install -r requirements.txt\n```\n\n> **提示**：国内用户若下载依赖较慢，可使用国内镜像源加速：\n> `pip3 install -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple`\n\n### 2.2 初始化配置\n\n运行初始向导，按提示录入 FOFA 凭证及 AI 模型配置（支持 DeepSeek、OpenAI、Ollama 等）：\n\n```bash\npython3 fofamap.py init\n```\n\n配置将自动保存至 `config\u002Fsettings.yaml`。\n\n### 2.3 配置 Nuclei (可选)\n\n如需启用智能漏洞扫描，请确保已安装 Nuclei：\n\n```bash\nnuclei -version\n```\n\n若未安装，可从 [Nuclei Releases](https:\u002F\u002Fgithub.com\u002Fprojectdiscovery\u002Fnuclei\u002Freleases) 下载对应系统的二进制文件，放入项目根目录或配置环境变量。\n\n## 3. 基本使用\n\nFofaMap 提供两种主要使用模式：**交互式向导模式**（推荐新手）和 **命令行经典模式**。\n\n### 模式一：交互式向导模式（推荐）\n\n无需记忆复杂参数，直接运行程序即可进入 AI 驱动的交互界面：\n\n```bash\npython3 fofamap.py\n```\n\n进入界面后，通过方向键选择操作：\n1.  **🔮 AI 智能侦察**：输入自然语言（如“帮我找一下 bing.com 所有的子域名，并扫描一下”），AI 将自动完成意图理解、语法生成、查询、自我反思重试及扫描决策。\n2.  **🔍 FOFA 标准查询**：直接输入 FOFA 语法进行查询。\n3.  **其他功能**：支持 Host 聚合、统计聚合、Icon Hash 反查及批量文件查询。\n\n### 模式二：命令行经典模式\n\n适合脚本调用或熟悉参数的老用户。\n\n#### 1. AI 智能查询（核心功能）\n让 AI 自动处理查询与扫描策略：\n\n```bash\npython3 fofamap.py -ai \"帮我收集一下美国哈佛大学的子域名网站，并扫描一下\"\n```\n\n#### 2. 基础 FOFA 查询\n直接使用 FOFA 语法查询（注意 Windows 下需对双引号转义）：\n\n```bash\n# Linux\u002FmacOS\npython3 fofamap.py -q 'app=\"ThinkPHP\" && country=\"CN\"'\n\n# Windows\npython3 fofamap.py -q \"app=\\\"ThinkPHP\\\" && country=\\\"CN\\\"\"\n```\n\n#### 3. 高级功能示例\n\n*   **Host 深度画像**：\n    ```bash\n    python3 fofamap.py -hq 8.8.8.8\n    ```\n*   **统计聚合分析**（统计特定字段分布）：\n    ```bash\n    python3 fofamap.py -cq 'app=\"redis\"' -f country,org\n    ```\n*   **Icon Hash 反查**：\n    ```bash\n    python3 fofamap.py -ico https:\u002F\u002Fwww.bing.com\n    ```\n*   **批量查询**：\n    ```bash\n    python3 fofamap.py -bq targets.txt\n    ```\n*   **结果过滤**（筛选状态码 200 且包含关键词“后台”的结果）：\n    ```bash\n    python3 fofamap.py -q 'domain=\"baidu.com\"' -i \"200\" -k \"后台\"\n    ```\n\n#### 4. 自定义导出\n支持指定导出格式（xlsx\u002Fcsv）和路径：\n\n```bash\n# 导出为 CSV\npython3 fofamap.py -q 'app=\"grafana\"' --export-format csv\n\n# 指定输出目录\npython3 fofamap.py -q 'app=\"nginx\"' --outdir .\u002Fexports\n\n# 指定完整文件名\npython3 fofamap.py -q 'domain=\"example.com\"' -o .\u002Fexports\u002Fexample_assets.csv\n```\n\n---\n*更多高级用法（如集成 Cursor\u002FMCP 服务）请参考项目完整文档。*","某红队成员在接到紧急任务时，需要快速对目标集团 `example.com` 进行全面的资产暴露面梳理，并针对发现的脆弱组件制定精准的攻击策略。\n\n### 没有 FofaMap 时\n- **语法调试耗时**：为了凑齐子域名和特定端口，需手动反复编写和调整 FOFA 搜索语法，常因条件过严导致\"0 结果”，不得不人工排查原因并重试。\n- **扫描策略盲目**：获取资产列表后，需人工分析指纹信息来决定使用哪些 Nuclei 模板，容易因疏忽导致全量盲扫效率低下或漏掉关键漏洞。\n- **工具链割裂**：资产测绘、存活检测、漏洞扫描分散在不同工具中，数据需手动导出导入，无法形成自动化闭环，报告整理耗费大量精力。\n- **决策依赖经验**：面对海量数据，缺乏智能辅助判断哪些资产值得优先攻击，高度依赖操作人员的个人经验和直觉。\n\n### 使用 FofaMap 后\n- **自然语言交互**：只需输入“帮我找 example.com 所有资产并扫描”，FofaMap 自动理解意图生成语法，若遇无结果情况会触发自我反思机制自动放宽条件重试，直至产出数据。\n- **智能联动扫描**：FofaMap 识别到资产包含 Spring 或 WebLogic 指纹后，自动推荐并调用对应的 Nuclei 精准扫描策略，实现“看人下菜”的有脑子打击。\n- **全流程自动化**：从资产发现、存活验证到漏洞扫描及报告生成，FofaMap 一站式完成，并通过 MCP 协议直接嵌入 Cursor 等 AI 编辑器，实时输出结构化结论。\n- **主动智能决策**：内置的 AI 代理能根据扫描结果自动评估风险态势，主动筛选高价值目标，将操作人员从繁琐的数据清洗中解放出来，专注于核心攻防决策。\n\nFofaMap 将传统的被动资产采集进化为具备自我反思与决策能力的智能体，让红队作业实现了从“手工劳作”到\"AI 驱动”的效率飞跃。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fasaotomo_FofaMap_c359ec5c.png","asaotomo",null,"https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fasaotomo_d689ec9a.png","挑战论英雄,探索无极限","Hx0战队","https:\u002F\u002Fgithub.com\u002Fasaotomo",[79],{"name":80,"color":81,"percentage":82},"Python","#3572A5",100,629,82,"2026-04-06T13:51:59","Apache-2.0","Linux, macOS, Windows","未说明",{"notes":90,"python":91,"dependencies":92},"1. 可选依赖：若需漏洞扫描功能，需单独安装 Nuclei 并确保其在系统 PATH 中或放入项目根目录。\n2. 配置要求：首次运行需执行初始化命令配置 FOFA 凭证及 AI 模型密钥（支持 DeepSeek, OpenAI, Ollama, LMStudio）。\n3. Windows 用户注意：在命令行使用基础查询模式时，若查询语句包含双引号，需使用反斜杠进行转义。","3.10+",[93,94,95,96,97],"requests","openai","yaml","pandas","openpyxl",[13,99],"插件",[101,102,103,104,105,106,107,108,109,110,111],"python3","ai-agent","asset-mapping","fofa-api","fofamap","information-gathering-tools","mcp","mcp-protocol","nuclei-scan","redteam","vulnerability-scanner","2026-03-27T02:49:30.150509","2026-04-07T03:52:50.304638",[115,120],{"id":116,"question_zh":117,"answer_zh":118,"source_url":119},20837,"如何导出 CSV 格式的结果并自定义输出路径？","最新版本已支持 CSV 导出和自定义路径。使用方法如下：\n1. 使用 `--export-format csv` 将结果导出为 CSV 格式。\n2. 使用 `--outdir \u003Cpath>` 指定自定义输出目录。\n3. 使用 `-o \u003Cfile>` 直接设置自定义输出文件名或完整路径。\n\n示例命令：\n```bash\npython3 fofamap.py -q 'app=\"nginx\"' --export-format csv\npython3 fofamap.py -q 'app=\"nginx\"' --outdir .\u002Fexports\npython3 fofamap.py -q 'domain=\"example.com\"' -o .\u002Fexports\u002Fexample_assets.csv\n```\n此外，也可以在 `config\u002Fsettings.yaml` 中设置默认值：\n- `system.export_format: \"csv\"`\n- `system.output_dir: \"results\"`","https:\u002F\u002Fgithub.com\u002Fasaotomo\u002FFofaMap\u002Fissues\u002F37",{"id":121,"question_zh":122,"answer_zh":123,"source_url":124},20838,"执行批量查询（-bq）时遇到 'Row has incorrect number of values' 报错怎么办？","该错误通常由数据行数值数量不匹配引起，可能原因包括 API 请求达到上限导致返回数据不完整，或输入文件内容格式异常。\n建议排查步骤：\n1. 检查输入的 txt 文件（如 bb.txt）内容是否符合规范，确保每行是一个有效的 FOFA 查询语句。\n2. 确认是否因频繁请求触发了 API 限制，稍后重试看是否恢复正常。\n3. 如果问题持续，请提供具体的输入文件内容细节以便进一步复现和定位问题。","https:\u002F\u002Fgithub.com\u002Fasaotomo\u002FFofaMap\u002Fissues\u002F21",[126,131,136],{"id":127,"version":128,"summary_zh":129,"released_at":130},126846,"v2.0.0","### 📖 更新日志 (Release Notes)\n\nFofaMap v2.0 不仅仅是一个版本的更迭，它完成了从 **「资产查询工具」** 到 **「AI Agent (安全智能体)」** 的跨越式进化。\n\n#### 🧠 核心特性\n\n- **AI 自我反思机制 (Self-Reflection)：** 告别 `0 Results`。当 AI 发现搜索条件过严或语法不合理时，会自动放宽条件、重写语法并多策略重试，直到产出结果。\n- **原生 MCP 协议支持：** 现已支持接入 **Claude Desktop, Cursor, LM Studio**。你可以直接在这些 AI 编辑器中以自然语言调用 FofaMap 的能力。\n- **智能扫描决策：** AI 会根据资产指纹（如 Spring, WebLogic, ThinkPHP）自动推荐并生成精准的 Nuclei 扫描指令，拒绝盲目全量扫描。\n- **全交互式任务向导：** 运行 `python3 fofamap.py` 即可进入向导，无需记忆任何复杂命令，一句话开启“侦察-分析-扫描-报告”全流程。\n\n#### 🛠️ 架构升级\n\n- **模块化重构：** 采用全新的平台级架构（Core Engine \u002F AI Agent \u002F Scanner Logic），支持开发者将其作为插件嵌入攻防平台。\n- **多模型支持：** 完美适配 DeepSeek (推荐)、OpenAI、Ollama 及 LM Studio 等主流模型接口。\n\n#### 📦 如何开始\n\n1. 克隆仓库：`git clone https:\u002F\u002Fgithub.com\u002Fasaotomo\u002FFofaMap.git`\n2. 初始化配置：`python3 fofamap.py init`\n3. 开启智能模式：`python3 fofamap.py -ai \"帮我找一下目标公司的子域名并扫描\"`","2026-01-09T15:43:07",{"id":132,"version":133,"summary_zh":134,"released_at":135},126847,"v1.1.3-new","[+] 内置最新版本Nuclei扫描器。\n\n[+] 优化系统输出逻辑。\n\n[+] 增加批量查询结果整合输出为一个文件的选项。\n\n[+] 增加域名查询结果自动输出xlsx文件。\n\n[+] 增加nuclie扫描指定单一扫描模板（templates）的功能。\n\n[+] 增加全局日志功能，用户可自行选择是否开启日志。\n\n[+] 增加Host聚合查询模式，可以根据当前的查询内容，生成聚合信息。\n\n[+] 增加批量Host聚合查询模式，可以批量查询Host聚合信息。\n\n[+] 新增每页查询数量和数据查询范围设置功能，用户可以根据自己的需求选择每页查询的数据数量以及数据查询的范围（1年内 or 全部数据）。\n\n[+] 优化Host聚合查询模式中端口详情的显示格式和内容。\n\n[+] 优化网站图标查询逻辑，增加网站图标识别成功率。\n\n[+] 修复使用-s命令时，输出内容包含非http协议的问题。\n\n[+] 优化聚合搜索内容，修复部分搜索结果报错的问题。\n\n[+] 增加统计聚合功能，可根据当前的查询内容，生成全球统计信息，当前可统计每个字段的前5排名。\n\n[+] 增加网站存活检测功能（Beta），并支持从输出结果中筛选出自定义的HTTP响应状态码。\n\n[+] 增加关键词筛选匹配功能，可针对查询结果进行自定义关键词筛选，并将匹配结果汇总输出。\n\n[+] 增加Host聚合查询结果自动输出Excel表格。\n\n[+] 修复fastcheck模块中的存在的一些BUG，并在每次请求时增加了随机User-Agent。\n\n[+] 增加对输出文件名中的特殊字符过滤功能，避免因xlsx文件名中包含特殊字符而导致文件生成失败。（特别感谢用户OKVVbin提出的问题）","2023-09-09T08:12:48",{"id":137,"version":138,"summary_zh":139,"released_at":140},126848,"v1.1.3","1. 优化系统逻辑，提升系统稳定性；\r\n2. 内置最新版 Nuclei 漏洞扫描工具。","2022-11-17T07:52:09"]