1.
前言与合规声明
说明:本指南面向有合法授权的调查人员或执法机构。任何检测行为应在法律许可范围内进行。请事先获取书面授权,避免未授权的主动入侵或破坏。保存所有授权文档作为证据链一部分。
2.
准备工作与环境搭建
(1) 准备一台干净的调查主机,记录设备ID与时间基准;(2) 安装常用工具:dig/nslookup、curl/wget、traceroute/mtr、tcpdump/wireshark、openssl、whois、shodan/censys查询工具、PassiveDNS服务接入;(3) 建立安全日志目录,设置只追加权限并定期做SHA256哈希并签名。
3.
被动信息收集(OSINT)
(1) 使用域名查找历史记录和解析:查询Passive DNS、VirusTotal、SecurityTrails,记录解析时间点与历史A/AAAA/CNAME记录;(2) 查询WHOIS和注册信息,保存截图与命令输出;(3) 在Shodan/Censys搜索该域名或相关IP,保存证据页面URL及截图。
4.
DNS层面识别CDN
(1) 使用dig +trace及dig ANY获取当前解析:dig +short A example.com、dig CNAME;(2) 观察是否有CNAME指向cdn供应商域名(如*.cloudfront.net、*.akamai.net、*.cdn.cloudflare.net等);(3) 若仅返回IP,使用whois查询该IP归属,并比对CDN运营商IP段;所有命令输出需保存并做SHA256哈希。
5.
HTTP/HTTPS头部与证书分析
(1) 使用curl -I -L https://example.com获取响应头,查看Server、Via、X-Cache、CF-Ray等CDN特有头;(2) 使用openssl s_client -connect host:443 -servername example.com 查看证书链,保存证书内容与序列号;(3) 将证书导出为PEM格式并计算指纹,作为证据。
6.
路由与网络路径验证
(1) 使用traceroute或mtr到域名返回的IP,记录路由跳数与中间节点的ASN信息;(2) 结合BGP/IRR信息查询(例如使用bgp.he.net)确认IP所归属的自治系统是否为CDN运营商;(3) 将traceroute文本输出和ASN查询结果纳入证据。
7.
被动与主动扩展验证(注意合规)
(1) 被动:结合被动DNS、爬虫抓取的页面资源(JS、图片)的CDN域名判定;(2) 主动(仅在授权下):对目标做最小非破坏性请求(GET/HEAD),避免暴力扫描;记录所有请求的时间戳、响应头与状态码;(3) 所有抓取的资源保存原始文件并计算哈希。
8.
利用第三方数据与CDN运营商接口
(1) 查询CDN厂商的IP段公开列表,如Cloudflare、Akamai、Fastly的ASN与IP段,进行匹配;(2) 使用Censys/Shodan索引对比服务端信息;(3) 如果有必要,依据合法流程向CDN厂商提交滥用/取证申请并保留服务方回应作为证据链的一环。
9.
证据保存与链式保全方法
(1) 对每一项证据(截图、命令输出、pcap文件、证书、被动DNS记录)生成SHA256哈希;(2) 保存原始文件并将哈希与时间戳写入不可变日志(使用WORM存储或第三方时间戳服务);(3) 建立链式记录(Chain of Custody),记录每个文件的采集人、时间、采集工具、存放位置与任何传递与访问记录。
10.
打包与呈现证据给执法或法务
(1) 将证据按时间顺序打包,生成索引清单并对索引清单签名;(2) 在报告中列出每一步操作的命令、参数与原始输出(附原始文件哈希);(3) 提供可重复的再现步骤(仅描述重现流程,不附带有害脚本),并注明操作需授权。
11.
注意事项与常见误判源
(1) CNAME或头部中包含CDN名字并不总是最终证明:有时网站使用了第三方托管或共享CDN;(2) IP属地/ASN可能显示为中间缓存而非源站;(3) 建议结合多种证据(DNS历史、HTTP头、证书、ASN匹配、CDN厂商回应)来降低误判概率。
12.
审计日志与长期保存策略
(1) 把所有命令行输出与截图时间同步到UTC并记录系统时钟来源;(2) 定期将关键证据上传到受信任时间戳服务(例如RFC 3161兼容服务)取得第三方时间戳证明;(3) 按机构保全期政策保存原始证据与索引,任何访问变更都需记录并签名。
13.
工具与命令示例(安全与有限)
示例(仅在合规授权下使用):(1) dig +short CNAME example.com;(2) dig +short A example.com;(3) curl -I -L https://example.com;(4) openssl s_client -connect host:443 -servername example.com;(5) traceroute -n example.com。所有输出保存为文本并做哈希。
14.
问:这样检测CDN是否合法合规?
答:只要你是执法机构、企业合规团队或获得被调查对象授权,使用上述被动与最小侵入性主动手段通常是合法的;在不确定时应先咨询法律顾问并取得书面授权,所有操作过程与授权文档应纳入证据链。
15.
问:通过哪些证据可以较有力证明某非法网站在使用某CDN?
答:结合多项证据最为有力,包括:DNS记录(特别是CNAME指向CDN域名)、HTTP/HTTPS响应头(CDN特有字段)、TLS证书指纹、IP→ASN匹配到CDN的运营商、第三方索引(Shodan/Censys/PassiveDNS)以及CDN运营商的滥用/响应邮件记录。
16.
问:证据链提交时应注意什么要点?
答:确保证据原始性与完整性(保存原始文件、计算并记录哈希)、时间戳的可靠性(使用第三方时间戳)、链式保管记录(采集人、时间、工具、存放位置)、并附上授权文件与重现步骤,便于法务/司法复核。