巧用代理猎手揪出局域网中的二级代理

什么是二级代理?这里不想做概念上的解释。
 
在这里,内网根据IP范围分成两部分,一部分为可上网区,一部分为不可上网区,如果不可上网区的电脑通过可上网区的某台电脑的“中转”而上网,那么我们就可以说这台“中转”电脑就是(非法)二级代理(图1中的B)。二级代理是很令网管朋友们头痛的,因为通常情况下,通过二级代理上网并没有什么异常之处,所以要在网内查出二级代理也是有些难度,不过,俗话说得好,要想人不知,除非已莫为,通过一些方法,我们是可以揪出这些二级代理的。
二级代理实现的大致方法
知已知彼,百战不殆。要想找出二级代理,就得先看看它实现的大致原理和方法。图1中不可上网区的电脑C之所以要通过二级代理B进行上网,是因为它要向代理服务器A隐藏自己的IP,因为如果代理服务器A知道了源地址是C,那么它将拒绝C上网,所以二级代理的关键是第一要能隐藏源IP,二要能转发数据,从网络分层结构来说,在网络层,我们可以通过NAT来到达隐藏源IP和转发数据的要求,从应用层来说,常见的应用代理服务器(如CCproxy)也能实现我们的要求,只是NAT由于工作在网络层,它基本上适用于任何网络程序,而代理服务器工作在应用层,所以不同协议的网络程序需要不同的代理程序,比如IE需要HTTP代理,而wmv在线电影需要mms代理,不过现在流行的代理服务器都集成了很多种代理功能,比如CCproxy就有HTTP/FTP/RTSP/MMS/TELNET等多种代理功能,而NAT方法最大的缺点是它需要二级代理有两个网络连接,也就是需要两块网卡,这对那种“偷偷摸摸”的二级代理是不现实的,因为这很容易被发现,一般情况下也不容易实现,因为这需要一条多余的网线和多余的网络接口,所以这里将重点探讨应用代理服务器这种二级代理(以CCproxy为例)的查找。


巧用代理猎手发现内网的二级代理
CCproxy既然是服务器,那么它也就需要在某个或某些端口上进行监听,这样才能提供代理服务,由于CCproxy集成多种代理功能,所以它需要在多个端口上进行监听,基于此,我们可以通过扫描端口的方法来发现可疑机器,比如常见的HTTP代理端口是8080,如果扫描发现内网有机器正在监听8080端口,那这台机器就很可能是一台HTTP代理服务器了,但如果对方使用非常规的端口这种方法就不行了,所以通常的端口扫描并不实用,我们需要一种既能进行端口扫描又能进行端口验证的扫描程序,这样不管二级代理使用什么端口,都能被准确识别,微软的portqry可以识别一些特定的服务,但支持的数量有限,并且多与代理无关,这时我们可以使用常用的代理寻找工具,比如用“代理猎手”来完成这个工作(看来这个工具对网管也是很有用的,下面是大致使用步骤:
1.先进行一些必要配置。在网管机上运行代理猎手,选择菜单“系统”下的“参数设置”,在“搜索验证设置”*“搜索方法”下勾选上“启用先PING后连的机制”,这样可以避开扫描那些不在线IP的端口,从而提高扫描速度,然后切换到“验证数据设置”标签,点击下方的“添加”按钮,在新窗口的验证名中填入WEB,验证地址填入一个连接速度很快的WEB服务器地址,最好是内部的WEB服务器,在特征字串中填入上面WEB服务器首页源代码中包含的一个字串,比如<title></title>标签中的。
2.完成后在主窗口中进入“搜索任务”标签,添加一个任务,在“任务类型”选择“搜索网址范围”,然后在下一个窗口添加上要扫描的内网地址范围,我这里是192.168.0.1-192.168.0.254,在“端口和协议”窗口中添加端口范围0-65535(即全扫描),协议为HTTP/FTP/SOCKS,都设置为必搜。
这样将扫描内网每一台在线机器上的每一个端口,绝无漏网之鱼,完成之后点击上面的三角形按钮开始扫描,然后在右边的“搜索结果”栏里会有扫描结果,如果发现结果是“free”或“要密码”就表明这台机器是代理服务器。
其他方法
除了上面的端口扫描和端口验证的方法,还可以选用其他方法,比如:进行流量监控,但如果二级代理流量比较小,发现它也不容易。
在上级代理服务器(这里是代理服务器A)上的日志中寻找线索,这需要代理服务器日志本身支持记录一些特殊信息,比如如果上级代理服务器使用的是ISA,而客户端又是使用的防火墙客户端,那么在防火墙日志中就会有相关客户端运行的程序名,比如能够在日志搜索到CCproxy.exe字样。
防止被揪出的方法
我们就知道猎手对于server所发出的信息:
GET htttp://www. xxx.com 
HTTP/1.1 
Host: www. xxxx.com 
Accept: */* 
Pragma: no-cache 
User-Agent: ProxyHunter 1.0
也就是说,在发出了这样一个命令序列后,如果对方是proxy server 的话,猎手就会收www.xxx.com的首页,然后下来的应该是在 主页中搜寻预先定义在猎手中的KEYWORD,如果为真,则目标是代理服务器。于是我猜想如果直接的发KEYWORD给它,会不会通过它的检验了?答案是:ON!架上sniffer,上一个代理,然后再找一个有限制的,测试完后赶紧断开连接。下面是真代理服务器的log: 
HTTP/1.1 200 OK 
肯定它还检查了另外的特征串,但没有什么好的办法, 只好一个一个的试了。而在验证有限制或不能访问的代理是LOG如下: HTTP/1.1 404 ERROR进一步的研究表明,仅发出 "HTTP/1.1 404" 的字符串就可以欺骗从而通过验证,猎手显示“要密码。2.8版的猎手中还增加的对socks的验证,但结果同上。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值