CDN 绕过
CDN的全称是ContentDeliveryNetwork,即内容分发网络。
CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。但在安全测试过程中,若目标存在CDN服务,将会影响到后续的安全测试过程。
如何判断目标存在 CDN 服务?
超级ping
一个域名多个ip
CDN 对于安全测试有那些影响?
子域名查询
目前常见的 CDN 绕过技术有哪些?
子域名查询
邮件服务查询
国外地址请求
遗留文件
例子:通过查 inurl:phpinfo.php 点击进去,任意点击进去一个网站出现以下页面,在这个页面中我们就可能找到对应的网站的真实IP地址,这就是遗留文件
扫描全网
黑暗引擎搜索特定文件
fofa shoda ZoomEye
dns 历史记录,以量打量
通过查询网站相关的DNS记录,可以查到之前没有使用CDN情况下的网站真实IP地址
以量打量也就是所谓Ddos攻击,通过消耗节点的IP地址(打光CDN上面的流量),然后达到最后访问真实IP地址的情况(人身攻击 不推荐使用)
CDN 真实 IP 地址获取后绑定指向地址
更改本地 HOSTS 解析指向文件
演示案例:
利用子域名请求获取真实 IP
利用国外地址请求获取真实 IP
利用第三方接口查询获取真实 IP
利用邮件服务器接口获取真实 IP
利用黑暗引擎搜索特定文件获取真实 IP
xueersi 子域名上面的小技巧
上面说子域名在另一种情况比较有意义,在这个实操这里就可以体现出来。通过域名解析成ip地址的过程中,可能出现*.xueersi.com 和 www.xueersi.com 所解析到的IP地址是一样的情况,在这种情况下,网站可能只对www.xueersi.com这个域名搭建了cdn服务,我们进行超级ping时会出现不同的IP地址,而用xueersi.com可能就没有搭建,我们可以通过超级ping发现其网站的真实IP地址(目前这个网站已经都搭建了CDN服务)
可以通过https://www.get-site-ip.com/ 这个网站进行访问,获取网站真实IP地址(结果仅供参考)
sp910 DNS 历史记录=第三方接口(接口查询)
通过这个网站(https://x.threatbook.cn),获取之前对应的DNS解析记录,找到时间最早之前解析的IP地址,就可能是它的目前真实地址,为什么说是可能呢,因为从当初到现在,网站管理者可能换了台服务器导致网站真实IP地址的改变
https://x.threatbook.cn
m.sp910 子域名小技巧/采集/国外请求
或者fq进行ping
(同类型访问)
mozhe 邮件源码测试对比第三方查询(地区分析)
v23gg 黑暗引擎(shodan 搜指定 hash 文件)
案例
扫全网
fuckcdn,w8fuckcdn,zmap 等
#Python2 开发别搞错了执行环境
#安装 mmh3 失败记得先安装下这个#Microsoft Visual C++ 14.0
#https://pan.baidu.com/s/12TcFkZ6KFLhofCT-osJOSg 提取码:
import mmh3
import requests
response = requests.get('http://www.xx.com/favicon.ico')
favicon = response.content.encode('base64')
hash = mmh3.hash(favicon)
print 'http.favicon.hash:'+str(hash)
涉及资源:
https://www.shodan.io
https://x.threatbook.cn
http://ping.chinaz.com
https://www.get-site-ip.com/
https://asm.ca.com/en/ping.php
https://github.com/Tai7sy/fuckcdn
https://github.com/boy-hack/w8fuckcdn
https://mp.weixin.qq.com/s?__biz=MzA5MzQ3MDE1NQ==&mid=2653939118&id
x=1&sn=945b81344d9c89431a8c413ff633fc3a&chksm=8b86290abcf1a01cdc0071
1339884602b5bb474111d3aff2d465182702715087e22c852c158f&token=2684171
43&lang=zh_CN#rd