恐怖的网络空间测绘——Censys
WARNING看完不要去搜我的服务器IP啊😭
今天,我算是见识到了网络空间测绘的恐怖之处。
在 B 站看到 EPC 大佬的视频《没想到!我认为最安全的东西却“出卖”了我》时,里面提到了攻击者实现了绕过 CDN 防护直接攻击白眼服务器的行为,就是利用了Censys 这类服务。我抱着试试看的心态,也输入了自己的主力域名 tianhw.top 搜索试试。
结果页面瞬间刷出让我头皮发麻的信息:
- 所有子域名(包括我从未公开过的)
- 域名的开放端口和IP地址
- 服务器指纹(例如Nginx)
- HTTPS 证书完整详情(颁发机构、SAN 字段等)
- 托管云厂商归属
(直接给我服务器IP扫出来了,也没什么打码的必要了,毕竟都能查到了,只求各位别D我😭)
最离谱的是:我昨天深夜刚刚创建的子域名 openlist.tianhw.top,今天早上就已被 Censys 收录。
我甚至查到了几个自己都快忘掉的旧子域名,它们不仅被列出,还精确标注了在线的时间区间。
所以,Censys 是如何做到的呢?
数据来源
证书透明度日志
现在网站几乎都配置了 HTTPS 证书。CA 机构(Google、Let’s Encrypt 等)签发的所有证书都会录入 CT 日志中。这些日志里就包含了你的域名及所有子域名(CN + SAN),证书持有者、颁发机构、有效期等。
Censys 会持续监控并索引全球 CT 日志。只要你的域名申请过公网证书,相关信息几乎立刻就会被收录。这就是新子域名第二天就现身数据库的根本原因。
主动扫描
Censys 会使用高速扫描集群,实时对整个 IPv4 地址空间进行全面扫描。
绕过 CDN 直接获取源站IP的核心原理:
即使给你的网站配置了 CDN,但这只能对访问用户隐藏你的源站,当 Censys 扫描到你的源站真实公网 IP 并发起 TLS 握手时,服务器会返回 TLS 证书。此时证书的 SAN(Subject Alternative Name)或 CN 字段会直接暴露真实域名。
然后浏览器会将证书包含的域名与请求的域名进行对比。如果匹配成功,浏览器就会信任该证书,从而成功建立安全连接,反之就会出现如下的提示。

由此我们就成功获取到了IP与域名的对应关系。
更恐怖的是攻击者无需自行搭建维护扫描全网的服务器集群,可以直接使用Censys这些免费、公开且实时更新的数据,就能直接轻松绕过 CDN 防护攻击你的服务器,极大的降低了攻击成本。
防御策略
面对这种碰瓷HTTPS证书的行为,我们并不是无计可施:
- 源站设置白名单,只允许 CDN 厂商官方 IP 段访问源站
- 源站仅开启 HTTP(80 端口),CDN 到用户才开启 HTTPS,这样源站到 CDN 使用的是 HTTP 回源,没有了HTTPS证书自然也不会暴露信息了。
