现在,为了提高工作效率,许多单位想尽办法在内网禁止用户使用QQ、MSN、联众等聊天软件;同时,不甘寂寞的用户也想尽办法来进行应对这些措施。两相较量,到底鹿死谁手?对于QQ、MSN、联众等聊天和网游软件来说,虽然禁用和反禁用的原理大概相似,但从细节上讲,由于不同的即时通讯软件使用的协议不同,所以在具体操作上又有很大的不同。本文将细致的分析各种典型的登录方式及基本原理,并从禁用和反禁用的角度给出相应的解决措施。
| 本 文 主 要 内 容 |
一、来龙去脉:典型登录方式及原理分析 |
| 1、典型剖析:MSN登录实例 | |
| 2、HTTP协议、HTTP代理与Socks协议 | |
| 3、QQ登录分析 | |
| 二、反击:突破对QQ、MSN、联众的限制 | |
| 1、突破限制的一般方法 | |
| 2、如何在局域网内上联众 | |
| 3、另类突破方法 | |
| 三、防守:阻断QQ、MSN、联众的连接 | |
| 1、阻断QQ的连接 | |
| 2、阻断MSN的连接 | |
| 3、阻断联众及其他游戏服务器的连接 |
一、来龙去脉:典型登录方式及原理分析
1、典型剖析:MSN登录实例 返回目录...
一般来说,用户微机上的程序统称为MSN Messenger“客户端”,它通过Internet连接到一个MSN Messenger“服务器”。也就是说,客户端通过服务器与其他客户端交互信息。在大多数时间里,用户的客户端与服务器会话,然后由服务器来处理这些会话信息并通知其他人。了解之前,我们使用Sniffer NT来截获登录时的数据。如图1所示。

图 1
从截获的登录数据中,我们可以看到,在“数据”一栏中,有很多类似CVR、VER、USR等开头的数据,登录连接时还用到了TCP/1863和TCP/443这两个端口,它们记录了MSN Messenger登录的整个过程。在图中,我们看到了这样一条记录:“VER 145 MSNP11 MSNP10 CVR0”。
要回答这个问题,我们首先就要谈到MSN Messenger协议了。1999年,Microsoft向IETF(Internet Engineering Steering Group,国际互联网工程任务组,是世界上做互联网方面技术标准的组织)提交了一份“MSN Messenger Service 1.0 Protocol”草案,这是最初版本的MSN Messenger协议,不同的协议经常被写为“MSNP9”、“MSNP10”、“MSNP11”等。近几年中,MSN已经历经数次修订,目前MSN Messenger的协议已经到了第12版,简称MSNP12。现在,我们使用比较广泛的MSN7.0支持的协议是MSNP10和MSNP11,出于规范的需要,MSN Messenger用户必须升级到较高的版本,因为服务器对MSNP8以下的版本已经不再支持。这就是我们在刚才截获的数据中,为什么可以看到“MSNP11 MSNP10”的缘故了。
那么,CVR、VER、USR这些数据是什么意思呢?客户端与服务器间信息都是以命令格式传递的。命令被描述为三个字符、所有字母大写的命令代号。所有一般命令都有一个事务ID并且以新行结束。客户端发送的命令一般会使服务器响应一个及以上的命令。这些数据是MSN Messenger命令,它们使用了纯ASCII码,同时对非ASCII码字符使用URL编码。命令的语法如下:
| XXX [<SP> TrID <SP> PARAM1 <SP> PARAM2…] <CRLF> |
其中,
|
命令
|
来源
|
去向
|
说明
|
|
CHG
|
Client
|
NS
|
发出改变状态的请求。
|
|
NS
|
Client
|
返回改变状态的应答。
|
|
|
CHL
|
NS
|
Client
|
服务器发出验证要求。
|
|
SS
|
Client
|
||
|
CVR
|
Client
|
NS
|
发出客户端的OS、语言、MSN Messenger版本等信息。对于官方客户端来说,服务器会响应建议用户使用的客户端版本信息。
|
|
Client
|
SS
|
||
|
NS
|
Client
|
返回推荐的MSN Messenger版本、升级软件需要的下载地址等信息。
|
|
|
SS
|
Client
|
||
|
INF
|
Client
|
NS
|
询问服务器所支持的认证方式。
|
|
Client
|
SS
|
||
|
NS
|
Client
|
返回服务器所支持的认证方式。
|
|
|
SS
|
Client
|
||
|
MSG
|
Client
|
SS
|
发送消息到其他用户(聊天对象)。
|
|
NS
|
Client
|
传递服务器(系统)的消息到客户端。
|
|
|
SS
|
Client
|
传递其他用户(聊天对象)的消息到客户端。
|
|
|
SYN
|
Client
|
NS
|
客户端-服务器同步。
|
|
NS
|
Client
|
||
|
URL
|
Client
|
NS
|
发出获取MSN服务URL的请求。
|
|
NS
|
Client
|
返回获取URL请求的应答。
|
|
|
USR
|
All
|
All
|
声明、传递、鉴别用户身份。
|
|
VER
|
Client
|
DS
|
协商MSN Messenger协议版本。
|
|
Client
|
NS
|
||
|
DS
|
Client
|
||
|
NS
|
Client
|
||
|
XFR
|
DS
|
Client
|
向客户端分配NS(通知客户端转向连接指定的NS)。
|
|
Client
|
NS
|
发出分配SS的请求。
|
|
|
NS
|
Client
|
返回分配SS请求的应答。
|
这样,当我们看到“CVR 146 0x0804 winnt 5.0 i386 MSNMSGR 7.0.0777 msmsgs cndes2005@hotmail.com”时,就可以知道,现在客户端正发出OS、语言、MSN Messenger版本等信息。现在,聪明的读者可能会思考:在这些表中,我们看到了DS、NS、SS等代表来源和去向的服务器,他们又有什么特殊的意义呢?简单介绍如下:
派遣服务器(Dispatch Server,简称DS服务器)。这是客户端最初连接的服务器,负责给客户端分配合适的通知服务器。域名是messenger.hotmail.com,标准服务端口是1863。完成派遣任务后,切断TCP连接。
通知服务器(Notification Server,简称NS服务器)。通知服务器的目的主要就是保留用户的在线信息,还有其他用户所关心的重要人员的信息。包括登录、改变状态、获取用户列表、修改用户信息、发起聊天、接受呼叫、邮件通知、退出等等。通知服务器同样也提供其他通知服务,如hotmail的新邮件提示和创建或者加入会话等。服务端口由派遣服务器指定,通常也是1863。
接线服务器(Switchboard Server,简称SS服务器)。这里保存了各人员的即时会话信息,换句话说,每个MSN中的用户对应连接到一个共享交换板的会话中。因此,这里也可以看作客户端之间聊天使用的中转服务器。每开一个聊天窗口,客户端和服务器就建立一个TCP会话。当客户端之间需要进行文件传输或语音聊天时,发送系统消息,建立“点对点”会话通道(可能转为使用UDP),服务端口通常也是1863。“点对点”通信使用的端口由客户端自动协商决定,如文件传输通常使用6891端口。
整个登录过程可以划分为四个阶段,基本过程如图2所示。

图 2
知道了这些知识之后,我们开始考虑:登录过程中的顺序是如何规定的呢?过去的MSN Messenger版本(MSNP8以下),简单地使用MD5等Hash算法对用户身份进行认证,其安全性比较差。现在,MSNP10/MSNP11使用了一种TWN(Tweener)认证方式,通过SSL/TLS连接到login.passport.com和loginnet.passport.com等服务器,借助于HTTP协议输入账号和密码,认证通过后,才能取得“进场券”。打开数据记录,如图3所示,查看数据框中的第二行,我们可以看到命令“USR 147 TWN I cndes2005@hotmail.com”,这其中就使用了TWN认证方式,表示声明、传递、鉴别用户cndes2005@hotmail.com的身份。

图 3
了解了这样一个认证过程,现在我们将登录过程中的所有数据归纳如下,通过仔细的分析,来详细了解其登录步骤。整个过程的登录模式十分清晰,可以详细分析如下:
| 1) VER 145 MSNP11 MSNP10 CVR0 这时,客户端连接到DS服务器的TCP 1863端口,这个DS服务器的DNS名为Messenger.hotmail.com,这时,客户端就像一个要进场看电影的人拿出了门票:“我能支持MSNP10和MSNP11”。 2) CVR 146 0x0804 winnt 5.0 i386 MSNMSGR 7.0.0777 msmsgs cndes2005@hotmail.com 客户端与DS之间进行MSN协议的版本协商;客户端发送本地操作系统的一些系统信息给DS,客户端报告本机信息:OS=Windows 2000(NT 5.0),语言=简体中文,MSN Messenger版本= 7.0.0777,账号= cndes2005@hotmail.com。 3) USR 147 TWN I cndes2005@hotmail.com 使用TWN认证方式连接方式进行身份认证。 4) CVR 146 1.0.0000 1.0.0000 1.0.0000 http://msgr.dlservice.microsoft.com http://messenger.msn.com/cn 客户端初始化用户认证请求,但DS并不负责身份认证的相关事宜,于是它返回一个Notification Server(NS)服务器的地址给客户端。 5) XFR 147 NS 207.46.4.22:1863 0 65.54.239.20:1863 DS将主动断开与客户端的连接,也就是叫客户端去找NS进行身份认证,这个NS服务器的DNS名通常为*.msgr.hotmail.com的格式。 6) VER 148 MSNP11 MSNP10 CVR0 7) VER 148 MSNP11 MSNP10 CVR0 8) CVR 149 0x0804 winnt 5.0 i386 MSNMSGR 7.0.0777 msmsgs cndes2005@hotmail.com 9) USR 150 TWN I cndes2005@hotmail.com 10) VER 148 MSNP11 MSNP10 CVR0 11) CVR 149 0x0804 winnt 5.0 i386 MSNMSGR 7.0.0777 msmsgs cndes2005@hotmail.com 12) USR 150 TWN I cndes2005@hotmail.com 客户端连接到上面得到的NS的TCP 1863端口,由于DS与NS之间没有连接,所以客户端又需要再次向NS提供上面类似的操作。 13) USR 150 TWN S lc=1033,id=507,tw=40,fs=1,ru=http%3A%2F%2Fmessenger%2Emsn%2Ecom,ct=1124521006,kpp=1,kv=7,ver=2.1.6000.1,rn=qp5CBKD1, tpf=8f62bda812c23d7b255e3771183d0a4c 客户端向NS服务器初始化认证请求,NS返回一串用于下面Passport认证的字符串。 14) CVR 149 1.0.0000 1.0.0000 1.0.0000 http://msgr.dlservice.microsoft.com http://messenger.msn.com/cn 15) USR 150 TWN S lc=1033,id=507,tw=40,fs=1,ru=http%3A%2F%2Fmessenger%2Emsn%2Ecom,ct=1124521006,kpp=1,kv=7,ver=2.1.6000.1,rn=qp5CBKD1, tpf=8f62bda812c23d7b255e3771183d0a4c 客户端用户向微软的Passport服务进行身份认证,认证成功后客户端将得到一个“凭证”。 16) USR 151 TWN S t=7r4WmwwzVEcP3KX880SWs6NeTyAbN2YNtf4TZaZlG6nLJXdrc5Q0ENfGta1FIE90rjih!2A6fs8b*65tgxM2it!hpD3tpsFZwwkb2lZRW2hiT2W487uofkzA$$ &p=7aLUOjOhqG1zU7Bps!PPAuw0ZtUQcGepxzctmA9uPJVjybtk1!EBAxE7SARl!*3*uO7E9pmmzjXvgKlWGqCmo5Xk83jhgZdxOtU7aknFGrO3A6l2L07XQOe RosMCL07AE0KNrM1M! 8xyJVQudc*zhEizgfi8N7Q4SCTpauxJbJOHco77thHX8IIYiWhIjO9*r58ljTNWLiTK0$ 客户端将上面获得的“凭证”给NS看,也就是检查“进场券”。 17) USR 151 OK cndes2005@hotmail.com 1 0 |
检查完毕,身份属实,所以NS服务器就说OK,于是用户成功登录进NS。登录后,我们还可以了解在线用户的一些信息。如图4所示,可以知道有一个MSN用户在线。

图 4
2、HTTP协议、HTTP代理与Socks协议
首先来看看HTTP协议登录。可能有人会问:客户端协议是唯一的登录方式吗?其实,当MSN客户端不能以MSN协议进行登录时,它会尝试用HTTP协议方式进行登录。在这种情况下,客户端使用POST命令提交请求,服务器会做出相应的应答。如图5所示,客户端发出了初始请求数据包,直接对象是HTTP方式下的DS服务器Gateway.messenger.hotmail.com,这台服务器实际上与Messenger.hotmail.com是同一台服务器。

图 5
其次,我们来看看HTTP代理。这种方式就更加常见了,它通常绑定在代理服务器的80、3128、8080等端口上。如果局域网内的上网代理服务器本身就支持HTTP代理,只要在MSN中配置使用HTTP代理,就会登录成功;但如果禁止了访问DS服务器,那么登录就不会成功,因为HTTP代理服务也会去连接DS,所以就会被防火墙禁止。如果MSN使用的HTTP代理不是来自内网而是来自外网,那又该怎么办呢?通常来说,HTTP代理服务端口是TCP 8080/80等,对于非80端口,我们可以采取禁用相应端口的办法,比如禁止对TCP 8080的访问,但对TCP80就不行了,毕竟我们不可能把它禁止,除非内网不需要上网。那么,怎么来对付这种使用80端口的代理呢?一个比较好的方法就是采用HTTP应用层过滤,现在大多数的企业级防火墙都支持这种过滤检查,它的原理就是对应用层数据进行检查以发现其中是否包含某些特征字符串,并采取相应的动作。
再就是Socks代理了。顾名思义,Socks代理就是采用了Socks协议的代理服务器,Socks是个电路级的底层网关,是DavidKoblas在1990年开发的,此后就一直作为Internet RFC标准的开放标准。与HTTP代理不同,Socks代理只是简单地传递数据包,而不必关心是何种应用协议(比如FTP、HTTP和NNTP请求)。所以,Socks代理比其他应用层代理要快得多。它通常绑定在代理服务器的1080端口上。打开IE浏览器“工具”菜单下的“Internet选项”,在弹出的窗口中单击“连接”选项卡,再选择“局域网设置”按钮。这时,窗口下方会出现一个关于代理服务器的设置,选中“为LAN使用代理服务器”,单击右边的“高级”按钮,就可以看到关于代理服务器协议类型的设置,其中就包括Socks协议。如图6所示。

图 6
在企业网或校园网上,如果用户需要透过防火墙或通过代理服务器访问Internet,就可能需要使用SOCKS代理。注意,浏览网页时常用的代理服务器通常是专门的http代理,它和SOCKS是不同的。因此,能浏览网页不等于一定可以通过SOCKS访问Internet。在实际应用中SOCKS代理可以用作为:电子邮件、新闻组软件、网络传呼ICQ、网络聊天MIRC和各种游戏应用软件当中。如果客户端使用外网的代理,只有封住一些常用的代理端口,比如TCP1080/1813/3128等,但对于这些端口之外的就不好办了,在这里也只有再一次提醒大家使用“允许需要的,拒绝所有的”的原则创建防火墙规则。
现在比较有名的有“通通通”软件了,这是一款提供socks服务的代理软件,其最新版本是“通通通2006”,软件下载地址为http://www.tongtongtong.com。软件安装完毕,还要对软件进行相关设置。首先登录http://www.tongtongtong.com网站并注册为会员,然后到注册时所用的邮箱激活用户名。第一次启动服务之前,必须先进行设置。点击“设置”按钮,进入登录信息页面。如图7所示。

图 7
在“通通通服务器”中,选择“从列表中选择”,再从列表框中请根据您是免费用户还是付费用户来选择相应的服务器。注意,免费用户一般选择“公共服务器”,付费用户根据个人网络情况选择:电信服务器或网通服务器或动态中转服务器。在“登录信息框”这一栏中对应的输入登录名和登录密码,也就是在其网站注册的用户名和密码。如图8所示。

图 8
另外,如果使用IE浏览网页时需要用户名和密码,那么还需要在“代理服务器需要验证”前打勾,然后填入用户名和密码。按照以上步骤设置好后,点击“确定”,就会回到“通通通2006”的主界面,然后点击“启动服务”按钮,等主界面左下角的红灯变绿,就说明“通通通2006”启动成功了。启动成功后,屏幕右下角任务栏中的图标也会变成绿灯。如图9所示。

图 9
如果登录不上,可以先点击“获取最新列表”按钮,这样可以获取到最新的服务器列表,从而达到比较好的速度。这样,一个绿色通道就此打造成功,关于如何利用此软件突破网络封锁,我们还将在下面进行比较详细的描述。
3、QQ登录分析 返回目录...
了解了上面的知识,我们再来看腾讯QQ登录时的网络设置就不会感到陌生了。如图10所示。这里有SOCKS5代理、HTTP代理、使用浏览器设置等多种类型供用户选择,找到合适的服务器地址和用户密码后,用户就可以快速方便的连接到服务器了。同时,还要考虑需要登录服务器的类型以达到更好的效果。

图 10
现在,假设网络出现故障,我们使用QQ进行登录,系统肯定会出现登录失败的提示,如图11所示。

图 11
单击“详细信息”按钮,我们就可以看到十分详细的登录过程,摘要如下:
| 1) 【QQ 版本】Build 13.81.8228 2) 【QQ 号码】527454452 3) 【操作系统】Microsoft Windows 2000 Service Pack 4 [Build 5.0.2195] 4) 【网络设置】局域网内使用透明代理 5) 【登录过程】 6) 开始登录......时间[2005-08-22 00:45:13] 7) 初始化登录服务器列表,上次的登录方式为【UDP登录方式】 8) 尝试UDP方式登录,先创建UDP网络组件 9) 创建UDP网络组件成功,本地IP【192.168.10.123】,端口【4000】,直接登录上一次登录过的服务器, 10) 确定登录UDP服务器IP【219.133.48.75】,端口【8000】 11) 向登录服务器发送登录第一步骤数据 12) 登录第一步骤超时 13) 尝试UDP方式登录,先创建UDP网络组件 14) 创建UDP网络组件成功,本地IP【192.168.10.123】,端口【4001】,直接登录上一次登录过的服务器, 15) 确定登录UDP服务器IP【sz2.tencent.com】,端口【8000】 16) 向登录服务器发送登录第一步骤数据 17) 登录第一步骤超时 18) 尝试UDP方式登录,先创建UDP网络组件 19) 创建UDP网络组件成功,本地IP【192.168.10.123】,端口【4000】,直接登录上一次登录过的服务器, 20) 确定登录UDP服务器IP【sz5.tencent.com】,端口【8000】 21) 向登录服务器发送登录第一步骤数据 22) 登录第一步骤超时 23) UDP登录服务器全部尝试失败,尝试下一种登录方式 24) 尝试TCP方式登录,准备连接TCP服务器IP【TCPconn4.tencent.com】,端口【80】,先进行域名解析 25) TCP登录服务器【TCPconn4.tencent.com】域名解析不成功,无法连接该服务器 26) 尝试TCP方式登录,准备连接TCP服务器IP【TCPconn4.tencent.com】,端口【443】,先进行域名解析 27) TCP登录服务器【TCPconn4.tencent.com】域名解析不成功,无法连接该服务器 28) 尝试TCP方式登录,准备连接TCP服务器IP【TCPconn.tencent.com】,端口【80】,先进行域名解析 29) TCP登录服务器【TCPconn.tencent.com】域名解析不成功,无法连接该服务器 30) 尝试TCP方式登录,准备连接TCP服务器IP【TCPconn.tencent.com】,端口【443】,先进行域名解析 31) TCP登录服务器【TCPconn.tencent.com】域名解析不成功,无法连接该服务器 32) 尝试TCP方式登录,准备连接TCP服务器IP【TCPconn3.tencent.com】,端口【80】,先进行域名解析 33) TCP登录服务器【TCPconn3.tencent.com】域名解析不成功,无法连接该服务器 34) 尝试TCP方式登录,准备连接TCP服务器IP【TCPconn3.tencent.com】,端口【443】,先进行域名解析 35) TCP登录服务器【TCPconn3.tencent.com】域名解析不成功,无法连接该服务器 36) TCP登录服务器全部尝试失败 37) 最终登录失败,时间:2005-08-22 00:46:28 |
二、进攻:突破对QQ、MSN、联众的限制
在内部网中,如果用户不能玩某些游戏、不能上一些网站等等,他们就会通过各种方法来突破限制。
1、突破限制的一般方法 返回目录...
根据不同的情况,简单分类分析如下。
第1种现象:用户不能使用QQ等工具进行聊天;不能访问某些网站;不能玩某些网络游戏(如联众)。
出现这种现象的主要原因是限制了欲访问的IP地址。对于这类限制很容易突破,用普通的HTTP代理就可以了,或者SOCKS代理也是可以的。现在网上找HTTP代理还是很容易的,一抓一大把,在IE里加了HTTP代理就可以轻松访问目的网站了。“QQ代理公布器 V2005”是一款不错的突破软件,软件下载地址为http://www.cz88.net/fox。它的使用方法很简单,只需按“读取数据”这个按钮就可以找到很多的代理。软件是从网站上的数据库随机读取QQ代理(SOCK5代理)的数据,这样可以避免太多人同时使用同一代理。然后测试端口能否连接和其连接速度,连接速度越短越好,这样才能保证QQ的正常使用。如果顺利登录上去,就说明这个代理是成功的。同时,真实的IP地址被隐藏起来,所显示的仅仅是这个代理罢了!软件界面如图12所示。

图 12
第2种现象:上网冲浪的过程中,我们经常碰到类似的情况:处于单位网络安全的考虑,管理员会限制某些网络协议,这样,导致用户不能使用FTP等资源;再比如,管理员限制了一些网络游戏的服务器端IP地址,而这些游戏又不支持普通HTTP代理,让那些爱好游戏的用户一筹莫展!可见,在很多场合,网管通常都会封杀80以外的服务端口,这样就会导致用户只能使用WWW等浏览服务。另外,现在有很多聊天软件如ICQ、IRC和OICQ等,只提供SOCKS Proxy的功能,即使用户有个免费的HTTP Proxy也不能让这些聊天程序通过代理来连接服务器。那么,能否让HTTP Proxy变成SOCKS Proxy呢?其实,只要防火墙开放80端口,我们可以配合使用SOCKS2HTTP、SOCKSCAP32这两个软件,就可以完全绕过防火墙了。需要注意的是,网络必需能正常连接到www.totalrc.net、端口为80这个网关地址。
第1步:找一个可靠的HTTP Proxy地址。还是使用“QQ代理公布器 V2005”,代理类型选择“HTTP”,软件界面如图13所示。

图 13
第2步:下载运行Socks2http软件。软件下载地址为http://www.totalrc.net/s2h/index.jsp。它能将基于Socks协议的请求转换为HTTP协议的请求,并通过指定的HTTP代理服务器处理这些请求。首先需要指定一个HTTP代理的具体参数。选中“Use http proxy server”,在Name/IPAddress栏填入HTTP Proxy的域名或IP地址,在Port栏填入HTTP Proxy的端口。本例中我们选择一个免费代理服务器,地址为218.189.229.234:8080。如果要更改配置,则在工具栏中右键单击socks2http的图标,选择Configuration,其它与上相同。如图14所示。

图 14
第3步:配置Socks2http软件。单击“Gateway Configuration”选项卡,因为我们使用的是免费代理,所以要选中“This is Personal Gateway”,代表这是一个个人服务器。否则,就会出现错误提示。如图15所示。

图 15
第4步:测试SOCKS服务器。另外,单击“Security”选项卡,可以看到SOCKS Proxy实现的端口,默认为1080。要检测你的SOCKS2HTTP是否成功配置好并可以使用了,可以尝试远程登陆到本机的1080端口。如果可以登陆上,则表示HTTP Proxy已成功地转换为了SOCKS Proxy。可单击“开始”,选择“运行”,输入“telnet localhost 1080”来远程登陆到本机的1080号端口。现在,该程序就将所设置的HTTP Proxy变成了本地的SOCKS v.5 Proxy。可以以localhost:1080或127.0.0.1:1080的形式来使用了。
第5步:下载并安装Sockscap32软件。软件下载地址为http://www.socks.nec.com。SocksCap32 软件是由美国 NEC USA, Inc.公司出品的代理服务器第三方支持软件,它拥有功能强大的SOCKS 调度,通过它几乎可以让所有基于 TCP/IP 协议的软件如ICQ、OICQ、MSN、MUD、FTP、IE、NEWS等,都能通过 Socks 代理服务器连接到外部网络,甚至代理猎手还可以通过它去搜索代理服务器。
第6步:配置通过本机127.0.0.1端口1080的SOCKS5代理连接网络。选择“文件”菜单下的“设定”,在SOCKS服务器中填入127.0.0.1,Port中填入1080,在协议中选择SOCKS版本5,域名解析中选择“先尝试由本地端再由远端解析”,然后“确定”。如图16所示。

图 16
第7步:单击SocksCap32面板中的“新建”按钮,点击“浏览”,选择需要经过SocksCap32代理的应用软件和工作目录路径。或者直接将要运行软件拖入窗口中的空白处,在弹出的窗口中选择“新建应用程序标识项”,设置完毕,点击“确定”。如图17所示。

图 17
第8步:现在只需双击SocksCap控制台界面里的图标就可以了通过HTTP代理玩OICQ了。注意:在SOCKSCAP中运行的ICQ等软件不需再对代理做特别配置,在使用过程中,不可以关闭sockscap32,否则已在其上运行的程序就不能正常继续运行。另外,也可以直接在OICQ中进行设置。如QQ2005中,进入“系统设置”界面,选中“代理设置”选项,在该界面中选中“使用自定义的网络设置”并选择“SOCKET5代理服务器”,在防火墙地址栏填入localhost,在端口栏填入1080。重新登陆后,现在OICQ就是通过代理上线了!如图18所示。如果需要测试此服务器是否正常,可以单击“测试”按钮进行测试。ICQ、MSN等其他聊天工具或浏览器的设置与之类似,用户可以多多体会。

图 18
对于上述问题,另外一种方法是用FLAT软件,配合SocksCap32,不过所做的FLAT代理最好也是80端口,当然不是80端口也没关系,因为FLAT还支持再通过普通的HTTP代理访问,不是80端口,就需要再加一个80端口的HTTP 代理。这类突破办法中间走的代理加密,网管不知道中间所走的数据是什么。代理跳板也可以做到,不过代理仍然要80端口的。对于单纯是80端口限制,还可以用一些端口转换的技术突破限制。 第5种现象:以上一些限制综合的,比如有限制IP的,也有限制关键字,比如封MSN, 还有限制端口的情况。
一般用第四种现象的第二个办法就可以完全突破限制。只要还允许上网,呵呵,所有的限制都可以突破。
2、如何在局域网内上联众
联众是一个网络游戏平台,你可以在那里和其他玩家一起打牌、下棋、对战,体会在游戏中“与人斗,其乐无穷”的感觉。可是局域网内的用户由于网络条件的限制不能直接上联众。怎么办呢?“通通通2006”可以帮助您解决这个问题。在联众游戏中进行一些设置,点击联众图标,出现下面的界面。点击“设置代理服务器”按钮,出现下面这个界面。如图19所示。

图 19
选中“使用代理服务器上网”,在地址框中输入“127.0.0.1”,在端口框中输入“1080”,选择“使用socks5协议”。如图20所示。这样,所有的设置都完成了,然后就可以去玩游戏了。

图 20
3、另类突破方法
现实生活中,可能会出现如下现象:用户根本不能上网,管理员没有给用户上网权限或者上网IP,或者做IP与MAC地址绑定了。怎么办?可以通过下面的小技巧实施突破:
走后门。和网络管理员搞好关系,一切都能搞定,网络管理员什么权限都有,可以单独给你的IP开无任何限制的,前提是不要给网络管理员带来麻烦,不要影响局域网的正常运转。这应该有点社会工程学的味道了,关键在于怎么利用这些人际资源了。 2、隐通道技术。隐通道技术就是借助一些软件,可以把防火墙不允许的协议封装在已被授权的可行协议内,从而通过防火墙,端口转换技术也是把不允许的端口转换成允许通过的端口,从而突破防火墙的限制。
HTTPTunnel就可以完成这个任务,它的原理是将数据伪装成HTTP的数据形式来穿过防火墙,即在防火墙两边都设立一个转换程序,将原来需要发送或接受的数据包封装成HTTP请求的格式骗过防火墙,所以它不需要别的代理服务器而直接穿透防火墙。HTTPTunnel刚开始时只有Unix版本,现在已经有人把它移植到Window平台上了,它包括htc和hts两个程序,其中htc是客户端,而hts是服务器端。
比如开了FTP的机器的IP是192.168.10.10,本地的机器的IP是192.168.10.123,现在我本地因为防火墙的原因无法连接到 FTP上,现在用HTTPTunnel的过程如下:
启动HTTPTunnel客户端。启动MS-DOS的命令行方式,然后执行“htc -F 8888 192.168.10.10:80”命令,其中htc是客户端程序,-f参数表示将来自192.168.10.10:80的数据全部转发到本机的8888端口,这个端口可以随便选,只要本机没有占用就可以。用Netstat查看本机开放的端口,发现8888端口已在侦听。
在对方机器启动HTTPTunnel服务器端,并执行 “hts -f localhost:21 80”命令,意思是说把本机21端口发出去的数据全部通过80端口中转一下,并且开放80端口作为侦听端口,再用Netstat查看服务器,会发现80端口处于侦听状态。
在本机使用FTP连接本机8888端口,现在可以连上服务器了。
三、防守:阻断QQ、MSN、联众的连接
下面,我们根据QQ、MSN、联众等服务器的不同特点,从单位用户的角度来考虑如何阻断这些连接。
1、阻断QQ的连接
局域网中禁止QQ的问题比较烦琐,传统的解决方法是通过对QQ的端口和服务器地址进行封堵。在阻断8000端口的连接后,发现QQ还会通过UDP的8001和TCP的8000、8001端口进行连接。鉴于这些端口目前只有QQ使用,所以可以基于端口来做阻断规则。在用防火墙阻断以上端口的数据包后,发现QQ还会通过TCP的80和443端口进行连接。如果针对这两个端口作阻断规则,会影响用户的正常上网,所以只能对服务器的IP地址来做规则。在针对IP作阻断规则后,QQ已基本无法登录。仔细检查后可以发现,QQ安装目录下的Config.db文件记录了QQ服务器的地址。因此,在用防火墙阻止用户使用QQ上网时,除了阻止TCP和UDP的8000、8001端口外,还需阻断与QQ服务器的连接。
实际应用中,由于新版QQ可以采用TCP的80端口和加密代理、HTTP代理等方式进行登录,所以采用传统的方式对局域网内的QQ进行封堵的方法很难达到交果。虽然以上方法可以起到阻断QQ连接的作用,但如果腾讯增加新的QQ服务器,QQ也还是可以登录的。另外,用第三方的代理软件如NEC E-BORDER等,支持Anonymous的Socks5代理还是可能绕过去,登录使用QQ。
2、阻断MSN的连接
阻断MSN连接最简单高效的方法就是直接禁止对Messenger.hotmail.com等服务器的访问,当然还可以禁止对*.msgr.hotmail.com域名集的访问。但不建议禁止对*.Passport.com的访问,因为登录Hotmail.com邮箱等其它的Passport验证服务还需要使用它。另外,MSN的连接在除使用常规的1863端口外,还会使用7001和80端口,因为这两个端口涉及到其他网络服务的应用,所以也只能采用阻断QQ连接的方法,通过阻断与MSN服务器的连接,来达到用户要求。要禁用MSN,可以采用下面的方法:
·首先是尽量采取“允许需要的,拒绝所有(其它)的”的原则创建防火墙规则;
·拒绝对IP 207.46.104.20的访问;
·拒绝对TCP 1863的访问;
·对HTTP进行应用层检查,阻止包含Gateway.messenger.hotmail.com的连接;
·拒绝对常用代理端口的访问,比如TCP 8080/1080/3128;
·关注常见的HTTP隧道登录,枪打出头鸟,随时拒绝这类服务的登录服务器。
·同样,如果微软添加新的MSN服务器或者用户使用代理,还是可以登录MSN。
3、阻断联众及其他游戏服务器的连接
阻断联众的连接相对来说比较容易,在客户端连接服务器时,首先会与服务器的2000端口建立连接(61.55.138.219:2000)。在连接建立后,会用到服务器的1007、2001、2002、3015端口。在试验中,只阻断了2000端口的数据包,客户端就已经无法连接服务器了。此外,还有不少其他的游戏服务器,如可乐吧客户端在连接服务器时,首先要打开可乐吧的主页(www.kele8.com),再通过主页进入游戏大厅。针对这种情况,只要定义一个URL规则,过滤地址为“*kele8*”即可。
防守和反击永远是一个此增彼长的过程,关键在于管理员或者用户实施有的放矢的操作,相对来说,把握主动权的使用者应该就是笑到最后的胜利者了。






