Imbutus
← 文档

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

    工作原理

    #步骤作用
    1subfinderPassive subdomain discovery
    2crtshSubdomains from certificate-transparency logs (crt.sh)
    3digDNS records (A, MX, NS, TXT)
    4httpxLive-host probe: title, status, detected technologies
    5wafw00fDetects a web application firewall
    6naabuFast open-port scan
    7nmapService and version on each open port
    8nucleiKnown-CVE / misconfiguration template scan
    9katanaCrawls the app; captures every response
    10gauHistorical URLs from public archives
    11arjunDiscovers hidden HTTP parameters
    12whatwebWeb stack fingerprinting
    13cve_match把探测到的产品版本与平台的漏洞/利用库(NVD + Exploit-DB + CISA KEV,每 6 小时刷新)比对,并把命中记录为候选。只有当条目文本包含该版本时才声明“版本匹配”,否则标注“产品匹配、版本未证实”。
    14phpcustomPHP:标记、版本标签、SAPI、upload-progress 姿态
    15jwt_toolWeak / default JWT signing keys
    16sqlmapSQL injection
    17secretfinderInline 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

    工作原理

    #步骤作用
    1naabuFast open-port scan
    2nmapService and version on each open port
    3httpxLive-host probe: title, status, detected technologies
    4katanaCrawls the app; captures every response
    5gauHistorical URLs from public archives
    6whatwebWeb stack fingerprinting
    7wafw00fDetects a web application firewall
    8phpcustomPHP:标记、版本标签、SAPI、upload-progress 姿态
    9js_deobfcustomDeobfuscates scripts; extracts endpoints + secrets
    10content_scancustomHidden files: backups, .git, .env, admin panels
    11sqlmapSQL injection
    12param_scancustomPer-parameter injection (SQLi, XSS, cmd, LFI, redirect)
    13nucleiKnown-CVE / misconfiguration template scan
    14authz_scancustomAuthorization: guest vs session, IDOR candidates
    15arjunDiscovers hidden HTTP parameters
    16jwt_toolWeak / default JWT signing keys
    17secretfinderInline 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

    工作原理

    #步骤作用
    1katanaCrawls the app; captures every response
    2gauHistorical URLs from public archives
    3httpxLive-host probe: title, status, detected technologies
    4whatwebWeb stack fingerprinting
    5cve_match把探测到的产品版本与平台的漏洞/利用库(NVD + Exploit-DB + CISA KEV,每 6 小时刷新)比对,并把命中记录为候选。只有当条目文本包含该版本时才声明“版本匹配”,否则标注“产品匹配、版本未证实”。
    6wafw00fDetects a web application firewall
    7phpcustomPHP:标记、版本标签、SAPI、upload-progress 姿态
    8js_deobfcustomDeobfuscates scripts; extracts endpoints + secrets
    9content_scancustomHidden files: backups, .git, .env, admin panels
    10sqlmapSQL injection
    11param_scancustomPer-parameter injection (SQLi, XSS, cmd, LFI, redirect)
    12nucleiKnown-CVE / misconfiguration template scan
    13authz_scancustomAuthorization: guest vs session, IDOR candidates
    14arjunDiscovers hidden HTTP parameters
    15jwt_toolWeak / default JWT signing keys
    16secretfinderInline secrets in scripts
  • recon:ports <ip|hostname>

    示例: recon:ports 203.0.113.10

    对主机进行快速端口和服务发现,仅此而已。

    naabunmap

    工作原理

    #步骤作用
    1naabuFast open-port scan
    2nmapService 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 下载。结尾是*已证实发现*(每条的证据,或明确写无)与*覆盖缺口*(未测试的部分)。