0

    信息收集---CDN绕过

    2023.05.19 | admin | 209次围观

    当老板给了我们一个目标网址时,我们第一时间应该做的就是对目标网址的信息收集,信息收集中又包含了许多复杂而又繁琐的步骤。接下来由我简单的介绍一下信息收集中的CDN绕过吧!有写的不好的或者不对地方还请大佬们随时指出呀!

    什么是CDN?

    CDN即内容分发网络,主要解决因传输距离和不同运营商节点造成的网络速度性能低下的问题。

    #目前常见的CDN绕过技术有哪些?

    1.子域名查询

    原理:站长没有对子域名(也就是主站的同一网段下的子网站)加CDN技术

    2.邮件服务查询

    原理:①一个正常的公司是没有必要对邮件服务器加CDN技术的,经济问题

    ②涉及到一个主动联系的问题,发邮件给我就会暴露他们的真实IP

    3.国外地址请求

    原理:如果一个网站主要是针对国内人员,那在国外访问国内就没有必要加CDN技术

    说白了也还是经济成本的问题,加CDN是要钱的!!!

    4.遗留文件,扫描全网

    原理:phpinfo.php里面有特定的参数可以看真实IP

    5.黑暗引擎搜索特定文件

    shodan、zoomeye、fofa

    特定文件:文件唯一的HASH值、MD5值,搜索网站的ico文件,也就是图标文件

    6.dns历史记录 or DDOS攻击(违法用)

    DNS历史记录:查网站以前可能没有使用过CDN时,解析的IP记录,也许是真实IP

    这里需要说一下,其实加CDN节点也是为了防御DDOS攻击的,攻与防之间,看谁损耗的成本更低,谁就是胜利者!防御的目的也是为了提高攻击的成本

    一、先判断目标网址有无CDN节点

    验证CDN的存在:

    如果目标网址解析出来的IP像图中一样,并不是那么统一,那目标网址就是加了CDN节点

    以下这个是没有CDN节点的,因此解析出来的IP就是此目标网址的真实IP

    现在考虑的是有CDN节点,我们该如何绕过CDN,寻找真实的IP地址呢?

    二、绕过CDN节点,寻找真实IP

    ★利用子域名请求获取真实IP

    去掉WWW后,我们再次寻找:

    只有最后一位不同,利用FOFA,对71、72进行IP反查域名:

    124.*.*.71,登进去后,没有数字签名的认证,打开网页需要我下载数字证书,但至少HTTP的状态码是200的

    124.*.*.72,可以完全打开网页,没有出现意外情况,状态码显示301,说明网页做了一个重定向的跳转。

    那为什么会出现这种情况呢?

    这也许是因为站长在做CDN节点的时候选了****.com作为分流网站,其实只要把www改为”*”,就可以完美解决这个问题了。

    ★利用DNS解析的历史记录

    此结果仅供参考

    历史解析出最早的记录是在2012年,有可能在2012年的时候,网站并没有使用CDN

    那解析出来的IP就是真实IP,这仅仅是其中一种情况!!!

    第二种,即使在2012年网站没有使用CDN,但是在这几年过程中,网站的服务器也许会被更换到另一个地方!就是2012年的IP是真实IP,那也不是如今的真实IP地址了!!!

    ★利用国外地址请求获取真实IP

    原本这个网站是国外在线代理网站,有很多全球不同地方的ping服务,有一定的机率可以帮助我们找出子域名的真实IP。

    但是不知道为什么这个网站的tools服务关闭了,一进去需要登录,而且无法注册账号,网上找了好久也没有找到解决的办法!

    其实还有一种方法跟这个类似,只不过要一个个的来切换代理IP,尽量选择一些不知名国家的代理,更容易获取到真实IP

    ★利用邮件服务器接口获取真实IP

    去掉www,发现还是有CDN

    打开邮件查看源码,这里可以看到from ***.com 后面附带IP地址

    验证此IP是否为真实IP,修改C:\Windows\System32\drivers\etc下的hosts的文件

    先修改与上面不同的IP:

    访问此网站:

    检测219.153.49.169是否为真实IP

    访问成功

    到这里大家可能会有一个疑问,如果我将IP修改成CDN节点的IP,是否会访问成功呢?

    答案是可以访问成功的,既然可以访问成功,那我做这个实验岂不是毫无意义?

    其实并不是,因为我们验证了219.153.49.169这个IP是可以访问网页,并且这个IP是邮件服务器发送过来的!具有很强的可靠性!!

    看备案号:

    按常理来说,这么近的地方,是没有必要放CDN的,经济成本

    ★利用黑暗引擎搜索特定文件获取真实IP

    原理:黑暗搜索引擎有过滤缓存的机制,确保搜出来的结构大部分都是真是存在的

    而ico图标文件的hash值是唯一的,用shodan去检索自己所爬取到的ico文件的hash值,如果我们提供的hash值与shodan缓存的一致,IP地址便会被搜索到!!!

    鄙人不才,找到一个bocai网站,它就刚刚好有ico文件:

    将上图红框内的网址放在以下这段代码中,注:在python2.7环境下执行这段代码

    运行后得favicon.ico的hash值,符合shodan语法,去shodan搜索:http.favicon.hash:613098635

    直接吐了,解析出来10个IP地址,日本占了七成!!!都是分布在其它地方的CDN节点,发现还是不行啊!能力有限,还是要继续学习----

    俗话说环境搭半年易语言打开指定网址,实验半小时!!!如今真是感同身受,这一步的环境弄了我前后几个小时!

    到最后却还是抓不了baocai网站的真实IP,而且后面还要看能不能搞到主站,一步更比一步艰辛!师傅说了,菜是原罪,菜就菜,没有什么可以解释的—_—!

    ★Censys查询SSL证书找到真实IP

    原理:就是搜集SSL证书 Hash,然后遍历IP去查询证书Hash,如果匹配到相同的,证明这个IP就是那个域名同根证书的服务器真实IP。简单来说,就是遍历 0.0.0.0/0:443,通过IP连接Https时,会显示证书。

    我命由我不由天,我决定再用另一种方法搞搞这个bocai网站!

    输入域名,在Censys上查找与域名相关的证书,找到四个

    点进去,在页面右侧Explore(),并点击IPv4,运气好可以找到真实IP

    我已经等不及啦,我们一起来看看结果吧:

    好家伙,四个证书没有一个可以找得到IP的,我彻底服了

    总结:没有哪一个方法是万能的,每个方法都要试一遍,直至找到我们所需要的信息,以上只是简略的列出了我平时所用的几个方法易语言打开指定网址,还有一些工具比如fuckcdn(易语言)、w8fuckcdn(python)、zmap也是可以绕过CDN寻找到真实IP

    小彩蛋:

    今天在做TCP/IP其中的HTTP作业时,发现了我们学校的邮件网站有个特别意思的现像:

    登进去可以看到背后的邮件,但是需要我们强制修改密码后,才可以看

    这时我打开F12,选取②框

    然后再到③右键,编辑HTML,

    Ctrl+A全选,然后全部删除

    鼠标在空白框外点击,然后看效果:

    虽然强制修改密码没有了,但是因为这个灰色的界面还是无法点击,按上面的操作再来一遍,删去灰色的界面就可以了

    搞定啦!!PS:自由是人的天性,建议还是修改密码的好!哈哈哈

    版权声明

    本文仅代表作者观点。
    本文系作者授权发表,未经许可,不得转载。

    发表评论