反向连接型远程控制系统研究及防范

时间:2022-07-31 09:31:07

反向连接型远程控制系统研究及防范

摘要:在计算机网络安全中,远程控制是永恒的话题,文章通过分析传统远程控制工作原理及防火墙基本工作原理,阐述了反向连接技术在远程控制系统应用的重要性。最后对加入反向连接技术的远程控制攻击提出了几点防御措施。

关键词:远程控制;反向连接;防火墙;防范措施

中图分类号:TP393 文献标识码:A文章编号:1009-3044(2009)35-9925-02

Research on Reverse Link Type Remote Control System and Prevention

LU Lei-ji1, FANG Zhi1, ZHAO Wei2

(1.The Basis of the Department of Computing in the Artillery Academy, Hefei 230031, China; 2.3.Anhui Medical University Student Affairs Office, Hefei 230031, China)

Abstract: Remote control is the eternal topic In computer network security,By analyzing the working principle of a traditional remote control and the basic working principle of a firewall,Describes the reverse connection technology in the realization of the importance of remote control,Concludes with a reverse-connection technology for adding remote control attacks a few preventive measures.

Key words: remote control; reverse connection; firewalls; precautionary measures

在网络这个不断更新换代的世界里,网络中的安全漏洞无处不在。即便旧的安全漏洞补上了,新的安全漏洞又将不断涌现。远程控制正是利用这些存在的漏洞和安全缺陷对系统和资源进行控制,但随着防火墙技术和反木马技术的不断发展,传统远程控制已经慢慢失去了效应,而加入反向连接技术的新型远程控制又给我们带来新的挑战,我们需要加以认真研究,以便有的放矢做好防范。

1 传统远程控制技术的工作原理

远程控制系统有两部分组成,一部分是控制端程序,即控制在控制者手中的程序,控制者通过它获取远程计算机的数据并通过它控制远程计算机。另一部分是受控端程序,一旦在目标计算机执行后就会打开特定的网络端口等待远程控制计算机的连接。传统远程控制系统都是由控制端计算机主动向目标计算机发起连接。其基本工作原理图如图1所示。

用控制端程序去连接被控计算机特定端口,进行登录,发出控制命令等,进而取得对被控计算机的控制权限,可以任意查看或删改被控计算机文件,操作被控计算机注册表,获取被控计算机的系统信息,窃取口令等,就如同访问自己计算机一样方便。

传统远程控制软件控制端程序实现如下(Contrl_Client为Winsock控件):

Contrl_Client.RemoteHost=RemoteIP(设远端地址为被控计算机IP地址)

Contrl_Client.RemotePort=31339(设远程端口为被控端程序起动的特定端口)

Contrl_Client.Connect(主动连接被控端计算机)

一旦被控端计算机收到主控端的连接请求ConnectionRequest,就能实现连接。

2 防火墙基本原理

在网络安全防护中,防火墙一般作为首要防护措施。由于防火墙安全规则(一切未被允许的都是禁止的,一切未被禁止的都是允许的)的限制,一般情况下是很难穿透的,因此,在一定意义上保护了内网的安全。

当计算机装了防火墙后,在外网和内网之间就多了一层屏障,防火墙是通过一个访问控制表来监测、限制、修改跨越防火墙的数据流的,对外屏蔽网络内部的结构、信息和运行情况。其形式一般是一连串的如下规则:1)ACCEPT FROM +源地址;端口TO+目的地址,端口+采取行动;2)DENY――(拒绝);3)NAT――(地址转换)。

3 反向连接技术

传统远程控制系统,要实现远程控制功能,必须由控制端主动向被控端发起连接,一般的防火墙都限制外部对内部的连接,传统的远程控制都是控制端向装有防火墙的内部计算机发起主动连接,很容易被防火墙拦截,因此传统的远程控制就很难工作起来。然而大部分防火墙防外不防内,利用这一漏洞可以在远程控制中融入反向连接技术,反向连接是从防火墙内部网络向外部网络发起连接,这样就可以绕开防火墙的拦截实施远程控制。

加入反向连接的被控端用VB实现如下(Contrl_Server是为Winsock控件):

Contrl_Server.RemoteHost=RemoteIP(设远端地址为控制端IP地址)

Contrl_Server.RemotePort=RemotePort(被控端为控制端启用的特定端口,如80、21端口等)

Contrl_Server.Connect(连接控制端计算机)

与传统远程控制软件相反,反向连接型软件的被控端会主动连接控制端。被控端的监听端口一般开为80(HTTP即用于网页浏览的端口)或21(FTP端口)从内网向外网发起连接。反向连接型远程控制软件的优点如下:

1) 控制端和被控端的通信能够穿透被控端主机防火墙。

2) 被控端不再等待主控端的连接请求,而主动向控制端发起连接,从而不易被端口扫描工具发现。

3) 即使被控端计算机是在单位内部通过上网,也能和控制端进行通信。

反向连接型软件的连接方法包括两种:半反向连接和全反向连接。

3.1 半反向连接

当一个反向连接型远程控制软件的控制端想和被控端建立连接时,它必须通过第三方计算机给被控端发送一个命令。第三方计算机收到命令后将通过一个特殊的数据端口向控制端发起连接请求。同时,控制端将会在这个端口进行侦听。当连接请求通过后,这样连接通道就建立起来。半反向连接步骤如图2所示。

1) 控制端连接第三方计算机,向其发送指令。

2) 被控端连接第三方计算机后,将会收到指令

3) 被控端解析指令后,将会主动连接控制端,并向控制端传送执行结果。

3.2 全反向连接

当控制端想对被控端进行操作时,首先向第三方计算机发送一条指令,当被控端从第三方计算机上取得指令后,将在本机上执行指令,然后将执行结果传回给第三方计算机。最后控制端再从第三方计算机取得执行结果。全反向连接步骤如图3所示。

1) 控制端连接第三方计算机,向其发送指令。

2) 被控端主动连接第三方计算机后,将会收到指令,解析指令后并在被控端执行,并将执行结果传给第三方计算机。

3) 第三方计算机将被控端传来的执行结果传给控制端。

3.3 半反向连接与全反向连接的比较

两者都是借助于第三方计算机实现由被控端向控制端发起的连接,但传送执行结果上有所不同,半反向连接是被控端直接将结果传送给主控端,而全反向连接则是通过第三方计算机将结果传送给主控端,控制端和被控端没有任何直接的通信连接,所以在隐蔽型上全反向连接优于半反向连接。 但在实际运用过程中因为半反向连接是直接连接控制端所以更具优势。因此,全反向连接一般用作远程文件操作。而半反向连接在远程控制中用的比较多。

4 反向连接型远程控制防范措施

4.1 安装杀毒软件

反向连接型远程控制系统不仅能危害公网中的计算机也可以穿透局域网或网络,所以不管是在局域网内部还是处于互联网中的计算机必须安装杀毒软件,并及时升级杀毒软件及病毒库,还要及时给系统打补丁。

4.2 经常监测

关掉所有的网络连接程序(如:Http超文本传输协议用于网络浏览、FTP服务器等),进入命令行状态用netstat-a命令,此命令的功能是显示网络连接、路由表和网络接口信息,可以让用户得知目前都有哪些网络连接正在进行。

4.3 关闭不用的端口

Windows有很多端口是开放的,实际使用过程中很多端口是不用的,这就给网络中的木马、病毒留下了可趁之机,为了安全起见,建议将一些不用的端口关闭,值得注意的是现在的反向连接型远程控制系统通常结合一些隧道技术,通过一些合法的端口如80或21端口传送数据,不仔细很难被发现。所以这给我们判断带来了难度。

4.4 使用反木马软件

对于初学者使用这种方法是最直接最有效的方法,借助网络这个庞大的资源库,使用专门的反木马软件并及时升级软件和病毒库。能够对网络非法控制起到很好的防护措施。

4.5 在Vista中利用防火墙防护

在Win XP自带的防火墙和ADSL猫的NAT方式,只能防外不防内,所以必须使用第三方防火墙。但在Vista系统中就可以有效的对反向连接型远程控制系统进行防护,具体操作如下。

打开Vista高级防火墙设置界面,在左侧边栏选取“出站规则”项,在中间的窗口列表中就可以看见出站网络连接规则。点击右侧“新规则”按钮,点击“下一步”按钮,程序设置界面勾选“所有程序”项,对所有出站程序进行控制;点击“下一步”按钮,设置操作为“禁止”;点击“下一步”按钮,勾选应用该规则为“域”、“专用”和“公用”;再点击“下一步”按钮,输入出站规则名称,这里为“禁止所有出站连接”。最后确定即完成了新规则的建立,返回规则列表,启用规则就可以过滤掉所有出站的连接,禁止了反向连接型远程控制程序的执行。

5 结束语

通过传统远程控制和加入反向连接的新型远程控制的比较,可以很清楚的发现二者的区别,在传统远程控制中有主控端发起连接,这样很容易被防火墙、杀毒软件拦截,失去作用。而加入反向连接的新型远程控制软件是由被控端主动向主控端发起连接,可以绕过防火墙、杀毒软件的拦截和查杀,所以加入反向连接的远程控制系统更具生命力。

参考文献:

[1] 何牧泓.轻松玩转远程控制[M].重庆:重庆出版社,2002.

[2] 常永昌.一种远程控制系统的设计与实现[J].计算机应用,2003(3):127-131.

[3] 魏里,郑光远.反弹端口技术木马[J].河南职工医学院学报,2003(3):84-86.

[4] 阮宁君.端口反弹型木马通信技术研究及防范措施[J].学术研究,2007:99-101.

[5] 李波.新型反弹端口木马―“广外男生”探析[J].长沙电力学院学报,2005(1):52-58.

[6] 杨继张.VB网络与远程控制编程实例教程[M].北京:希望电子出版社,2002.

上一篇:基于小波变换的图像融合方法研究 下一篇:嵌入式VxWorks的多串口共享中断的驱动程序设计