信息收集之CDN绕过
当我们判断出一个网站存在CDN的话,我们就要考虑绕过CDN,找到网站的真实ip,否则就会影响到渗透人员对网站的渗透测试。
如何判断一个网站是否存在CDN,我的另一篇帖子有写:https://www.cnblogs.com/chadlas/p/15913615.html
CDN绕过技术有哪些?
1、查询DNS历史解析记录
查询ip与域名的绑定记录,可能会存在使用CDN之前的记录,查询网站:
1 https://dnsdb.io/zh-cn/ ###DNS查询 2 https://x.threatbook.cn/ ###微步在线 3 http://toolbar.netcraft.com/site_report?url= ###在线域名信息查询 4 http://viewdns.info/ ###DNS、IP等查询 5 https://tools.ipip.net/cdn.php ###CDN查询IP
2、查询子域名
常用的子域名查找的方法和工具:
1)微步在线
1 https://x.threatbook.cn/
2)Dnsdb查询法。
1 https://dnsdb.io/zh-cn/
输入baidu.com type:A就能收集百度的子域名和ip了。
3)Google 搜索
Google :baidu.com -www就能查看除www外的子域名。
4)各种子域名扫描器
子域名挖掘机
子域名挖掘机需输入域名即可基于字典挖掘它的子域名。
注:收集子域名后尝试以解析ip不在cdn上的ip解析主站,真实ip成功被获取到。
3、使用国外主机解析域名
使用国外的主机直接访问就有可能直接获取到真实ip:
1 https://get-site-ip.com/
4、网站邮件订阅查找
RSS邮件订阅,很多网站都自带 sendmail,会发邮件给我们,此时查看邮件源码里面就会包含服务器的真实 IP 了。
5、网络空间搜索引擎
常见的有以前的zoomeye,shodan,fofa搜索。
6、python脚本
可以将网站的favicon.ico转为16进制,再对其shodan搜索
import mmh3,base64,requests def main(): hash = mmh3.hash(base64.b64encode(requests.get('https://www.baidu.com/favicon.ico').content)) print(hash) pass if __name__ == '__main__': main()
shodan搜索的语句为
http.favicon.hash:hash值