查找“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 头不正确(不是它提供服务的域名),直接掐断连接,不返回任何数据,你就得不到任何有效信息,如果你使用“长安刺客 - 旁注杀手 v1.2 版 + CDN 终结者 v1.1”的话,那么需要在 CDN 终结者界面勾选特殊模式,然后再刺探网络构架,有时候会有惊喜哟……)
还有另外一种:
用户 → 多台实时同步的缓存服务器与真实机器 ↗ 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 补充:
从乌云一个帖子里又摘录了点……
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
(站长评论:仍然是看解析记录)
2012-7-31 18:56:14 补充:
蟋蟀哥哥在绕过CDN的思路提到:
为了庆祝成都第一次线下沙龙举办成功,特地把这个想法发出来。给大家一个绕过cdn的思路。
下面是以前讨论这个的帖子:http://zone.wooyun.org/content/79
.....................帅气的分割线............................
其实这个思路来自于nc反弹,木马方向连接从而绕过防火墙....
...我们直接访问有cdn的域名的时候,肯定要先经过cdn这一层...如果我们让服务器连接我们呢??不就能快速得到服务器真实IP了么??
怎么让服务器主动联系我们呢???
。。我首先想到的email,有的服务器本地自带sendmail... 注册之后,会主动发一封邮件给我们。。。 好吧。。打开邮件的源代码。。 你就能看到服务器的真实Ip了。。。有的大型互联网网站会有自己的Mailserver...应该也是处在一个网段吧?? 那个网段打开80的一个一个试。。。哈哈。。
如果对方使用的是公用的smtp邮件服务器。。就没办法鸟。。。本文提供的是一个思路。。。
除了mail。。。还有什么能让服务器主动连接我们呢??? 其实在HTML5中新增了一个push的功能。。也就是说服务器主动发送消息给浏览器。。。 由于没有找到使用这个的网站。。所以只是一个想法。。
希望大家提供更多的思路。。。 谢谢鸟。。。
具体内容见:绕过CDN查找真实IP的思路,一个新颖并另类的方法
站长评论:
这个其实很好理解,之前的方法都是正向查找,这个是反向查找,利用邮件功能、服务器抓取功能(采集新闻之类的功能),总之就是利用诱导服务器对外发送数据,并且可以捕获到源地址的功能,进行反向侦查。
这个思路确实很新颖,为什么以前从来没有人想到反向查找呢?不过嘛,这个方法有很大的局限性,应用范围有限……
相关内容:
IP反查网站接口 旁站查询 IP查域名 域名历史解析记录查询 IP地址查机房AS号
基于日志整理出的经常扫描的 IDC、ISP、IP段、AS号及web服务器内容
绕过CDN的思路,绕过CDN查找真实IP的思路,一个新颖并另类的方法
查找“CDN、负载均衡、反向代理”等大型网络真实IP地址的方法
原文地址:http://lcx.cc/?i=1959
查找“CDN、负载均衡、反向代理”等大型网络真实IP地址的方法的更多相关文章
- Nginx服务器部署 负载均衡 反向代理
Nginx服务器部署负载均衡反向代理 LVS Nginx HAProxy的优缺点 三种负载均衡器的优缺点说明如下: LVS的优点: 1.抗负载能力强.工作在第4层仅作分发之用,没有流量的产生,这个特点 ...
- Nginx HTTP负载均衡/反向代理的相关参数测试
原文地址:http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/03/15/1984976.html 测试目的 (1)弄清楚HTTP Upstr ...
- nginx做为web容器部署静态资源以及做负载均衡反向代理实现
需求: 此时前台开发完成打包生成静态资源文件,要做到以下方面: 使用nginx部署静态资源,同时nginx要实现端口转发,隐藏真实后台地址,同时后台需要做一个负载均衡. localhost:7001 ...
- nginx反向代理Tomcat/Jetty获取客户端IP地址
使用nginx做反向代理,Tomcat服务器和Jetty服务器如何获取客户端真实IP地址呢?首先nginx需要配置proxy_set_header,这样JSP使用request.getHeader(& ...
- 架构之Nginx(负载均衡/反向代理)
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器 ,也是一个 IMAP/POP3/SMTP 代理 服务器 . Nginx 是由 Igor Sys ...
- nginx负载均衡(反向代理)
6,安装nginx 6.1 依赖库安装 要安装在root根目录里,不要装在虚拟环境里面 yum install gcc-c++ pcre pcre-devel zlib zlib-devel ope ...
- nginx域名转发 负载均衡 反向代理
公司有三台机器在机房,因为IP不够用,肯定要分出来,所以要建立单IP 多域名的反向代理, 就是当请求www.abc.com 跳转到本机, 请求www.bbc.com 跳转到192.168.0.35 机 ...
- nginx 负载均衡 反向代理
nginx 通过方向代理实现负载均衡,负载均衡是大流量网站要做的措施,单从字面上的意思来理解为N台服务器平均分担负载,不会因为某一台服务器负载高宕机而影响用户访问网站,负载均衡至少需要三台服务器, 既 ...
- Nginx负载均衡反向代理 后端Nginx获取客户端真实IP
Nginx 反向代理后,后端Nginx服务器无法正常获取客户端的真实IP nginx通过http_realip_module模块来实现的这需要重新编译,如果提前编译好了就无需重新编译了1,重新编译ng ...
随机推荐
- mysql-窗口多表连接视图view
create VIEW view_comment as (' as type FROM wei_comment_comment w) UNION ALL (' as type from review_ ...
- mybatis下报错:元素类型为 "mapper" 的内容必须匹配 "(cache-ref|cache|resultMap*|parameterMap
今天使用别人的代码报错,但是有时又不报错原来是配置文件的顺序要遵守 注意 "必须匹配" 四个字, 其意味着顺序很重要, 必须要一致, 试试将 resultMap 中各元素的顺序修改 ...
- dede的安装和配置
dede的cms通常是,dede作为后台,前台可以自己换一套模版(后台貌似也跟着换掉,或者不换) 安装时候会检查目录读写权限,以及数据库配置 安装后,还需要登录到后台: 配置网站根网址 清除缓存 数据 ...
- php发送http put/patch/delete请求
今天学RESTful API的编写,发现不知道怎么发送HTTP PUT/PATCH/DELETE请求,还是要学习一个. 使用curl_opt函数来发送各式各样的http请求动作,不仅限于get和pos ...
- Input path does not exist: file:/.......
注意看是file不存在并不是hdfs,好奇怪,突然明白应该是路径不对,必须加上hdfs://hostname:port/file. 我为什么饭这样的错误是因为前一阵谢了HDFS的曹组,谢了全局File ...
- CruiseControl.NET/CCNET安装包下载
链接:http://pan.baidu.com/s/1bHgeCI 密码:d7q1
- Android成长日记-五大布局
1. 五布局之线性布局LinearLayout 特点:它包含的子控件将以横向或竖向的方式排列 ps:android:gravity=”center|bottom”(gravity允许多级联用) Tip ...
- bzoj1535[POI2005]sza-template
此题解无病呻吟,啰里啰嗦,现已加入零分作文全家桶 这题......坑死我了...... 不妨记原串长为i的前缀为prefix(i),next[i]表示prefix(i)的最长公共前后缀长度(不等于pr ...
- JDBC连接简介
package jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; ...
- TypeScript 素描 - 泛型、枚举
/* 泛型,好处多多的功能.不过这里最基本的就不打算说了,仅准备说一些 和C#不同的地方 */ /* 泛型接口 GenericIdentityFn 定义了方法的描述等 identity方法则是它的实现 ...