《小迪安全》第7天 信息收集:CDN绕过

目录

前言

如何判断目标存在CDN服务

CDN对于安全测试的影响

目前常见的CDN绕过技术

CDN真实IP地址获取及绑定指向地址

演示案例

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

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

3. 利用第三方接口查询获取真实IP

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

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

补充工具


前言

CDN(Content Delivery Network)即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。但在安全测试过程中,若目标存在CDN服务,将会影响到后续的安全测试过程。

如何判断目标存在CDN服务

判断CDN的简单方式:超级ping多个地点Ping服务器,网站测速 - 站长工具

一个网址多个IP就是开启了CDN服务。

CDN对于安全测试的影响

目前常见的CDN绕过技术

  • 子域名查询:多级域名。二级域名有可能和主站呈现以下三种关系:同IP;不同IP同网段(企业、学校常用);不同IP不同网段。从经济的角度出发,一般会对主站提供CDN服务,但不会对子域名、附站架设CDN服务。可以通过二、三级域名推断主站真实IP地址范围。
  • 邮件服务查询:很多公司、企业、学校内部会有邮件服务器,自己的邮箱地址,此邮箱服务器大多数不会架设CDN服务器,因为并没有必要。仅供内部人访问。邮箱服务器给个人发送邮件的时候肯定是从真实IP发出,因为个人邮箱地址不可能有CDN服务(正向、反向的问题)。
  • 国外地址请求:从经济角度出发,国内的网站一般不会到国外架设CDN服务,只会针对客户群体地区提供CDN服务。有时从国外(以国外IP)访问就能得知真实主站IP。
  • 遗留文件:原理和邮件查询类似。遗留文件类似于phpinfo.php,内含当前PHP脚本相关环境配置,有IP地址字段,就很有可能是真实源站。
  • 扫描全网:以上手段都没用的时候,是一个没办法的办法,借助软件、工具、平台等资源进行扫描,把全世界的网路对目标网站进行访问,对返回的IP地址进行收集,再分析哪一个可能是真实IP。因为:不是每个地方都有CDN;真实IP一定在收集到的所有IP里,因为穷尽资源一定有临近源站的IP,源站直接回复。
  • 黑暗引擎搜索特定文件:钟馗之眼,ShodanShodan Search Engine、fofahttps://fofa.info/、特定文件:文件的哈希值、MD5值,网站图标文件ico文件
  • DNS历史记录,以量打量:查找网站没有架设CDN服务之前的IP地址。以量打量就是DDoS攻击,CDN根据地区流量付费(流量耗尽攻击)耗干CDN当前可供访问的流量之后,就只能由源站响应。

CDN真实IP地址获取及绑定指向地址

更改本地HOSTS解析指向文件

演示案例

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

*号表示所有。虽然加与不加www,访问得到的网页是一样的,但其实需要两条设置。

通常情况下,CDN只设置了www而不是*,不以www访问就可以绕过CDN。

通常网站管理员将两个地址解析至同一IP,但搭建CDN服务时候,可能存在网站管理员只将其中一个设置解析至CDN服务器的情况,也就是说:两种访问方式访问的IP可能并不相同。

使用超级Ping,xueersi.com和www.xueersi.com返回的IP地址不一样,暴露主站IP。

Get Site IP - Find IP Address and location from any URL

微步在线X情报社区-威胁情报查询_威胁分析平台_开放社区

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

m.sp910.com 域名前加m.是手机版。可以从m.访问做测试。(类似子域名)

子域名查询|ip反查域名 - DNSGrep

用国外地址访问时最好避开主流国家,因为有可能在这些国家架设了CDN。如果要用国外地址访问,最好用冷门国家。花钱买节点(全局模式)……换节点后可见访问相同网址IP不同:

3. 利用第三方接口查询获取真实IP

参考

微步在线X情报社区-威胁情报查询_威胁分析平台_开放社区

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

mozhe.cn利用超级ping无法获取真实IP地址。考虑使用邮件源码测试对比第三方查询。

查看邮件源码:Received 字段获悉网站IP地址。再去第三方查询、对比。

查询IP归属地,结合网站底部备案号确定IP真实性:

如何进一步确定当前获取的IP地址的真实性:修改本地HOST文件。

保存,重启浏览器,访问域名。如果可以正常访问说明已获取真实源站IP!

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

Shodan搜索文件哈希值。(钟馗之眼、fofa)

计算网站ico文件哈希值的Python代码:

#Eython2开发别搞错了执行环境
#安装mmh3失败记得先安装下这个
#Microsoft visual C++ 14.0
#https://pan.baidu.com/s/12TcEkz6KFLhofCT-osJosg 提取码: wkgv

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)

输出语句是Shodan的搜索语法。拿获取到的哈希值去Shodan搜索即可。

补充工具

fuckcdn,w8fuckcdn,zmap全网扫描工具,基于python,扫描满足配置且开80端口的。

扫描完的结果还是需要人工判定。工具不一定准。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值