小迪安全笔记-9
小迪安全笔记-9
Kn1ght第9天:信息打点-CDN绕过篇_漏洞回链_接口探针_全网扫描_反向邮件
CDN 知识-工作原理及阻碍
CDN的全称是Content Delivery Network,即内容分发网络。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。
前置知识
①传统访问:用户访问域名–>解析服务器 IP–>访问目标主机
②普通 CDN:用户访问域名–>CDN 节点–>真实服务器 IP–>访问目标主机(直接访问的是节点服务器,缓存,不是真实服务器)
③带 WAF 的 CDN:用户访问域名–>CDN 节点(WAF)–>真实服务器 IP–>访问目标主机
CDN 配置-域名&区域&类型
CDN 配置:
配置 1:加速域名-需要启用加速的域名,
配置 2:加速区域-需要启用加速的地区 (仅中国内地、全球、全球不含内地)
配置 3:加速类型-需要启用加速的资源 (图片小文件、大文件、视音频点播、全站加速)
判断ip是否使用了CDN
①Nslookup
Win下使用nslookup命令进行查询,若返回域名解析结果为多个ip,多半使用了CDN,是不真实的ip。
以百度和小迪的网站为例:
百度明显返回2个ip,是用了cdn的,小迪的只有1个ip,没有使用cdn
②多地ping查询
使用不同区域ping,查看ping的ip结果是否唯一。若不唯一,则目标网站可能存在CDN。
查询网站:
③使用工具直接查询
CDN 绕过(寻找网站真实IP)
漏洞&遗留文件
访问遗留文件phpinfo.php
比如:访问www.yangsiqi.com/phpinfo.php 页面,这种方法适用于没有内网网卡情况下,我们主动访问phpinfo.php文件,它主动会泄露服务器的真实IP
原理:基于主动连接,和反向连接。
正向连接:(我主动把数据交出去)
反向连接:(对方主动找我)
部分漏洞泄露真实IP
利用ssrf.php漏洞
前提:目标网站开启CDN服务
①本地47.94.236.117开启一个web服务,监听8000端口: python2 -m SimpleHTTPServer 8000,记录日志
②利用对方网站ssrf.php漏洞尝试请求我的监听地址: http://47.94.236.117:8000
③查看本地监听数据:监听到对方的真实IP
原理:直接ping对方网站,是我去找他,可能得到的不是对方真实IP;利用漏洞,对方主动找我,给出的就是他的真实地址。
ping子域名查询真实IP
通过ping不同的子域名,可以查询到真实IP,www.yansiqi.com是开了cdn的,而test.yansiqi.com没有开cdn,所以ping出来的是真实IP
直接ping sp910.com IP都是一样的
通过接口查询实现国外访问,获得真实IP
通过国外得一些冷门的IP(比如非洲国家)去请求目标,很多时候国内的CDN不会覆盖一些冷门的国家或地区,故此可以利用此特点进行探测。
IPIP链接:https://tools.ipip.net/cdn.php
为什么不告诉我IP?
主动邮件配合备案
公司的邮件系统很多都是在内部,不会使用CDN服务,而且发送邮件是对方主动发出,给出的都是真实IP
直接用国外的一个接口查询
其它国外多PING测试工具:
https://asm.ca.com/zh_cn/ping.php
http://host-tracker.com/
http://www.webpagetest.org/
https://dnscheck.pingdom.com/
FuckCDN:扫描全球IP匹配web内容
zmap比较麻烦,还要安装配置啥的,FuckCDN打开就能用
①FuckCDN工具:https://github.com/Tai7sy/fuckcdn
②ZMap号称是最快的互联网扫描工具,能够在45分钟扫遍全网。
③Masscan号称是最快的互联网端口扫描器,最快可以在六分钟内扫遍互联网。
https://github.com/robertdavidgraham/masscan
fuckcdn下载下来的文件里面都是有教程的
CDN绑定-HOSTS绑定指向访问
Windows修改hosts:用记事本打开C:\Windows\System32\drivers\etc里的hosts文件
在hosts文件中设置访问目标地址,指向真实ip后,那么访问时,流量就不会经过CDN节点了,直接找本机,使用扫描工具做安全测试时也不会经过CDN了