11种绕过CDN查真实IP⽅法
0x01 验证是否存在CDN
⽅法1:
很简单,使⽤各种多地 ping 的服务,查看对应 IP 地址是否唯⼀,如果不唯⼀多半是使⽤了CDN,多地 Ping ⽹站有:
⽅法2:
使⽤ nslookup 进⾏检测,原理同上,如果返回域名解析对应多个 IP 地址多半是使⽤了 CDN。有 CDN 的⽰例:
服务器: public1.114dns
Address: 114.114.114.114
⾮权威应答:
名称: 163.xdwscache.ourglb0
Addresses: 58.223.164.86
125.75.32.252
Aliases:
⽆ CDN 的⽰例:
<
服务器: public1.114dns
Address: 114.114.114.114
⾮权威应答:
名称:
Address: 192.3.168.172
0x02 绕过 CDN 查⽹站真实 IP
⽅法1:查询历史DNS记录
1)查看 IP 与域名绑定的历史记录,可能会存在使⽤ CDN 前的记录,相关查询⽹站有:
###DNS查询
###微步在线
###在线域名信息查询
###DNS、IP等查询
###CDN查询IP
2)利⽤平台,攻击者就可以精准的到真实原始IP。他们只需在搜索字段中输⼊⽹站域名,然后按Enter键即可,这时“历史数据”就可以在左侧的菜单中到。
如何寻隐藏在CloudFlare或TOR背后的真实原始IP
除了过去的DNS记录,即使是当前的记录也可能泄漏原始服务器IP。例如,MX记录是⼀种常见的查IP的⽅式。如果⽹站在与web相同的服务器和IP上托管⾃⼰的邮件服务器,那么原始服务器IP将在MX记
录中。
⽅法2:查询⼦域名
毕竟 CDN 还是不便宜的,所以很多站长可能只会对主站或者流量⼤的⼦站点做了 CDN,⽽很多⼩站⼦站点⼜跟主站在同⼀台服务器或者同⼀个C段内,此时就可以通过查询⼦域名对应的 IP 来辅助查⽹站的真实IP。
下⾯介绍些常⽤的⼦域名查的⽅法和⼯具:
1)微步在线()
上⽂提到的微步在线功能强⼤,⿊客只需输⼊要查的域名(如baidu),点击⼦域名选项就可以查它的⼦域名了,但是免费⽤户每⽉只有5次免费查询机会。如图:
2)Dnsdb查询法。()
⿊客只需输⼊baidu type:A就能收集百度的⼦域名和ip了。如图:
3)Google 搜索
Google site:baidu -www就能查看除www外的⼦域名,如图:
4)各种⼦域名扫描器
这⾥,主要为⼤家推荐⼦域名挖掘机和lijiejie的subdomainbrute()
⼦域名挖掘机仅需输⼊域名即可基于字典挖掘它的⼦域名,如图:
Subdomainbrute以windows为例,⿊客仅需打开cmd进⼊它所在的⽬录输⼊Python subdomainbrute.py baidu --full即可收集百度的⼦域名,如图:
注:收集⼦域名后尝试以解析ip不在cdn上的ip解析主站,真实ip成功被获取到。
⽅法3:⽹络空间引擎搜索法
常见的有以前的钟馗之眼,,。以fofa为例,只需输⼊:title:“⽹站的title关键字”或者body:“⽹站的body特征”就可以出fofa收录的有这些关键字的ip域名,很多时候能获取⽹站的真实ip,如图:
⽅法4:利⽤SSL证书寻真实原始IP
使⽤给定的域名
假如你在xyz123boot上托管了⼀个服务,原始服务器IP是136.23.63.44。⽽CloudFlare则会为你提供DDoS保护,Web应⽤程序防⽕墙和其他⼀些安全服务,以保护你的服务免受攻击。为此,你的Web服务器就必须⽀持SSL并具有证书,此时CloudFlare与你的服务器之间的通信,就像你和CloudFlare之间的通信⼀样,会被加密(即没有灵活的SSL存在)。这看起来很安全,但问题是,当你在端⼝443(
此时,如果攻击者扫描0.0.0.0/0,即整个互联⽹,他们就可以在端⼝443上获取在xyz123boot上的有效证书,进⽽获取提供给你的Web 服务器IP。
⽬前Censys⼯具就能实现对整个互联⽹的扫描,Censys是⼀款⽤以搜索联⽹设备信息的新型搜索引擎,安全专家可以使⽤它来评估他们实现⽅案的安全性,⽽⿊客则可以使⽤它作为前期侦查攻击⽬标、收集⽬标信息的强⼤利器。Censys搜索引擎能够扫描整个互联⽹,Censys 每天都会扫描IPv4地址空间,以搜索所有联⽹设备并收集相关的信息,并返回⼀份有关资源(如设备、⽹站和证书)配置和部署信息的总体报告。
⽽攻击者唯⼀需要做的就是把上⾯⽤⽂字描述的搜索词翻译成实际的搜索查询参数。
xyz123boot证书的搜索查询参数为:parsed.names:xyz123boot
只显⽰有效证书的查询参数为:tags.raw:trusted
攻击者可以在Censys上实现多个参数的组合,这可以通过使⽤简单的布尔逻辑来完成。
组合后的搜索参数为:parsed.names: xyz123boot and tags.raw: trusted
Censys将向你显⽰符合上述搜索条件的所有标准证书,以上这些证书是在扫描中到的。
要逐个查看这些搜索结果,攻击者可以通过单击右侧的“Explore”,打开包含多个⼯具的下拉菜单。What's using this certificate? > IPv4 Hosts
此时,攻击者将看到⼀个使⽤特定证书的IPv4主机列表,⽽真实原始 IP就藏在其中。
你可以通过导航到端⼝443上的IP来验证,看它是否重定向到xyz123boot?或它是否直接在IP上显⽰⽹站?
使⽤给定的SSL证书
如果你是执法部门的⼈员,想要出⼀个隐藏在ion下的⼉童⾊情⽹站。做好的办法,就是到其原始IP,这样你就可以追踪到其托管的服务器,甚⾄查到背后的运营商以及⾦融线索。
隐藏服务具有SSL证书,要查它使⽤的IPv4主机,只需将"SHA1 fingerprint"(签名证书的sha1值)粘贴到Censys IPv4主机搜索中,即可到证书,使⽤此⽅法可以轻松到配置错误的Web服务器。
⽅法5:利⽤HTTP标头寻真实原始IP
借助SecurityTrails这样的平台,任何⼈都可以在茫茫的⼤数据搜索到⾃⼰的⽬标,甚⾄可以通过⽐较HTTP标头来查到原始服务器。
特别是当⽤户拥有⼀个⾮常特别的服务器名称与软件名称时,攻击者到你就变得更容易。
如果要搜索的数据相当多,如上所述,攻击者可以在Censys上组合搜索参数。假设你正在与1500个Web服务器共享你的服务器HTTP标头,这些服务器都发送的是相同的标头参数和值的组合。⽽且你还使⽤新的PHP框架发送唯⼀的HTTP标头(例如:X-Generated-Via:XYZ框架),⽬前约有400名⽹站管理员使⽤了该框架。⽽最终由三个服务器组成的交集,只需⼿动操作就可以到了IP,整个过程只需要⼏秒钟。
例如,Censys上⽤于匹配服务器标头的搜索参数是headers.server :,查由CloudFlare提供服务的⽹站的参数如下:
headers.server:cloudflare
⽅法6:利⽤⽹站返回的内容寻真实原始IP
如果原始服务器IP也返回了⽹站的内容,那么可以在⽹上搜索⼤量的相关数据。
浏览⽹站源代码,寻独特的代码⽚段。在JavaScript中使⽤具有访问或标识符参数的第三⽅服务(例如Google Analytics,reCAPTCHA)是攻击者经常使⽤的⽅法。
以下是从HackTheBox⽹站获取的Google Analytics跟踪代码⽰例:
ga('create','UA-93577176-1','auto');
可以使⽤body:参数通过body/source过滤Censys数据,不幸的是,正常的搜索字段有局限性,但你可以在Censys请求研究访问权限,该权限允许你通过Google BigQuery进⾏更强⼤的查询。
Shodan是⼀种类似于Censys的服务,也提供了http.html搜索参数。
搜索⽰例:
⽅法7:使⽤国外主机解析域名
国内很多 CDN ⼚商因为各种原因只做了国内的线路,⽽针对国外的线路可能⼏乎没有,此时我们使⽤国外的主机直接访问可能就能获取到真实IP。站长工具ping检测
⽅法8:⽹站漏洞查
1)⽬标敏感⽂件泄露,例如:phpinfo之类的探针、GitHub信息泄露等。
2)XSS盲打,命令执⾏反弹shell,SSRF等。
3)⽆论是⽤社⼯还是其他⼿段,拿到了⽬标⽹站管理员在CDN的账号,从⽽在从CDN的配置中到⽹站的真实IP。
⽅法9:⽹站邮件订阅查
RSS邮件订阅,很多⽹站都⾃带 sendmail,会发邮件给我们,此时查看邮件源码⾥⾯就会包含服务器的真实 IP 了。
⽅法10:⽤ Zmap 扫全⽹
需要 ⽹站的真实 IP,我们⾸先从 apnic 获取 IP 段,然后使⽤ Zmap 的 banner-grab 扫描出来 80 端⼝开放的主机进⾏ banner 抓取,最后在 http-req 中的 Host 写 。
⽅法11: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。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论