前言

现在很多大网站基本上都使用了CDN进行加速访问,方便快速响应用户的请求,提高用户访问体验。这种做法对于我们日常的渗透测试来说,CDN的虚假IP确实很干扰我们的测试。因此很有必要写一下,如何绕过CDN,找到网站的真实IP。

先判断网站是否开启CDN

要看一个网站是否开启CDN功能,方法很简单。只要在不同的地区ping网址就可以:例如在旺角ping得到的IP地址是61.10.0.0,但在拉斯维加斯ping得到的IP确是76.164.192.0。像这样在不同地区ping同一个网址,我们得到不同的IP地址,那么这种情况,我们就可以判断该网站开了CDN加速。讲得在通俗易懂就是“就近原则”了。

我们使用在线的工具,如下: 

备用线路1:http://ping.chinaz.com/ 

备用线路1:http://ping.aizhan.com/ 

备用线路2:http://tools.fastweb.com.cn/Index/Ping 

备用线路3: root@kali:~# dnsenum -o /root/baidu.com -t 30 --threads 30 baidu.com root@kali:~# dnsrecon -d baidu.com -n 114.114.114.114 --threads 15 --lifetime 30 --xml /root/baidu.com1

下面给出两个具体图示

日本ping的结果

如何绕过CDN获取源站真实IP

国内ping的结果

如何绕过CDN获取源站真实IP

从上图可以看出我们同一时间不同地方获取到的百度的IP不同,可以判断百度使用了CDN的

二级域名法-寻找网站真实IP 

目标站点一般不会把所有的二级域名放cdn上。比如试验性质地二级域名。Google site一下目标的域名,看有没有二级域名出现,挨个排查,确定了没使用cdn的二级域名后。本地将目标域名绑定到同ip(修改host文件),如果能访问就说明目标站与此二级域名在同一个服务器上;如果两者不在同一服务器也可能在同C段,扫描C段所有开80端口的ip,挨个试。

 二级域名在线查询: 

备用线路1:http://i.links.cn/subdomain/ 

备用线路2:在AWVS中有子域名查询工具

如何绕过CDN获取源站真实IP

nslookup法 --寻找网站真实IP 

大部分CDN提供商只针对国内市场,而对国外市场几乎是不做CDN,所以有很大的几率会直接解析到真实IP。其实这个方法根本不用上国外vpn,因为你上国外vpn的ping本质,就是使用国外dns(那台vpn服务器使用的dns)查询域名而已,所以只需要: nslookup http://xxx.com 国外dns,就行了,例如:nslookup http://xxx.com 8.8.8.8,提示:你要找冷门国外DNS才行,像谷歌的DNS,国内用的人越来越多了,很多CDN提供商都把谷歌DNS作为国内市场之一,所以,你查到的结果会和国内差不了多少  或者查询域名的NS记录,其域名记录中的MX记录,TXT记录等很有可能指向的是真实ip或同C段服务器。

ping法--寻找网站真实IP 

ping http://xxx.com 因为一般都会是真实IP,因为了解到现有很多CDN厂商基本只要求把 www. xxx .com cname到cdn主服务器上去。www. xxx .com 和 http://xxx.com 是两条独立的解析记录 一般只会把 www. xxx .com 做 CDN。 或者使用国外的多节点ping工具,例如just-ping,全世界几十个节点ping目标域名,很有可能找到真实ip。域名:CA App Synthetic Monitor website monitoring service

看历史纪录 --寻找网站真实IP 

指的是查找域名历史解析记录,因为域名在上CDN之前用的IP,很有可能就是CDN的真实源IP地址,有专门的网站提供域名解析历史记录查询: 备用线路1:http://toolbar.netcraft.com/site_report?url=www.xxx.com 

rss订阅 

一般也会得到真实的IP地址,通过rss订阅的方式,可以查找到订阅的消息中真实IP 

看订阅邮件 

有的服务器本地自带sendmail… 注册之后,会主动发一封邮件给我们...好吧,打开邮件的源代码,你就能看到服务器的真实ip了.有的大型互联网网站会有自己的Mailserver.但是应该会在一个网段,这时候扫下C段就行

phpinfo 这个,我还没有试过,听说这个中率很高,很多大站都喜欢放个phpinfo,看你路径字典强度,很容易跑出来的。