CDN绕过技术总汇( 三 )


 例如,Censys上用于匹配服务器头的搜索参数为
80.http.get.headers.server:,查找CloudFlare服务的网站的参数如下:
 
80.http.get.headers.server:cloudflare
 方法六:利用网站返回的内容寻找真实的原IP 如果原服务器IP也返回网站内容,可以在网上搜索很多相关资料 。
 浏览网站源代码以查找独特的代码片段 。在 JAVAScript 中使用具有访问权限或标识符参数的第三方服务(例如 Google Analytics、reCAPTCHA)是攻击者经常使用的一种方法 。
 以下是从 HackTheBox 网站获得的 Google Analytics 跟踪代码示例:
 ga('创建','UA-93577176-1','auto');80.http.get.body 可以使用:参数通过body/source过滤Censys数据 。不幸的是,普通搜索字段有局限性 。但是您可以在 Censys 请求研究访问权限,这使您可以通过 Google BigQuery 进行更强大的查询 。
 Shodan 是一个类似于 Censys 的服务,同样提供 http.html 搜索参数 。
 搜索示例:
https://www.shodan.io/search?query=http.html%3AUA-32023260-1

CDN绕过技术总汇

文章插图
 
 方法七:使用外地主机解析域名 国内很多CDN厂商因为各种原因只做国内线,国外线路可能几乎没有 。这时候我们可能会使用外地主机直接访问真实IP 。
 方法八:网站漏洞搜索
  1. 目标敏感文件泄露,如phpinfo、GitHub信息泄露等探针
  2. XSS盲打、命令执行反向shell、SSRF等
  3. 无论是社会工程还是其他手段,目标网站获取CDN中的管理员账号,在CDN的配置中可以找到网站的真实IP 。
 方法九:网站邮件订阅搜索 RSS邮件订阅,很多网站都有自己的sendmail,会发邮件给我们 。此时,服务器的真实IP将包含在邮件的源代码中 。
 方法十:用Zmap扫描全网 要找到xiaix.me网站的真实IP,我们首先从apnic获取IP段,然后使用Zmap的banner-grab扫描出开放80端口的主机进行banner抓包,最后在Host中写入xiaix.me http请求 。
 方法十一:F5 LTM解码方法 服务器使用F5 LTM进行负载均衡时,也可以通过set-cookie关键字解码得到真实ip,例如:Set-Cookie: BIGipServerpool_8.29_8030=487098378.24095.0000,第一个小数部分的十进制数是487098378取出来,然后转换成十六进制数1d08880a,然后从后往前,取出四位数字,就是0a.88.08.1d,最后再转换成十进制数10.136.8.29,也是最后一个真实IP 。
 方法十二:网页敏感信息 这条思路来源于Jacko
 favicon哈希值 根据网站图标哈希值搜索IP
 Python2脚本
import mmh3import requestsresponse = requests.get('https://example.com/favicon.ico')favicon = response.content.encode('base64')hash = mmh3.hash(favicon)print 'http.favicon.hash:'+str(hash) 去fofa或者shodan上搜索该哈希值
 查询格式:
  • fofa:icon_hash="xxx"
  • shodan:http.favicon.hash:xxx
 HTML源代码检索查找IP 根据网站页面HTML中特有的字符串去搜索引擎中搜索,如目标页面中由HTML标签为<title>的字段比较特殊,那么可以去FOFA中搜索:
title="xxxxxxxxxxxxxxx" 搜索到的结果会显示IP,访问该IP,若能够正常访问则为真正IP,如果打不开则为CDN或虚拟主机服务器
 参考文章:
Jacko CDN
How to bypass the CDN to query the real IP of a website

【CDN绕过技术总汇】


推荐阅读