通过Censys引擎,教你绕过 CDN 精准找到源站IP
前言
大家好,我是VoltCary当我们谈论绕过CDN查找真实IP的时候,不得不提到SSL证书,它确实是我们寻找真实IP的一大利器,至于为什么SSL证书会导致源站IP泄露?很多人或许没有深入了解这个问题。目前好像还没有几篇文章详解过,只是将其作为绕过CDN查找源站IP文章中一部分。
为了安全考虑,或者为了访问速度考虑,重要的域名应该都会加上CDN,也能保护一下源站ip不被泄露,再加上一层SSL证书,表面上,SSL证书看起来安全无比,包含的只是加密通信所需的公钥、域名信息以及证书颁发机构的相关信息,与服务器真实IP毫无关系。
然而,事实真的是这样吗?本文将深入剖析SSL证书如何成为泄露源站IP的关键,并借助Censys工具来揭示其中的秘密。
什么是censys?
提到证书查询IP的情况,不得不提到知名的网络搜索引擎Censys,它通过持续扫描全球的IP地址,收集并分析网络设备的信息。其核心能力在于对证书和网络服务的深度解析。
censys工作原理
全网扫描 扫描范围:Censys会定期扫描整个公共IPv4地址空间,覆盖数十亿个IP地址。端口选择:扫描数千个常用端口(超过3500个),以发现不同的网络服务和协议。协议检测:通过自动协议检测,Censys能够识别每个开放端口上运行的服务类型。服务识别:在扫描过程中,Censys会与目标端口建立连接,获取服务的Banner信息(即服务的标识信息),以确定运行的具体服务和版本。 证书收集
对于加密服务(如HTTPS),Censys会在握手过程中收集SSL/TLS证书信息,包括证书的公钥、域名信息(如Common Name和Subject Alternative Name)以及颁发者信息等。
SSL证书如何导致源站IP泄露?
综上所述,Censys扫描全球在线IP,包括端口、证书、元数据,此时censys数据库中已经存储了大量相关数据。攻击者先获取CDN的域名,查询域名的相关SSL证书信息,结合Censys语法进行查询,censys数据库中存储了大量源站IP的证书信息,利用这些信息与攻击者输入的证书信息匹配,存在相关性,那么就把这些IP作为域名的源站IP。
因此,证书是网络中非常可靠的“身份标识”,可以跨域名和IP进行关联。
场景分析
当源站IP证书与域名证书存在如下场景,CDN很有可能被绕过:
1. 域名证书与源站ip证书完全一致
每个SSL证书都有唯一的指纹(SHA256哈希值)、序列号和序列号有效期,用于标识此证书的唯一性。场景1就是源站IP和域名都共同使用了这个证书。
censys比对证书的公钥和指纹:证书中的公钥用于加密和解密数据,其指纹是公钥的哈希值。Censys通过比对证书的公钥和指纹,可确定证书的唯一性和真实性,若两个证书的公钥或指纹相同,可认定它们存在关联。
2. 域名证书与源站IP证书存在相关性
每个SSL证书都有主题和颁发者信息:包含了域名、组织名称、国家等主题信息,以及颁发者的相关信息。
场景2就是源站与域名证书的这些信息存在相关性的情况。
Censys通过比对这些信息,可直接判断证书之间的关联,如两个证书的主题或颁发者相同或相似,可能存在关联。
3. 通过证书链识别
•验证证书的合法性与完盩性:证书链由终端实体证书、中间证书和根证书组成,Censys会检查证书链中的每个证书是否有效且完整,通过验证证书链上每个证书的签名,确保其未被篡改,从而确认证书的可信度以及与根证书的关联关系。
•追溯证书的颁发路径:Censvs 通过分析证书链中各证书的颁发者和主体信息,明确证书的颁发路径,若多个域名的证书链最终指向同一个根证书或中间证书,可推断这些域名的证书存在关联。
•发现潜在的信任关系:证书链中的根证书通常由权威的证书颁发机构颁发,被广泛信任。如果不同域名的证书链共享同一根证书或中间证书,意味着这些域名在信任层面上存在一定关联,可能属于同一组织或存在业务合作关系。
4. 分析协议行为
利用Censys分析目标CDN域名使用的应用层协议行为,通过查找协议中的特定字段、请求头、响应头、服务器标识等信息,结合已知的源站特征或常见的服务器配置,尝试识别与源站IP的关联,使用类似“protocols.http.headers.server: “Server Name””的语法进行搜索。
实战操作
censys支持过滤输出Hosts、证书,并根据用户输入的关键字,这些关键字如果匹配Hosts、证书中的任意内容,例如Certificate、Fingerprint、Details等内容,就会输出相应的Hosts、证书。
1.查询域名可信任证书
(multipattern.com) and labels=trusted
返回了6个有效可信任的证书
2.查询使用此证书的Hosts
找到IP:66.155.40.24
结果分析:
可以确定的是IP:66.155.40.24是CDN
与前面域名使用的是同一个证书,但是还不能盲目确定它们都是同一家企业的资产。毕竟它们有可能使用的是CDN厂商提供的共享证书,CDN厂商的共享证书,会被多个不同
的用户使用。
下一步查看证书相关信息,如果证书SAN中只包含这一个域名,可以推测该IP与域名存在相关性,有可能是真实IP。
总结
SSL证书并非天衣无缝,它可以在无意间暴露源站IP。借助Censys这样的工具,攻击者能够轻松地从证书信息中获取线索,进而定位源站IP。
安全团队需要更加警惕,通过合理的配置和持续的监控,避免这种隐患的发生。
以下是一些防止 Censys 通过证书链识别出源站 IP 和 CDN 域名关联的方法:
1.配置访问限制:
配置防火墙,禁止公开源站ip
屏蔽 Censys 的 IP 段
Censys 的 IP 段在其官网有。我的机子使用的是 Ubuntu 系统,带有 UFW 防火墙,按照下面的命令建立规则即可。
Censys IP段 :https://support.censys.io/hc/en-us/articles/360043177092-Opt-Out-of-Data-Collection
屏蔽 Censys 的 UA:在 CDN 的配置中,设置规则屏蔽 Censys 扫描使用的用户代理(UA),如在 Cloudflare CDN 的 “安全性 - WAF - 自定义规则” 中,将 “用户代理” 字段设置为等于 “Mozilla/5.0 (compatible; CensysInspect/1.1; +https://about.censys.io/)” 进行屏蔽。
2.利用服务器特性:
Nginx 特性:如果使用 Nginx 服务器且版本在 1.19.4 及以上,可在配置文件中添加 “ssl_reject_handshake on;” 指令,当通过 IP 访问时会终止 TLS 握手,避免暴露域名。
使用反向代理:在源站和 CDN 之间设置反向代理服务器,对源站 IP 进行隐藏,使 Censys 难以直接获取源站与 CDN 域名的关联。
3.设置虚假站点
生成假证书和假站点:创建一个虚假的网站,生成自签的空白 SSL 证书并应用到该假站点上,将假站点设置为默认站点。
设置返回代码:在假站点的配置文件中,添加返回特定状态码的指令,如 “return 444;”,使通过 IP 访问时返回无法访问的页面,隐藏真实源站。
更多文章
-
CloudFlare官方免费CNAME接入配置教程
目录一、功能简介二、配置接入订阅CloudFlare for SaaS设置源站添加自定义主机名验证域名所有权SaaS域名解析三、结语从2021年11月开始,CloudFlare禁用了Partner使用的zone_setAPI以避免滥用(因为该API接入不需要验证域名所有权),通过Par
-
通过Censys引擎,教你绕过 CDN 精准找到源站IP
前言 大家好,我是VoltCary当我们谈论绕过CDN查找真实IP的时候,不得不提到SSL证书,它确实是我们寻找真实IP的一大利器,至于为什么SSL证书会导致源站IP泄露?很多人或许没有深入了解这个问题。目前好像还没有几篇文章详解过,只是将其作为绕过CDN查找源站IP文章中一部分。 为
-
使用高防服务器或者高防CDN后为什么还会出现源站IP被打
近来站长们应该基本都遇到过 DDOS 攻击,特别是 CC,如果放任不管,会导致服务器资源紧张,导致用户无法正常访问。有时间就算接入了高防服务器,源站 IP 还是被打,网站打不开。 为什么出现源站 IP 被打这种情况?出现源站 IP 被打怎么办? 在使用 DDoS 高防服务后,如果还存在
-
宝塔面板屏蔽 Censys的配置方法(防止源站 IP 泄露)
Censys 搜索引擎很强大。Censys 每天都会扫描 IPv4 地址空间,以搜索所有联网设备并收集相关的信息,并返回一份有关资源(如设备、网站和证书)配置和部署信息的总体报告。 在 IP 前加上 https 访问时,Nginx 会自动返回该网站的 https 证书,从而暴露相关域名
-
国外域名注册商 2025年一些靠谱好用的域名注册商推荐
想找好用的域名注册商购买域名?域名注册商是一种负责管理网站域名注册的公司,国内国外通过ICANN认证的有3860多家,那现在哪个域名商信用好且性价比高? 在本文中,我会介绍2024-2025国外好用的域名注册商,并比较优缺点和排名,下面是完整内容。 国外域名注册推荐 1. Namech