第二十一天(CDN绕过)
#前置知识:
1.传统访问:用户访问域名–>解析服务器IP–>访问目标主机
2.普通CDN:用户访问域名–>CDN节点–>真实服务器IP–>访问目标主机
3.带WAF的CDN:用户访问域名–>CDN节点(WAF)–>真实IP–>访问目标主机
安全影响:主要对于信息收集时端口扫描和IP探针的相关真实信息存在有误等
国内服务商:
阿里云 百度云 七牛云
又拍云 腾讯云 Ucloud
360 网宿科技 ChinaCache
国外服务商
CloudFlare StackPath Fastly
Akamai CloudFront Edgecast
CDNetworks Google Cloud CDN
CacheFly Keycdn Udomain CDN77
#CDN配置:
配置1:加速域名-需要启用加速的域名(子域名没配置)
配置2:加速区域-需要启用加速的地区(国外地区没加速)
配置3:加速类型-需要启用加速的资源
配置4:其他SSL证书,DNS解析记录等(历史记录查询)
如果配置时值2加速某个域名,子域名没加速,那么可以通过访问子域名得到目标真实IP(通过子域名扫描获得子域名);如果配置时只加速国内地区,那可以通过国外主机访问拿到IP(现在不行了,有二跳,国外主机访问时会同一来到某个IP,在到网站);如果网站一开始没有用cdn加速,后面才加上,可以通过查找dns解析记录获得真实IP();通过ssl证书,查看解析记录 ,获取真实IP
常见方法:
子域名,邮件系统,国外访问,证书查询,APP抓包,网络空间
通过漏洞或泄露获取,扫全网,以量打量,第三方接口查询等
- 查询历史DNS记录:通过查询历史DNS记录,可以找到使用CDN前的IP地址。常用网站有DNSDB、微步在线、Netcraft、ViewDNS等。
- 查询子域名:一些网站可能只对主站或流量大的子站点使用CDN。通过查询子域名对应的IP地址,可以辅助找到网站的真实IP。常用工具包括微步在线、Dnsdb查询法、Google搜索等。
- 网络空间引擎搜索:利用网络空间搜索引擎(如Shodan、Fofa、ZoomEye)搜索特定关键词或特征,可以找到使用CDN的网站的真实IP地址。
- SSL证书:扫描互联网获取SSL证书,进而找到服务器的真实IP。Censys是一个用于搜索联网设备信息并扫描整个互联网的强大工具。
- HTTP标头:通过比较HTTP标头来查找原始服务器。例如,使用SecurityTrails平台搜索特定HTTP标头。
- 网站源代码:浏览网站源代码,寻找独特的代码片段或隐藏的IP地址信息。
- 国外主机解析域名:由于一些CDN服务在国外地区可能无法提供完整的保护,使用国外的主机直接访问目标网站可能会获取到真实IP地址。
- 遗留文件:如phpinfo页面泄露,可能会显示服务器的外网IP地址。
- 漏洞探针:利用网站上的漏洞(如SSRF漏洞)让VPS获取对方反向连接的IP地址。
- 网站邮件订阅:查看RSS邮件订阅的邮件源码,通常包含服务器的真实IP地址。
- 全网扫描:使用Zmap、Masscan等工具对整个互联网进行扫描,针对扫描结果进行关键字查找,获取网站真实IP。
- 解码F5 LTM负载均衡器:当服务器使用F5 LTM做负载均衡时,通过对set-cookie关键字的解码,可以获取到真实IP地址。
- 利用MX记录:如果网站在与web相同的服务器和IP上托管自己的邮件服务器,那么原始服务器IP将在MX记录中。
- 利用favicon.ico:查看网站的favicon.ico文件,通过其唯一的hash值进行识别,有时可以找到与网站相关的真实IP地址。
- 配置错误:检查CDN的配置细节,有时小小的配置错误就可能导致CDN防护被绕过。例如,CDN只配置了www域名,而直接访问非www域名可能获取到真实IP。
- 协议差异:如果站点同时支持http和https访问,而CDN只配置了https协议,那么访问http可能获取到真实IP。
- 利用网站功能:通过网站提供的某些功能(如邮箱注册、找回密码等),让网站主动暴露真实IP地址。
- 搜索引擎查询:利用搜索引擎的特定查询语法(如site:和inurl:),结合目标网站的信息,可能找到与网站相关的真实IP地址。
- 子域名挖掘机:输入域名即可基于字典挖掘子域名,通过查找子域名的IP地址来辅助找到网站的真实IP。20. IP库查询:使用IP库(如纯真数据库)来查询IP段,结合网站特征进行爆破,可能找到真实IP地址。
前置后置-CDN服务-识别加速&绑定访问
超级Ping:网站测速|网站速度测试|网速测试|电信|联通|网通|全国|监控|CDN|PING|DNS 一起测试|17CE.COM
超级Ping:多个地点Ping服务器,网站测速 - 站长工具
拨测工具:阿里云网站运维检测平台
各地ping(出现多个IP即启用CDN服务)
后置:绑定HOST访问解析(参考基础课CDN安全影响)
CDN绕过-主动漏洞&遗留文件&综合查询
配置加速选项中只加速主域名,导致其他子域名未加速(解析IP可能同IP也可能C段)
1、国外接口访问
2、子域名解析IP
3、综合查询(历史记录,证书记录等)
综合接口查询:Get Site IP - Find IP Address and location from any URL
综合接口查询:NOSEC|FOFA用户中心
使用网络空间&第三方功能集合查询判断
找到真实IP后,将域名和真实IP进行绑定 ,就是将xx.xx.xx.xx xx.com 写道这个文件里保存; c:\windows\system32\drivers\etc\hosts
CDN绕过-主动漏洞&遗留文件&邮件系统
1、漏洞如:SSRF RCE等
利用漏洞让对方真实服务器主动出网连接,判断来源IP即真实IP
看网站上面有没有上传文件或图片的地方,通过让一个主机监听某个端口,再将主机IP加端口放到上传地址上
2、遗留文件:phpinfo类似功能
通过访问类似PHPINFO类似代码函数获取本地IP造成的地址泄漏
这里显示的服务器IP可能是内网IP
3、邮箱系统:
判断条件:发信人是当前域名邮件用户名
-让他主动给你发:
部署架设的邮件服务器如果向外部用户发送邮件的话,
那么邮件头部的源码中会包含此邮件服务器的真实IP地址。
常见的邮件触发点有:
1、RSS订阅
2、邮箱注册、激活处
3、邮箱找回密码处
4、产品更新的邮件推送
5、某业务执行后发送的邮件通知
6、员工邮箱、邮件管理平台等入口处的忘记密码
-你给未知邮箱发:(需要自己的邮件服务器不能第三方)
通过发送邮件给一个不存在的邮箱地址,因为该用户邮箱不存在,所以发送将失败,并且还会收到一个包含发送该电子邮件给你的服务器的真实IP通知。
例如: 忘记密码,让服务器发送一个验证码到邮箱, 点击更多 ,查看信头
在received 中可能有对方服务器的真实IP
CDN绕过-全网扫描
案例1:结合关键字固定IP段找真实IP
1、判断加速厂商
2、IP库筛地址段
可以根据 dns解析平台查看
3、配置范围扫描
fuckcdn
先要配置一下 set.ini 文件,scanport 看网站是http就填80 ,是https就填443 ;findurl 填写网址 ;findstr 填一些该网站特有的,如:标题,关键字
还要配置ip.txt 设置IP段 ,要扫哪些IP段
结果会放在这个文件下: result_ip.txt 一般结果为几个
厂商查询:
最新CDN数据查询 - 站长工具
工具项目:
纯真网络,中国历史最悠久的IP地理位置库
https://github.com/Tai7sy/fuckcdn
当ping的域名和命令的域名不同是,可以根据ping的域名在浏览器搜索一下,
看相关搜索或则网页上出现了哪个云厂商