|
0x01 验证是否存在CDN
方法1
很简单,使用各种多地 ping 的服务,查看对应 IP 地址是否唯一,如果不唯一多半是使用了CDN, 多地 Ping 网站有:
[pre]
http://ping.chinaz.com/
http://ping.aizhan.com/
http://ce.cloud.360.cn/
[/pre]
方法2
使用 nslookup 进行检测,原理同上,如果返回域名解析对应多个 IP 地址多半是使用了 CDN。有 CDN 的示例:
[pre]
> www.163.com
服务器: public1.114dns.com
Address: 114.114.114.114
非权威应答:
名称: 163.xdwscache.ourglb0.com
Addresses: 58.223.164.86
125.75.32.252
Aliases: www.163.com
www.163.com.lxdns.com
[/pre]
无 CDN 的示例:
[pre]
> xiaix.me
服务器: public1.114dns.com
Address: 114.114.114.114
非权威应答:
名称: xiaix.me
Address: 192.3.168.172
[/pre]
方法3
使用各种工具帮助检测目标网站是否使用了 CDN,可以参见如下网站:
http://www.cdnplanet.com/tools/cdnfinder/
http://www.ipip.net/ip.html
0x02 绕过 CDN 查找网站真实 IP
2.1 查询历史DNS记录
查看 IP 与 域名绑定的历史记录,可能会存在使用 CDN 前的记录,相关查询网站有:
https://dnsdb.io/zh-cn/
https://x.threatbook.cn/
http://toolbar.netcraft.com/site_report?url=
http://viewdns.info/
2.2 查询子域名
毕竟 CDN 还是不便宜的,所以很多站长可能只会对主站或者流量大的子站点做了 CDN,而很多小站子站点又跟主站在同一台服务器或者同一个C段内,此时就可以通过查询子域名对应的 IP 来辅助查找网站的真实IP。
2.3 利用网站漏洞
这个就没什么好说的了,目的就是让目标服务器主动来连接我们,这样我们就知道其真实IP了,可用的比如XSS盲打,命令执行反弹shell,SSRF等等。
2.4 服务器合法服务主动连接我们
同上一样的思路就是让服务器主动连接我们告诉我们它的IP,不过使用的是合法的服务,如RSS邮件订阅,很多网站都自带 sendmail,会发邮件给我们,此时查看邮件源码里面就会包含服务器的真实 IP 了。
2.5 使用国外主机解析域名
国内很多 CDN 厂商因为各种原因只做了国内的线路,而针对国外的线路可能几乎没有,此时我们使用国外的主机直接访问可能就能获取到真实IP。
2.6 目标敏感文件泄露
也许目标服务器上存在一些泄露的敏感文件中会告诉我们网站的IP,另外就是如 phpinfo之类的探针了。
2.7 从 CDN 入手
无论是用社工还是其他手段,反正是拿到了目标网站管理员在CDN的账号了,此时就可以自己在CDN的配置中找到网站的真实IP了。
2.8 用 Zmap 扫全网?
这个我没试过不知道...据说 Zmap 44分钟扫描全网?
好吧,还是稍微详细说下吧,比如要找 xiaix.me 网站的真实 IP,我们首先从 apnic 获取 IP 段,然后使用 Zmap 的 banner-grab 扫描出来 80 端口开放的主机进行 banner 抓取,最后在 http-req 中的 Host 写 xiaix.me。 |
|