CDN绕过
CDN知识-工作原理及阻碍 |
前置知识
全称Content Delivery Network,即内容分发网络。
使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。
关键技术主要有内容存储和分发技术
传统访问:用户访问域名→解析服务器IP→访问目标主机
普通CDN:用户访问域名→CDN节点→真实服务器IP→访问目标主机
带WAF的CDN:用户访问域名→CDN节点(WAF)→真实服务器IP→访问目标主机
判定标准:nslookup、各地ping
绕过
漏洞&遗留文件
-
phpinfo.php探针
其中_SERVER[“SERVER_ADDR”]有主机信息
(服务器有多个网卡,获取到的可能是内网IP地址)
-
SSRF漏洞(不止这个漏洞)
服务器IP地址1开启web服务来记录日志
网址1有一个SSRF漏洞(会接受用户的数据并利用服务器去请求)
漏洞去请求地址1
日志就会记录访问的IP→相当于访问的服务器IP,得到真实IP
ping或请求网站时,自己请求的,所以访问的是CDN节点(正向)
对方自己的服务器去请求设置的资源,所以是真实IP(反向)
只要漏洞有带有让服务器去请求你设置的资源,就满足条件(XXE、命令执行反弹shell等)
-
历史DNS记录
https://dnsdb.io/zh-cn/
https://x.threatbook.cn/
http://toolbar.netcraft.com/site_report?url=
http://viewdns.info/
http://www.17ce.com/
https://community.riskiq.com/
http://www.crimeflare.com/cfssl.html
子域名查询操作
可能会加速www但未加速其他子域名
OneForAll子域名挖掘
接口查询国外访问
小众国家可能不会设置对应的CDN
查找网站ip(可以互相验证,不一定确定对)
主动邮件配合备案
邮件主动发给你(反向)
邮件-显示原文-“Received: from”
全网扫描FuckCDN
找到真实ip后hosts绑定真实ip,后续安全测试即可全部指向真实ip
{示例ip} {对应域名} |
- Windows:C:\Windows\System32\drivers\etc\hosts
- Linux:/etc/hosts
通过信息收集,缩小扫描范围,确定一个相对小的IP和端口范围(中国?AS号?B段?等)
通过http指纹特征和keyword等做综合判断。可使用工具如下:
https://github.com/zmap/zgrab/ |
-
zgrab是基于zmap无状态扫描的应用层扫描器,可以自定义数据包,以及ip、domain之间的关联。可用于快速指纹识别爆破等场景。
-
Zmap大法
查询Https证书
https://censys.io/ |
这个网址会将互联网所有的ip进行扫面和连接,以及证书探测。若目标站点有https证书,并且默认虚拟主机配了https证书,我们就可以找所有目标站点是该https证书的站点。
443.https.tls.certificate.parsed.extensions.subject_alt_name.dns_names:www.xxx.com |