现在很多大型企业都会使用CDN内容分发网络,因为CDN存在多个缓存服务点,而且会根据用户IP地址,将用户请求导向到最近的服务点上进行相应,所以得不到主服务站点的ip地址,总结学习一下绕过CDN找到真实ip
0x00 判断是否使用CDN
方法1:多地进行ping,看ip是否不同
很简单,使用各种多地 ping 的服务,查看对应 IP 地址是否唯一,如果不唯一多半是使用了CDN, 多地 Ping 网站有:
http://ping.chinaz.com/
http://ping.aizhan.com/
方法2:nslookup xxx
如果返回多个A记录,一般就是使用了CDN了
0x01 获取真实IP
方法1:ping xxx.com 而不是 ping www.xxx.com
因为了解到现有很多CDN厂商基本只要求把www.xxx.com cname到cdn主服务器上去,而且有人为了维护网站时更方便,不用等cdn缓存,只让WWW域名使用cdn,秃域名不使用。所以试着把目标网站的www去掉,ping一下看ip是不是变了?
方法2:ping二级域名或者三级域名爆破
因为很多情况是主站使用了CDN而分站没有使用,而且一般不会把所有的二级域名放在CDN上,所以,使用google site或者自建一个常用二级域名字典,猜到其二级域名,再ping二级域名,获取其ip,最后将目标域名绑定到同ip,能访问就说明目标站与此二级域名在同一个服务器上,就算不在同一服务器也可能在同C段,扫描C段所有开80端口的ip,挨个试。
简单地说,其实就是从旁站入手,找到一个与主站同一个服务器的分站,这里就像上面的说的,需要尝试大量ip与目标域名绑定进行尝试。
方法3:nslookup,使用国外dns
大部分CDN提供商只针对国内市场,而对国外市场几乎是不做CDN,所以有很大的几率会直接解析到真实IP。其实这个方法根本不用上国外vpn,因为你上国外vpn的ping本质,就是使用国外dns(那台vpn服务器使用的dns)查询域名而已,所以只需要:nslookup xxx.com 国外dns,就行了,例如:nslookup xxx.com 8.8.8.8,提示:你要找冷门国外DNS才行,像谷歌的DNS,国内用的人越来越多了,很多CDN提供商都把谷歌DNS作为国内市场之一,所以,你查到的结果会和国内差不了多少 (核总的原话)。
方法4:查询域名的NS记录,其域名记录中的MX记录,TXT记录等很有可能指向的是真实ip或同C段服务器。
0x02 验证真实ip
最简单的验证方法是直接尝试用IP访问,看看响应的页面是不是和访问域名返回的一样;
如果直接ip不能访问,那就本地hosts绑定域名跟ip,看看响应的页面是不是和访问域名返回的一样
链接:https://www.zhihu.com/question/37103396/answer/70785888
链接:https://www.cnblogs.com/qiudabai/p/9763739.html