关于 Reconnaissance & OSINT Automation
面向授权安全评估的 Claude 技能,结合 OSINT、被动与主动侦察及脚本来发现资产并整理报告,涵盖域名、DNS、服务和技术指纹。
主要功能
- 01被动 OSINT 与 WHOIS 分析
- 02子域名枚举与验证
- 03DNS 记录及邮件安全检查
- 04端口与服务侦察
- 05技术栈指纹识别
- 06关联资产并生成报告
适用场景
- 01绘制域名暴露资产图
- 02检查 DNS 与邮件安全状况
- 03识别有效子域名和服务
- 04整理范围明确的侦察报告
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ masriyan/ claude-code-cybersecurity-skill --skill reconnaissance-&-osint-automation安装后在 Claude Code 中输入/reconnaissance-&-osint-automation确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
examples/example_usage.mdresources/common_subdomains.txtscripts/dns_recon.pytech_fingerprint.pysubdomain_enum.py详细介绍
侦察与 OSINT 自动化
目的
在经过授权的安全评估期间,帮助 Claude 开展全面的侦察和开源情报收集。Claude 使用自身的分析能力进行被动和主动侦察,并协调所包含的脚本,实现大规模自动化。
需要授权:开始前,务必确认目标范围已获得书面授权。在大多数司法管辖区,未经授权的侦察均属违法。
激活条件
用户询问以下内容时,此技能会激活:
- 子域名枚举或发现
- DNS 侦察、区域传送或 DNS 记录分析
- 收集有关某个域名、组织或个人的 OSINT
- 技术指纹识别或技术栈识别
- 端口扫描、服务检测或横幅抓取
- Google 搜索语法或高级搜索查询生成
- WHOIS、证书透明度或 Shodan 查询
- 攻击面绘制或边界发现
先决条件
pip install requests dnspython python-whois beautifulsoup4 shodan
可选的增强功能:
nmap— 主动端口扫描amass— 高级子域名枚举theHarvester— 电子邮件和域名收集- Shodan API key — 全网设备搜索
- Censys API key — 证书和主机搜索
核心功能
1. 被动侦察(不直接联系目标)
用户要求进行被动侦察或 OSINT 时:
- WHOIS 分析 — 查询域名注册记录,了解注册人、注册商、名称服务器和日期。标记隐私保护注册和注册商模式。
- 证书透明度日志 — 在 crt.sh 上搜索为该域名及其子域名签发的所有证书。提取 SAN(主题备用名称),发现隐藏的子域名。
- DNS 记录(被动) — 使用公共解析器枚举 A、AAAA、MX、NS、TXT、SOA、SRV 和 CNAME 记录。分析 SPF、DKIM 和 DMARC,评估电子邮件安全状况。
- 搜索引擎搜索语法 — 生成有针对性的搜索语法查询,以发现暴露的文件、登录入口和配置泄露:
site:target.com filetype:pdf— 暴露的文档site:target.com inurl:admin— 管理面板site:target.com ext:env OR ext:config— 配置文件"@target.com" site:linkedin.com— 枚举员工"target.com" site:pastebin.com— 凭据泄露
- Shodan/Censys 查询 — 搜索与目标 IP 地址范围相关的互联网暴露服务、开放端口、横幅和漏洞。
- Git/代码仓库搜索 — 在 GitHub/GitLab 上搜索泄露的凭据、API 密钥和内部信息:
org:targetorg api_keyfilename:.env target.com"target.com" password
2. 子域名枚举
用户要求枚举子域名时:
- 证书透明度 — 从 crt.sh/Censys 证书中提取所有 SAN(最有效的被动方法)
- DNS 暴力破解 — 使用
resources/中的常用词表运行 subdomain_enum.py - 通配符检测 — 查询随机子域名,检测通配符 DNS 响应并过滤误报
- 解析验证 — 将所有候选项解析为 IP 地址;丢弃 NXDOMAIN 结果
- HTTP 探测 — 检查哪些子域名在端口 80/443 上有响应;识别 Web 应用
- 基础设施分组 — 按 IP/ASN 对发现的子域名分组,绘制云端与本地资产的分布
子域名发现结果的输出格式:
Target: example.com
Discovery Method: CT Logs + DNS Brute-Force
Discovered: 47 subdomains
LIVE SUBDOMAINS:
admin.example.com → 203.0.113.10 [HTTP 200] [nginx/1.18]
dev.example.com → 203.0.113.11 [HTTP 302 → /login]
api.example.com → 203.0.113.12 [HTTP 200] [cloudflare]
internal.example.com → 10.0.0.5 [No public response — internal?]
INFRASTRUCTURE CLUSTERS:
203.0.113.10-15 → AS12345 (Company Hosting)
Cloudflare CDN → 7 subdomains proxied
3. 主动端口扫描与服务检测
当用户要求扫描端口或检测服务时:
- 定义扫描范围(主机、子网、CIDR 范围)并确认已获授权
- 选择扫描技术:SYN 扫描(需要 root 权限)、连接扫描(无需 root 权限)或隐蔽选项
- 先扫描排名前 1000 的端口,再扫描指定的服务端口
- 对所有开放端口进行服务版本检测(
-sV) - 如已获授权,则进行操作系统指纹识别(
-O) - 获取发现的服务的 banner 信息
- 根据版本数据标记存在已知漏洞的服务
提供可直接运行的 Nmap 命令:
# Quick discovery
nmap -sn 203.0.113.0/24
# Top 1000 TCP ports with service detection
nmap -sV -sC --top-ports 1000 -oA scan_results 203.0.113.10
# Full port scan with script engine
nmap -sV -sC -p- -T4 -oA full_scan 203.0.113.10
4. DNS 侦察
当用户要求进行 DNS 分析时:
- 枚举所有记录类型:A、AAAA、MX、NS、TXT、SOA、SRV、CNAME、PTR
- 尝试区域传送(AXFR)——针对所有发现的名称服务器进行尝试:
dig AXFR @ns1.example.com example.com - 电子邮件安全分析:
- SPF:检查是否使用
~all(软失败)或?all(中性)——两者都不够安全 - DMARC:缺少 DMARC 表示完全没有强制执行;
p=none表示仅监控 - DKIM:检查选择器是否存在以及密钥强度
- SPF:检查是否使用
- 反向 DNS——对所有发现的 IP 执行 PTR 查询,以查找更多主机名
- DNS 历史记录——通过 SecurityTrails 或 PassiveDNS 检查历史 DNS 记录,这些记录可能揭示旧基础设施
标记以下错误配置:
- 允许区域传送 → 暴露完整 DNS 区域
- 没有 DMARC 记录 → 可能遭到电子邮件欺骗
- SPF
+all→ 任何服务器都可以使用此域名发送邮件 - 未配置 DNSSEC → 存在 DNS 缓存投毒风险
5. 技术指纹识别
当用户要求识别技术栈时:
- 分析 HTTP 响应标头:
Server:→ Web 服务器及其版本X-Powered-By:→ 应用程序框架Set-Cookie:名称 → 会话框架(PHPSESSID=PHP,JSESSIONID=Java)X-Generator:/X-WordPress-Cache:→ CMS
- 检查 HTML 源代码中的 meta 标签、脚本引用和 CSS 框架
- 检查
/robots.txt、/sitemap.xml、/.well-known/是否泄露框架信息 - 测试常见 CMS 路径(
/wp-admin/、/administrator/、/wp-json/) - 分析 JavaScript 文件中的版本字符串
- 通过标头分析和响应行为检测 WAF 是否存在
- 通过 IP 范围和标头识别 CDN(Cloudflare、Akamai、Fastly、CloudFront)
技术栈报告格式:
URL: https://example.com
WEB SERVER: nginx/1.18.0 (Ubuntu)
APPLICATION: WordPress 6.4.2
LANGUAGE: PHP 8.1
DATABASE: MySQL (inferred from wp-config patterns)
CDN/WAF: Cloudflare
JS LIBRARIES: jQuery 3.6.0, Bootstrap 5.3
TLS: TLS 1.3, ECDHE-RSA-AES256-GCM-SHA384
NOTABLE HEADERS:
✗ Missing: X-Content-Type-Options
✗ Missing: X-Frame-Options
✗ Missing: Content-Security-Policy
✓ Present: Strict-Transport-Security
6. OSINT 关联与报告
当用户要求关联 OSINT 发现时:
- 交叉比对 WHOIS、ASN 查询结果和云服务提供商 IP 列表中的 IP 范围
- 将员工数据(LinkedIn/电子邮件格式)映射到组织架构
- 将从粘贴站点获取的泄露凭据与发现的电子邮件格式进行关联
- 识别正在使用的第三方服务和 SaaS 平台(通过 DNS 记录、JS 导入)
- 构建基础设施关系图,展示资产之间的关系
输出规范
每次侦察活动都应生成结构化报告:
# Reconnaissance Report — [Target]
Date: [Date] | Scope: [Authorized Scope] | Analyst: [Name]
## Executive Summary
[2-3 sentence overview of key findings]
## Discovered Assets
- Subdomains: N found, N live
- IP Ranges: [CIDRs]
- Open Services: [Top findings]
- Technologies: [Stack summary]
## Key Findings
1. [High-impact finding with evidence]
2. [Medium-impact finding]
...
## Attack Surface Summary
[Map of entry points for follow-on testing]
## Recommended Next Steps
- Feed live web apps → Skill 09 (Web Security)
- Feed discovered services → Skill 02 (Vulnerability Scanner)
- Feed cloud assets → Skill 10 (Cloud Security)
脚本参考
subdomain_enum.py
# Passive CT log enumeration
python scripts/subdomain_enum.py --domain target.com --passive-only --output results.json
# Active brute-force with custom wordlist
python scripts/subdomain_enum.py --domain target.com --wordlist resources/common_subdomains.txt --threads 20 --output results.json
dns_recon.py
# Full DNS reconnaissance
python scripts/dns_recon.py --domain target.com --output dns_report.json
# Check zone transfer vulnerability
python scripts/dns_recon.py --domain target.com --check-zone-transfer
tech_fingerprint.py
# Single URL analysis
python scripts/tech_fingerprint.py --url https://target.com --output tech_report.json
# Batch URL fingerprinting
python scripts/tech_fingerprint.py --urls urls.txt --output tech_report.json
技能集成
| 后续步骤 | 条件 | 目标技能 |
|---|---|---|
| 漏洞评估 | 发现在线服务 | → Skill 02 |
| Web 应用测试 | 发现 Web 应用 | → Skill 09 |
| 云资产审计 | 发现托管在云端的资产 | → Skill 10 |
| 网络流量分析 | 有可用的 PCAP 捕获文件 | → Skill 08 |
| IOC 关联 | 发现可疑基础设施 | → Skill 06 |
参考资料
- OWASP 测试指南 — 信息收集
- MITRE ATT&CK — 侦察(TA0043)
- 证书透明度 — crt.sh
- Shodan 搜索引擎
- DNSDumpster
- Google 黑客数据库(GHDB)
v3.0 增强(2026 年更新)
更精准、更与时俱进的侦察技术:
- 子域名接管检测 — 对每个发现的、存在悬空
CNAME的子域名(指向尚未被认领的 S3/Azure/GitHub Pages/Heroku/Fastly 目标),将其标记为潜在接管目标,并识别孤立服务的指纹。 - 云资产发现 — 通过排列组织名称,枚举公开的 S3/GCS/Azure Blob 存储桶和存储空间;检查存储桶是否可列出或可被公开读取(使用类似
cloud_enum的逻辑)。建立 ASN → CIDR → 云服务提供商归属映射。 - JA4+ / favicon 哈希 — 在 Shodan/Censys 中,利用 favicon
mmh3哈希和 JARM/JA4S 服务器指纹进行关联查询,以查找 CDN 后方的同类基础设施。 - GraphQL 和 API 侦察 — 探测
/graphql是否支持内省;收集架构、类型和变更操作,供 Skill 09 使用。 - 泄露与凭据情报 — 将发现的电子邮件格式与 HaveIBeenPwned 和公开的组合列表(仅被动)进行关联,以便对账户进行优先级排序。
- 源代码与 CI 泄露 — 将搜索引擎语法搜索扩展到 GitHub Actions 日志、npm/PyPI 包元数据,以及会泄露内部路径的
*.map源码映射文件。
精准度规则: 输出时始终将已确认资产(已解析且有响应)与候选资产(仅存在于 CT 日志中)分开,并为每项资产标注发现来源,以确保结果可复现。
新增参考资料
评论
支持 Markdown