什么是CDN
CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。
CDN有什么作用?
CDN基本思路就是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。CDN核心的就是使用户可就近访问网络,取得所需内容,解决网络拥挤的状况,明显提高用户访问网站的响应速度或者用户下载速度。
对用户来说,如果一个网站开启了CDN,用户访问速度或者下载速度相比之前会更快。一般来说,网站开启CDN之后,可以提升用户体验。
CDN对网站有什么好处?
首先,开启CDN后的网站,会根据用户所在地的不同访问CDN的节点服务器,并不直接访问源服务器,这样可以减少网站服务器宽带资源,降低服务器压力。这也就是大家都在ping百度,但是不同地区得到的反馈ip不一样的原因。
其次,由于CDN节点的阻挡防护,可以更好的保护源服务器的安全。具体来说,CDN其实是充当了一个替身的角色,无论服务器是渗透还是DD0S攻击,攻击的目标都将是CDN节点,这样一来便间接的保护了网站本身。
如何检测目标是否存在CDN?
超级ping,nslookup
1、超级ping :借用不同地区服务器对目标系统的一个检测,查看你目标返回的IP地址是否是同一个。同一个IP地址没用CDN技术,返回多个IP地址,用了CDN技术
例如:随便ping一个域名,根据返回的IP地址以及IP归属地判断是否启动CDN技术
返回IP地址以及归属地是同一个,没有应用CDN技术
ping www.baidu.com,返回多个IP地址与IP归属地,使用了CDN技术
2、nslookup
返回一个地址,没有启用CDN技术
返回多个地址,启用CDN技术
常见CDN绕过获取真实IP方法?
1、子域名查询
由于CDN功能需要付费才可开启,为了节约资金,只开启某个访问流量比较大的网站的CDN功能(一般是主站),流量小的子域名不开启CDN功能(一般分站)。分站与主站有可能IP地址在同一网段,有联系,可以通过分站IP地址推断主站IP地址
2、国外地址请求
网站主要用户群体是国内用户,国外用户较少,节约成本不给国外做CDN,国外请求的则是真实IP地址(CDN开启有选择性,全球或者地区,费用不一样)
3、邮件服务查询
网站注册会员的时候会绑定邮箱,邮箱收到邮件内容的时候会判断发送邮箱的来源地址,来源地址不用CDN
4、其他方法:遗留文件,扫全网,黑暗引擎,DNS历史记录,以量大量
遗留文件(phpinfo.php)
a\扫全网
最后的办法,借用全球的地址同时请求这个网站,这个网站某些地区没做CDN,发现真实IP
b\黑暗引擎(一般没用)
shodan与钟馗之眼,采用收录与爬行技术,根据请求信息查找有可能真实IP地址在里面,成功性较低,不是很靠谱,假如今天开启了CDN技术,搜索引擎不一定收录,所以真实IP有可能搜不到
c\DNS历史记录
DNS缓存查询:这里主要是利用管理员疏忽,通过DNS缓存查询,查看 IP 与 域名绑定的历史记录,可能会存在使用 CDN 前的记录,相关查询网站有:
dnsdb.io/zh-cn/
x.threatbook.cn/
toolbar.netcraft.com/site_report…
viewdns.info/
tools.ipip.net/cdn.php
利用SecurityTrails平台(securitytrails.com/),攻击者就可以精准的…
SecurityTrails平台除了过去的DNS记录,即使是当前的记录也可能泄漏原始服务器IP。例如,MX记录是一种常见的查找IP的方式。如果网站在与web相同的服务器和IP上托管自己的邮件服务器,那么原始服务器IP将在MX记录中。
d\以量打量
就是DDOS,因为CDN开通时根据流量多少付费,有流量限制,DDOS不断攻击,流量占完带宽,真实IP地址就出来了
案例
1、www.xxx.com 子域名及get-site-ip获取
超级ping检测发现使用了CDN技术
ping命令检测,CDN技术一般会出现多个域名,没有CDN技术的只有一个域名
可以用子域名挖掘机layer查找子域名,查找发现有www.xx.com 与xx.com经测试发现xx.com的IP地址是真实IP地址,因为浏览器URL中输入xx.com会自动变成www.xx.com解析后去访问
CDN技术在设置节点的时候输入的是www.xx.com,也就是访问www.xx.com的时候解析到CDN设置的IP地址 12.12.5.6,访问其他的时候解析到 12.12.5.1
*.xx.com 12.12.5.1 星号代表任意的
www.xx.com 12.12.5.6
子域名挖掘机查找多个域名,对比IP地址,可发现真实IP,因为一些访问量少的子域名,为了节约程本不做CDN技术。
测试发现真实IP地址是xx.com解析的IP地址
get-site-ip是一个自动获取真实IP的在线测试平台
网址:get-site-ip.com/
2、www.xxx.com 国外地址请求
得开代理,代理国外IP地址,网上有免费的国外代理,开多个国家的代理,都去ping www.xxx.com 如果返回IP地址都一致的话,则这个IP地址就是真实IP地址
超级ping也可以但是不能自己选择外国地址
3、www.xxx.com SSL证书查询 效果一般 使用网站:censys.io/
针对URL采用https协议的网站,因为使用了SSL
操作步骤:
访问Censys在线工具(censys.io/)国外网址访问较慢
首页下滑选中图中所示选项
使用搜索语法:parsed.names: aaa.com and tags.raw: trusted
输完要查询的域名后,回车,如下图所示
选择其中一个自己需要的域名,本实验选中第一个
选择获取IPV4地址
本实验没有搜索到结果。但方法是正确的。所以说查询效果一般
4、www.xxx.com 邮件测试
一般接受验证码或者开会员,会通过邮箱的方式接受验证码或者会员邀请码
本实验采用QQ邮箱,选中一个右键,点击图中所指图标
选择显示原文
在原文中Received获取的就是真实IP,来源IP地址
CDN相关脚本工具使用介绍
手工测试后没有找到真实IP,才使用脚本,物理电脑网卡带宽要求高,不然电脑就死了,建议使用服务器带宽高的,
脚本地址:
github.com/boy-hack/w8…
github.com/Tai7sy/fuck… 是一个扫全网的工具,所以带宽要求高,扫描时间特别久
参考网址:
www.fujieace.com/penetration…
更多web安全工具与存在漏洞的网站搭建源码,收集整理在知识星球。