Recon 命令 测试版
发送 `recon` 得到菜单。`recon <目标>` 跑完整链路:主机/IP → 端口 → 各服务的 Web;域名 → 子域名 → 主机 → Web;URL → Web;`.onion` → 经 Tor 的 Web。
这些命令是新的,可能存在缺陷。
每次侦察都会累积到目标的记录中
发现结果按目标存储在机器上,而不是按运行:新的侦察会先读取以往运行记录的结果(最近 7 天),复用它们,跳过已运行过的工具,并写回自己的结果。攻击命令读取同一份记录。运行之间不会擦除任何内容。
recon:domain <domain>示例:
recon:domain example.com全面描绘一个域名的外部攻击面 — 它的子域名、哪些主机在线以及运行什么、开放的端口和服务,以及已知漏洞的迹象 —— 然后对每个在线的 Web 主机运行完整的 Web 应用扫描。
subfindercrt.shdighttpxwafw00fnaabunmapnucleikatanagauarjunwhatwebcve_matchphpjwt_toolsqlmapsecretfinder工作原理
# 步骤 作用 1 subfinderPassive subdomain discovery 2 crtshSubdomains from certificate-transparency logs (crt.sh) 3 digDNS records (A, MX, NS, TXT) 4 httpxLive-host probe: title, status, detected technologies 5 wafw00fDetects a web application firewall 6 naabuFast open-port scan 7 nmapService and version on each open port 8 nucleiKnown-CVE / misconfiguration template scan 9 katanaCrawls the app; captures every response 10 gauHistorical URLs from public archives 11 arjunDiscovers hidden HTTP parameters 12 whatwebWeb stack fingerprinting 13 cve_match把探测到的产品版本与平台的漏洞/利用库(NVD + Exploit-DB + CISA KEV,每 6 小时刷新)比对,并把命中记录为候选。只有当条目文本包含该版本时才声明“版本匹配”,否则标注“产品匹配、版本未证实”。 14 phpcustomPHP:标记、版本标签、SAPI、upload-progress 姿态 15 jwt_toolWeak / default JWT signing keys 16 sqlmapSQL injection 17 secretfinderInline secrets in scripts recon:host <ip|hostname>示例:
recon:host 203.0.113.10仅发现单台主机的网络层面 — 它的开放端口、每个端口上的服务和版本,以及哪些端口使用 HTTP/HTTPS。它本身不扫描 Web 应用:运行 "recon <主机>"(总控命令)即可直接对每个 Web 服务进行完整的 Web 应用扫描,或对具体 URL 使用 recon:web。
naabunmaphttpxkatanagauwhatwebwafw00fphpjs_deobfcontent_scansqlmapparam_scannucleiauthz_scanarjunjwt_toolsecretfinder工作原理
# 步骤 作用 1 naabuFast open-port scan 2 nmapService and version on each open port 3 httpxLive-host probe: title, status, detected technologies 4 katanaCrawls the app; captures every response 5 gauHistorical URLs from public archives 6 whatwebWeb stack fingerprinting 7 wafw00fDetects a web application firewall 8 phpcustomPHP:标记、版本标签、SAPI、upload-progress 姿态 9 js_deobfcustomDeobfuscates scripts; extracts endpoints + secrets 10 content_scancustomHidden files: backups, .git, .env, admin panels 11 sqlmapSQL injection 12 param_scancustomPer-parameter injection (SQLi, XSS, cmd, LFI, redirect) 13 nucleiKnown-CVE / misconfiguration template scan 14 authz_scancustomAuthorization: guest vs session, IDOR candidates 15 arjunDiscovers hidden HTTP parameters 16 jwt_toolWeak / default JWT signing keys 17 secretfinderInline secrets in scripts recon:web <url>示例:
recon:web https://example.com对单个 Web 应用的完整扫描:描绘其攻击面,然后标记 SQL 注入、XSS 和暴露的密钥,检查 JWT 的弱密钥,对已知 CVE 进行模板扫描,并描绘人员与社会工程攻击面 — 侦察与可能性标记,绝不利用。也可用 --sign-in 以登录态扫描。
katanagauhttpxwhatwebcve_matchwafw00fphpjs_deobfcontent_scansqlmapparam_scannucleiauthz_scanarjunjwt_toolsecretfinder工作原理
# 步骤 作用 1 katanaCrawls the app; captures every response 2 gauHistorical URLs from public archives 3 httpxLive-host probe: title, status, detected technologies 4 whatwebWeb stack fingerprinting 5 cve_match把探测到的产品版本与平台的漏洞/利用库(NVD + Exploit-DB + CISA KEV,每 6 小时刷新)比对,并把命中记录为候选。只有当条目文本包含该版本时才声明“版本匹配”,否则标注“产品匹配、版本未证实”。 6 wafw00fDetects a web application firewall 7 phpcustomPHP:标记、版本标签、SAPI、upload-progress 姿态 8 js_deobfcustomDeobfuscates scripts; extracts endpoints + secrets 9 content_scancustomHidden files: backups, .git, .env, admin panels 10 sqlmapSQL injection 11 param_scancustomPer-parameter injection (SQLi, XSS, cmd, LFI, redirect) 12 nucleiKnown-CVE / misconfiguration template scan 13 authz_scancustomAuthorization: guest vs session, IDOR candidates 14 arjunDiscovers hidden HTTP parameters 15 jwt_toolWeak / default JWT signing keys 16 secretfinderInline secrets in scripts recon:ports <ip|hostname>示例:
recon:ports 203.0.113.10对主机进行快速端口和服务发现,仅此而已。
naabunmap工作原理
# 步骤 作用 1 naabuFast open-port scan 2 nmapService and version on each open port
标记为 “custom” 的步骤是我自研的工具,由我为这个平台开发。其余均为第三方工具。
只运行部分步骤
默认情况下,每次运行都会按顺序执行所有步骤——你无需指定它们。--steps 参数是可选的:只有当你只想运行一部分时才使用(适合只补一个缺口,而无需为完整扫描付费):
参数: recon:web https://example.com --steps sqlmap,param_scan
或在聊天中: 只重新检查 example.com 上的 sqlmap 和 param_scan
`--steps a,b,c` 只按顺序执行这些步骤。结果仍写在同一目标下;补测是追加而不是替换。名称是工具代码(`crtsh`,不是 crt.sh);写错会被拒绝并给出有效列表。
还会运行:`logic_scan`(负数数量、弱密码、空/重复注册、请求里的角色、注销未失效、重置枚举与令牌、2FA)· `supply_scan`(图片 GPS/附加数据、依赖公告、仿冒包、提示注入)· `infra_scan`(管理端点、IaC、存储桶、TLS)。未测试 = 缺口,不算通过。
访客与登录扫描
两种独立运行。访客(默认):只读无需会话的内容,从不询问,受限区域记为缺口。`--sign-in`:先索取会话,只扫描已登录状态。
社工攻击面
`recon:web` 还会从抓取页面提取人员与联系方式(姓名、职位、邮箱、电话、账号、论坛成员),并为每个提供对应的 `osint:*`。不会自动串联。
列表
列表是通用容器:`recon:domain a.com b.com`,或任何命令的 `--list <名称|id>`。见「列表」。
Tor(.onion)
同一计划经 Tor;见上方 onion 小节。
Kali 主机
每条命令都需要一台正在运行的 Kali Linux 主机 — 所有工具(subfinder、naabu、nmap、httpx、nuclei、katana、arjun、jwt_tool、gau 等)都已预装在其中,因此模型可以实时执行所有命令。请在 Virtual Machines 部分租用一台。
多台主机
有多台主机?在任何命令末尾加上 --machine <名称>(或 -m <名称>)—— 例如 recon:domain example.com --machine kali-recon —— 即可将所有命令固定到该主机。不加时使用你当前活动的主机。
覆盖范围 — 一次 recon 运行实际证明什么
模块结果只值它的证据。下方是 `recon:web:onion` 对 DVWA 的结果。proven = 命令或浏览器已证实 · N/A = 该模块不存在 · not proven = 无信号,记为缺口。
| 模块 / 类别 | 状态 | 如何确认 |
|---|---|---|
操作系统命令注入 | 已证实 | 通过 ip 参数返回了 echo/id 的输出 |
本地文件包含 | 已证实 | 通过 page 返回了系统文件内容 |
文件上传并执行代码 | 已证实 | 上传的 PHP 文件在服务器上被响应并执行 |
SQL 注入 | 已证实 | 对 id 的布尔差异,经 sqlmap 确认 |
XSS 反射型 | 已证实 | 载荷未转义即反射(name、include) |
XSS 存储型 | 已证实 | 标记在重新请求时仍返回(txtName) |
XSS DOM 型 | 已证实 | 载荷在真实浏览器中执行 |
CSRF | 已证实 | 会改变状态的表单缺少防 CSRF 令牌(3 个表单) |
弱会话 ID | 已证实 | 点击模块自身的生成按钮后会话值可预测 |
CSP / 脚本包含 | 已证实 | 提交的 URL 被写入 script src 属性 |
仅客户端令牌 | 已证实 | 令牌初始为空,由 JavaScript 填充 |
暴力破解 | 已证实 | 文档记录的默认凭据首次尝试即被接受,并用全新会话验证 |
开放重定向 | 不适用 | 该版本没有此模块(404) |
授权绕过 / IDOR | 不适用 | 该版本没有此模块 |
远程文件包含 | 未证实 | 目标从未请求扫描提供的外部 URL,也没有报错:该版本的远程包含被关闭(本地包含已证实) |
不安全 CAPTCHA | 已证实 | 第 2 步完全绕过 CAPTCHA 修改了密码——以新值登录即证明,随后已还原 |
覆盖范围按每次运行声明:失败、被跳过或没有返回的步骤都会如实说明。未证实永远不会变成干净——报告中会列为缺口,并指出用哪个工具或人工步骤来补齐。
给了端口就只扫描该服务
`http://68.183.109.200:3000` 是一个 HTTP 服务:`recon:web` 只针对该地址,不扫描主机端口。裸 IP 是主机(`recon:host`),裸域名走子域名(`recon:domain`)。
受保护的目标
墙(Cloudflare、DataDome、JS 校验)、登录页与同意页与你一起处理 — 不静默扫描,也不算空目标。
- 识别拦截墙 — 对首次响应的一次模型调用给出墙的类型与动作:继续、搁置等你,或索取会话。
- 实时浏览器 — 需要人工的校验会把运行置为 waiting_user。你在 pod 的浏览器(noVNC)中完成,运行随后捕获 cookie + User-Agent 并继续。
- 定位登录 — 真实浏览器记录实际发出的登录请求(模态或 API)。若失败,由模型从页面判断登录方式,静态正则是最后手段。
- 深度验证 — 需显式开启:RFI、跳过 CAPTCHA(用真实变更证明后回滚)、有界暴力破解、开放重定向。
- 自带 HTTP 栈的工具 — `sqlmap` 与 `dalfox` 能过会话墙(cookie + UA),过不了指纹墙;基于时间的盲注在延迟下会退化。
- 报告 — 由同一证据块写成 — 发现、步骤结果、覆盖 — 若提到块外不存在的发现会被拒绝。
漏洞
扫描产生的每个发现都会保存为该目标的漏洞 — 在目标页面的「漏洞」标签下,带有像 3kd9xqa 这样的短标识。
- 记录的内容 — 类别(CWE、OWASP)、攻击者最终掌握的东西、影响、影响范围、利用前置条件、载荷、以访客还是登录状态发现、证据,以及修复建议。
- 如何利用 — 每个漏洞都附带可执行的步骤说明:按顺序的命令、证明成功的输出、在哪里停止。由模型撰写,否则取自漏洞类别。
- 随机器消失也不会丢 — 运行结束时从机器同步记录,机器删除后仍然保留。随时可用一个按钮重新读取机器。
报告
报告写入机器的 `/root/recon/`,路径在回复中。可从机器卡片或 SSH 下载。结尾是*已证实发现*(每条的证据,或明确写无)与*覆盖缺口*(未测试的部分)。