获取cdn 反向代理等大型网络IP方法

首先,CDN、负载均衡、反向代理还分为很多层,有时查出来的是最外层的 CDN 服务器群,真实的机器是不对外开放的,类似这样的:

用户  →   CDN 网络   →  一台或多台真实机器

↗  CDN Server 1  ↘
用户  →  CDN Server 2  →  真实机器
↘  CDN Server N  ↗

——————————————————–

用户  →   CDN 网络   →  一台或多台反向代理   →  一台或多台真实机器

↗  CDN Server 1  ↘
用户  →  CDN Server 2  →  Reverse Proxy Server  →  真实机器
↘  CDN Server N  ↗

具体根据网络的负载需求,CDN 服务器的数量以及分级层数是不一定的。

如果是这样的话,除非日一台CDN服务器看记录或者日进CDN供应商控制系统或后台,才能找到真实IP,但是那些CDN服务器配置完全一样,应该很难搞。

(这些CDN服务器不止代理的这一家网站,现在都是同时代理很多家网站,这就可以解释你旁站查询出来很多不相干的网站都在同一个IP地址,这是CDN服务 器供应商节省成本的一种方案,一台CDN同时代理多家网站,CDN供应商根据你支付金额的多少,决定使用多少台CDN服务器。)

(这些CDN服务器一般都在高防机房,拥有很大的带宽,并且大多数CDN运营商还拥有云防火墙技术,什么叫云防火墙?即:任意一台服务器检测到DDOS攻 击后,会向所有服务器通告这些攻击源IP,然后所有这些服务器都同时屏蔽这些地址,以实现整个网络屏蔽DDOS的目的,这些服务器组成了一个很强力的抗 DDOS网络,这是目前对付DDOS攻击,比较有效的方案之一。)

(再补充一点经验,这些CDN服务器还根据你提交的 HTTP HOST 头(也就是域名)返回不一样的系统信息,更有甚者,只要你 HTTP HOST 头不正确(不是它提供服务的域名),直接掐断连接,不返回任何数据,你就得不到任何有效信息.

还有另外一种:

用户  →  多台实时同步的缓存服务器与真实机器

↗  Cache Server 1
用户  →  Cache Server 2
↘  Cache Server N
↘  真实机器

如果是这种的话,很容易就可以找出来真实服务器的IP地址,因为他们 HTTP Banner 等信息是完全不一样的,用“长安刺客 – 旁注杀手”一眼就看出来了。

还有另外几种 CDN、负载均衡、反向代理 等网络构架:

用户  →   负载均衡   →  服务器群

↗  Cache Server 1
用户  →  Load Balance  →  Cache Server 2
↘  Cache Server N

————————————————————–

用户  →   反向代理类服务器   →  一台或多台真实机器

↗  真实机器1
用户  →  Reverse Proxy Server  →  真实机器2
↘  真实机器N

再结合 xxbing 提供的方法:

关于探测主站真实IP,我一般先查一下分站IP,有一种情况是,主站采用了CDN,分站没有用。

比如 bbs.xxx.com、vip.xxx.com、pay.xxx.com 都是 111.111.111.x 段的,那么主站也很有可能是 111.111.111.x 段的。扫一下这个段的80吧。

这确实是个好方法,针对国内的大站,多分玉米的很实用。但是现在很多国外站各种分域名ping出来和主站都是一个IP。

可以暴力跑一下2级域名。什么 blog.xxx.com、admin.xxx.com、root.xxx.com。反正4位英文以内的。。


2012-4-20 14:21:05 补充:

从乌云一个帖子里又摘录了点……

地址:如何快速查找cdn后面的真实ip

kyo327 | 2012-04-19 23:37

二级域名 nslookup 百度,谷歌 搜集信息

还听说有国外vpn ping的方式 不过我测试貌似不行

(站长点评:使用国外 vpn ping 的方法是因为,大部分CDN提供商只针对国内市场,而对国外市场几乎是不做CDN,所以有很大的几率会直接解析到真实IP。其实这个方法根本不用上国外 vpn,因为你上国外vpn的ping本质,就是使用国外dns(那台vpn服务器使用的dns)查询域名而已,所以只需要:nslookup lcx.cc 国外dns,就行了,例如:nslookup lcx.cc 8.8.8.8,提示:你要找冷门国外DNS才行,像谷歌的DNS,国内用的人越来越多了,很多CDN提供商都把谷歌DNS作为国内市场之一,所以,你查 到的结果会和国内差不了多少……)

请叫我大神 | 2012-04-19 23:42

其实可以调查下目标的公司所在地,分析出公司最可能有自己机房的地方,这种分析对大公司比较靠谱。找个那个地区的机器再测试下

(站长评论:且不说这个可能性有多大,首先一些中小型公司肯定没有自己的机房,网站服务器 天南地北的机房都有,有些还是国外的,大型公司也不一定有自己的机房,有的话,也可能在任何地方,你这种方法也许对百度、谷歌这种大公司可能有点作用,可 是你别忘了,他们有多少机房?每个机房中有多少服务器?你简直是在大海捞针,你还不如挨个扫该地区80端口来得快,很明显,哥们,你太能意淫了!完全没实 践过……)

请叫我大神 | 2012-04-19 23:44

@kyo327,你说的还是有些模糊,每个方向都可以细化,也会有一些技巧,这个可以分享下

xsser (白日放歌需纵酒) | 2012-04-20 00:13

1 历史记录 2 phpinfo 3 经常用ping xxx.com代替ping www.xxx.com

(站长评论:Good,好思路……)

蟋蟀哥哥 | 2012-04-20 00:36

@kyo327 @xsser 楼上的都说的都对,基本把我想到的办法都说了。哈哈.如果是我的话,肯定会先ping domain.com

然后ping子域,再nslookup.

GaRY | 2012-04-20 02:12

其实,一般mail.xxx.com之类的办公域名,都不会交给cdn。但是有可能交给gmail或者qmail。但是列举更多的类似办公域名,基本也能猜出八九不离十了

(站长评论:这个本文里有讲过,原理很简单,主站才做CDN,分站、内部域名等傻子才烧钱做CDN啊,所以都是真实IP,这个IP的C段中十有八九就存在主站的服务器,你只需要使用特定的扫描器(可以指定域名的),挨个扫描一下80端口就行了。)

only_guest (www.guoke.ca) | 2012-04-20 03:25

楼上说的差不多了.我再来补充一点.

可以社工统计的帐号.比如51啦..而且有时候是没密码的..

大站不行,但我经常搞一些小站的时候可以看到比如说使用IDC分配的二级域名访问的记录..

中率不高.实在没辙可以试试.

然后就是剑心说的phpinfo

这个中率很高.很多大站都喜欢放个phpinfo

看你路径字典强度.很容易跑出来的.

Eric | 2012-04-20 10:00

ping xxx.com一般都会是真实IP,因为了解到现有很多CDN厂商基本只要求把www.xxx.com cname到cdn主服务器上去。

(站长评论:这个说过很多次,www.lcx.cc 和 lcx.cc 的解析是两条独立的记录,很多公司都会只给 www.lcx.cc 做 CDN,很少管 lcx.cc,所以嘛……)

请叫我大神 | 2012-04-20 15:41

再说一个,小网站从无CDN到有CDN,会有一个IP变化的过程,netcraft.com会记录下来,也可以做参考:http://toolbar.netcraft.com/site_report?url=www.xxx.net

(站长评论:仍然是看解析记录)

原文:http://lcx.cc/?i=1959

91ri.org:文章很详细 不多做什么评论了。

本文由网络安全攻防研究室(www.91ri.org)信息安全小组收集整理。