绕过CDN找到真实IP

2023-05-16 11:10:29 浏览数 (2)

  • 整合的其他文章,方便个人笔记参考
CDN (Content Delivery Network)

内容分发网络,其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。

例如,某些大型网站在全国都会有很多用户,这些用户常常会向网站发送不同的请求,那么不同地域会具有不同的缓冲服务器来接收用户发送的流量。如果用户发送流量没有任何交互的数据,只是请求首页的话,此时根据用户所在地区来确定访问的高速缓存服务器,高速缓存服务器会返回对应的响应到用户的浏览器当中,比如广东。

正常情况下,通过DNS解析即可快速找到网站的真实IP地址,但站点出于用户体验和安全的角度,使用CDN加速,将域名解析到CDN,这时候就需要绕过CDN来查找真实IP。在渗透测试中,如果连真实 IP 都没有找到的话,相当于连门都没有找到

验证CDN是否存在
Ping主站
代码语言:javascript复制
C:Usersadmin>ping www.jd.com

正在 Ping wwwv6.jcloudimg.com [2409:8c70:3a04:1:8000::3] 具有 32 字节的数据:
来自 2409:8c70:3a04:1:8000::3 的回复: 时间=37ms
来自 2409:8c70:3a04:1:8000::3 的回复: 时间=62ms
来自 2409:8c70:3a04:1:8000::3 的回复: 时间=46ms
来自 2409:8c70:3a04:1:8000::3 的回复: 时间=33ms

2409:8c70:3a04:1:8000::3 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 33ms,最长 = 62ms,平均 = 44ms

观察域名的解析情况,以此来判断其是否使用了CDN

多地Ping

使用各种多地 ping 的服务,查看对应 IP 地址是否唯一,如果不唯一则是使用了CDN

提供多地ping在线服务的网站比如:

站长工具多地ping 爱站网 https://ping.aizhan.com/ IPIP https://tools.ipip.net/newping.php

nslookup

nslookup to query DNS servers (Name Server Look Up),这是一个命令行工具,可以查询域名的指定解析类型的解析记录获取主机信息,如果返回域名解析对应多个 IP 地址多半是使用了 CDN

绕过CDN查询真实IP
DNS历史解析记录

查询域名的历史解析记录,可能会找到网站使用CDN前的解析记录,从而获取真实ip

iphistory Dnsdb DNSDB拥有近30亿DNS条记录 微步在线 https://site.ip138.com/ securitytrails Netcraft

查找子域名

CDN的部署需要一定成本,往往在主站和流量较大的子站点使用了CDN加速服务,而其他子站点没有CDN就会泄露真实IP,有些子站点和主站在同一台服务器或一个C段就能找到主站真实IP,同一C段直接扫描C段所有开80端口的ip

在线服务:

微步在线 Dnsdb dnsdumpster

Google Hack:

site:baidu.com -www就能查看除去www的子域名

子域名暴力猜解:

Layer子域名挖掘机 wydomain:https://github.com/ring04h/wydomain subDomainsBrute:https://github.com/lijiejie/ Sublist3r:https://github.com/aboul3la/Sublist3r

网站邮件头信息

比如说,邮箱注册,邮箱找回密码、RSS邮件订阅等功能场景,通过网站给自己发送邮件,从而让目标主动暴露他们的真实的IP,查看邮件头信息,获取到网站的真实IP

网络空间安全搜索引擎

通过关键字或网站域名,就可以找出被收录的IP

钟馗之眼 Shodan Fofa

利用SSL证书

CloudFlare会为你提供DDoS保护,Web应用程序防火墙和其他一些安全服务,以保护你的服务免受攻击。为此,你的Web服务器就必须支持SSL并具有证书。此时CloudFlare与你的服务器之间的通信,就像你和CloudFlare之间的通信一样,会被加密(即没有灵活的SSL存在)。这看起来很安全,但问题是,当你在端口443上直接连接到IP时,SSL证书就会被暴露。

证书颁发机构(CA)必须将他们发布的每个SSL/TLS证书发布到公共日志中,SSL/TLS证书通常包含域名、子域名和电子邮件地址。因此SSL/TLS证书成为了攻击者的切入点。

目前Censys工具就能实现对整个互联网的扫描,Censys是一款用以搜索联网设备信息的新型搜索引擎,安全专家可以使用它来评估他们实现方案的安全性,而黑客则可以使用它作为前期侦查攻击目标、收集目标信息的强大利器。Censys搜索引擎能够扫描整个互联网,Censys每天都会扫描IPv4地址空间,以搜索所有联网设备并收集相关的信息,并返回一份有关资源(如设备、网站和证书)配置和部署信息的总体报告。

国外主机解析域名

国内很多 CDN 厂商因为各种原因只做了国内的线路,而针对国外的线路可能几乎没有,此时我们使用国外的主机直接访问可能就能获取到真实IP

国外多PING测试工具:

http://www.webpagetest.org/ https://dnscheck.pingdom.com/

还可以用国外冷门DNS进行域名解析,像谷歌的DNS,国内用的人越来越多了,很多CDN提供商都把谷歌DNS作为国内市场之一,所以,你查到的结果会和国内差不了多少

phpinfo

很多大站都喜欢放个phpinfo,可以通过字典爆破跑出来路径

反向访问

利用编辑器或头像上传的地方,用一张存放在自己服务器上的图片,让目标网站去获取这张图片,查看日志应该就能看到真实ip

扫描全网

通过Zmap、masscan等工具对整个互联网发起扫描,针对扫描结果进行关键字查找,获取网站真实IP。

ZMap号称是最快的互联网扫描工具,能够在45分钟扫遍全网。

https://github.com/zmap/zmap

Masscan号称是最快的互联网端口扫描器,最快可以在六分钟内扫遍互联网。

https://github.com/robertdavidgraham/masscan

F5 LTM解码法

当服务器使用F5 LTM做负载均衡时,通过对set-cookie关键字的解码真实ip也可被获取,例如:Set-Cookie: BIGipServerpool_8.29_8030=487098378.24095.0000,先把第一小节的十进制数即487098378取出来,然后将其转为十六进制数1d08880a,接着从后至前,以此取四位数出来,也就是0a.88.08.1d,最后依次把他们转为十进制数10.136.8.29,也就是最后的真实ip

网站本身漏洞泄露IP
DDoS消耗CDN(不建议)

DDoS 把 CDN 流量打光, 真实ip就出来了,但会影响网站正常运作

0 人点赞