关于 collecting-open-source-intelligence
该技能为安全调查人员提供被动开源情报收集流程,用于关联域名、IP、证书及公开资料。内容涵盖基础设施映射和图谱分析,并强调授权边界与数据核验。
主要功能
- 01制定情报需求与收集范围
- 02查询被动 DNS、WHOIS 和证书记录
- 03使用 Shodan 关联基础设施
- 04通过 Maltego 图谱分析关系
- 05借助 SpiderFoot 搜集公开情报
适用场景
- 01调查钓鱼活动关联的外部基础设施
- 02补充威胁行为者的公开指标
- 03在授权范围内梳理组织外部暴露面
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mukul975/ anthropic-cybersecurity-skills --skill collecting-open-source-intelligence安装后在 Claude Code 中输入/collecting-open-source-intelligence确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
LICENSEreferences/api-reference.mdscripts/agent.py详细介绍
收集开源情报
何时使用
在以下情况下使用本技能:
- 调查针对你所在组织的钓鱼活动所关联的外部基础设施
- 用公开可观测的指标(WHOIS、ASN 数据、SSL 证书)丰富威胁行为者画像
- 开展经授权的攻击面发现,以了解你所在组织的外部暴露情况
不要在没有明确书面授权的情况下,将本技能用于对目标进行主动扫描 —— OSINT 收集必须保持被动(不向目标系统发送数据包),除非范围允许主动侦察。
前提条件
- Maltego CE 或商业许可证,用于基于图的关联分析
- Shodan API key(https://shodan.io),用于全网设备/服务发现
- 熟悉 OSINT Framework(https://osintframework.com),用于工具选择
- SpiderFoot HX 或开源 SpiderFoot,用于自动化 OSINT 关联分析
工作流
步骤 1:定义收集需求
在收集之前先确立情报需求(IR)。记录:
- 目标:威胁行为者组织、恶意域名、IP 范围或组织
- 优先情报需求(PIR):需要回答哪些具体问题?
- 法律授权:被动 OSINT 是合法的;主动探测需要授权
- 数据处理:对收集到的情报进行 TLP 分类
步骤 2:被动 DNS 和 WHOIS 调查
# Passive DNS via SecurityTrails API
curl "https://api.securitytrails.com/v1/domain/evil-domain.com/dns/a" \
-H "apikey: YOUR_KEY"
# WHOIS history via ARIN / RIPE
whois -h whois.arin.net evil-domain.com
# Certificate transparency logs (no API key required)
curl "https://crt.sh/?q=%.evil-domain.com&output=json" | jq '.[].name_value'
证书透明度日志会揭示目标域名的所有子域名,常常暴露被无意公开的预发布、VPN 或内部基础设施。
步骤 3:Shodan 基础设施测绘
import shodan
api = shodan.Shodan("YOUR_SHODAN_API_KEY")
# Search for specific C2 framework signatures (Cobalt Strike beacon)
results = api.search('product:"Cobalt Strike" port:443')
for r in results['matches']:
print(r['ip_str'], r['port'], r['org'], r.get('ssl', {}).get('cert', {}).get('subject', ''))
# Find infrastructure associated with a known threat actor's ASN
results = api.search('asn:AS12345 http.title:"Redirector"')
将 Shodan 结果与被动 DNS 关联,构建基础设施集群。
步骤 4:Maltego 图分析
在 Maltego 中,使用以下内置 transform 进行威胁行为者基础设施测绘:
- 从一个已知的恶意域名开始(Entity:Domain)
- 运行 “To IP Address [DNS]” → 识别托管 IP
- 运行 “To Shared Hosting” → 识别共同托管的域名(可能是同一威胁行为者)
- 运行 “To DNS Name [Reverse DNS]” → 识别 PTR 记录
- 运行 “To Whois” → 识别注册人邮箱/组织
- 以注册人邮箱为支点 → “To Domains [Registrant Email]” → 扩展到使用同一邮箱注册的所有域名
Maltego 的网络威胁情报 transform(VirusTotal、Shodan、PassiveTotal、URLScan)可扩展图覆盖范围。
步骤 5:暗网和粘贴站点监控
使用 SpiderFoot HX 或手动搜索:
- 粘贴站点(Pastebin、Ghostbin):搜索泄露的凭据、IOC、恶意软件配置
- 暗网论坛:通过 Tor 浏览器并采取适当的操作安全措施
- GitHub/GitLab:搜索暴露的凭据或组织特定字符串
# SpiderFoot CLI for automated OSINT
python sf.py -s evil-domain.com -m sfp_shodan,sfp_virustotal,sfp_passivetotal \
-o TF -R result.json
关键概念
| 术语 | 定义 |
|---|---|
| 被动 OSINT | 不向目标系统发送任何数据包的情报收集 —— 使用公共数据库、搜索引擎、缓存数据 |
| PIR | 优先情报需求 —— 情报收集必须回答的具体问题,用于防止漫无目的的数据收集 |
| 证书透明度 | 由 CA 签发的所有 SSL/TLS 证书的公开日志,可通过 crt.sh 发现子域名 |
| 支点分析 | 使用一个数据点(IP、邮箱、注册人姓名)来发现相关基础设施或账户 |
| ASN | 自治系统编号 —— 处于单一路由策略下的一组 IP 地址;可用于对威胁行为者基础设施进行聚类 |
| 共同托管域名 | 多个域名解析到同一 IP,可能表明共享的攻击者基础设施 |
工具与系统
- Maltego:基于图谱的关联分析平台,提供 50+ 数据源转换,用于 IP、域名、邮箱和社交媒体分析
- Shodan:互联网范围扫描器数据库,索引设备超 10 亿;支持 banner、端口、SSL 证书和漏洞搜索
- SpiderFoot:自动化 OSINT 工具,拥有 200+ 模块,覆盖 DNS、WHOIS、暗网、泄露数据和社交媒体
- Recon-ng:基于 Python 的 OSINT 框架,采用模块化设计,用于域名、邮箱和社交媒体侦察
- crt.sh:免费的证书透明度搜索引擎,用于子域名和证书发现
- OSINT Framework(osintframework.com):按情报类别整理的 OSINT 工具精选目录
常见陷阱
- 留下数字足迹:访问威胁行为者的网站或 Shodan 查询过的 IP 可能会惊动对手。使用 Tor 或 VPN,并配合专用的 OSINT 虚拟机。
- 图谱分析中的确认偏误:Maltego 图谱可能产生虚假关联。在将其视为已确认之前,应独立验证每个枢轴点。
- 数据过期:WHOIS 隐私服务和防弹托管会频繁更换。务必检查数据时间戳——6 个月前的被动 DNS 可能已不再有效。
- 归因过度自信:基础设施重叠并不能保证是同一威胁行为者。假旗行动会故意在不同组织之间共享指标。
- 法律边界:部分 OSINT 工具会执行主动扫描(端口扫描、banner 抓取)。在未经授权的情况下对外部目标使用前,请先确认工具行为。
评论
支持 Markdown