计算机木马程序及其防范探究
2009-08-04石经
石 经
中图分类号:TP309.5文献标识码:A文章编号:1673-0992(2009)05-042-02
摘要网络入侵工具如蠕虫、木马等不断涌现,其功能上相互吸收和借鉴,攻击方式和手段也层出不穷,促使计算机安全也向着不断细化的方向发展,其中木马(Trojan Horse)攻击以其攻击范围广、隐蔽性、危害大等特点成为常见的网络攻击技术之一,对网络安全造成了极大的威胁。
关键词:计算机;木马程序;防范
由于计算机系统和信息网络系统本身固有的脆弱性,越来越多的网络安全问题开始困扰着我们,特别是在此基础上发展起来的计算机病毒、计算机木马等非法程序,利用网络技术窃取他人信息和成果,造成现实社会与网络空间秩序的严重混乱。
一、木马程序概述
1.木马的定义
木马的全称是“特洛伊木马”(Trojan Norse),来自古希腊神话,传说古希腊士兵就是藏在木马内进入从而占领特洛伊城的。木马是隐藏在合法程序中的未授权程序,这个隐藏的程序完成用户不知道的功能。当合法的程序被植入了非授权代码后就认为是木马。木马是一个用以远程控制的c/s程序,其目的是不需要管理员的准许就可获得系统使用权。木马种类很多,但它的基本构成却是一样的,由服务器程序和控制器程序两部分组成。它表面上能提供一些有用的,或是仅仅令人感兴趣的功能,但在内部还有不为人所知的其他功能,如拷贝文件或窃取你的密码等。严格意义上来说,木马不能算是一种病毒,但它又和病毒一样,具有隐蔽性、非授权性以及危害性等特点,因此也有不少人称木马为黑客病毒。
2.木马的分类
木马的种类很多,主要有以下几种:其一,远程控制型,如BO和冰河。远程控制型木马是现今最广泛的特洛伊木马,这种木马起着远程监控的功能,使用简单,只要被控制主机联入网络,并与控制端客户程序建立网络连接,控制者就能任意访问被控制的计算机。其二,键盘记录型。键盘记录型木马非常简单,它们只做一种事情,就是记录受害者的键盘敲击,并且在 LOG 文件里进行完整的记录,然后通过邮件或其他方式发送给控制者。其三,密码发送型。密码发送型木马的目的是找到所有的隐藏密码,并且在受害者不知道的情况下把它们发送到指定的信箱。这类木马程序大多不会在每次都自动加载,一般都使用 25 端口发送电子邮件。其四,反弹端口型。反弹端口型木马的服务端使用主动端口,客户端使用被动端口。木马定时监测控制端的存在,发现控制端上线立即弹出端口主动连接控制端打开的主动端口。为了隐蔽起见,控制端的被动端口一般开在80,稍微疏忽一点, 用户就会以为是自己在浏览网页。
3.木马的特点
第一,隐蔽性。隐蔽性是木马的首要特征。这一点与病毒特征是很相似的,木马类软件的 SERVER 端程序在被控主机系统上运行时会使用各种方法来隐藏自己。例如大家所熟悉的修改注册表和ini文件以便被控系统在下一次启动后仍能载入木马程式,它不是自己生成一个启动程序,而是依附在其他程序之中。第二,有效性。由于木马常常构成网络入侵方法中的一个重要内容。它运行在目标机器上就必须能够实现入侵者的某些企图,因此有效性就是指入侵的木马能够与其控制端入侵者建立某种有效联系,从而能够充分控制目标机器并窃取其中的敏感信息。第三,自动运行和自动恢复性。木马程序通过修改系统配置文件,如: win.ini,system.ini,winstart.bat或注册表的方式,在目标主机系统启动时自动运行或加载。现在很多的木马程序中的功能模块已不再是由单一的文件组成,而是具有多重备份,可以相互恢复。系统一旦被植入木马,想利用删除某个文件来进行清除是不太可能的。
二、木马程序的工作机制
木马程序虽然具有很大的隐蔽性,但也有其踪迹可循。因此,要防范木马就必须知道木马的工作原理。
1.木马程序的工作原理
木马程序的结构是典型的客户端/服务器(Client/Server;简称C/S)模式,服务器端程序骗取用户执行后,便植入在计算机内,作为响应程序。所以它的特点是隐蔽,不容易被用户察觉,或被杀毒程序、木马清除程序消灭,而且它一般不会造成很大的危害,计算机还可以正常执行。另外,木马服务器端程序还有容量小的特点,一般它的大小不会超过300KB,最小的木马程序甚至只有3KB,这样小的木马很容易就可以合并在一些可以执行.exe的文件中或网页中而不被察觉,而且这样小的文件也能很快就下载至磁盘中,若是再利用UPX压缩技术还可以让木马程序变得更小。
2.木马程序的工作方式
木马客户端程序是在控制台(黑客的计算机)中执行的,木马服务器端程序必须与客户端程序对应,建立起连接。服务器端程序与客户端建立连接后,由客户端发出指令,然后服务器在计算机中执行这些指令,并源源不断地将数据传送至客户端。木马服务器端与客户端之间也可以不建立连接,因为建立连接容易被察觉,如果再使用连接技术只会自断后路。所以就要使用ICMP来避免建立连接或使用端口。木马服务器端与客户端也可以不要间接通讯,因为直接通讯的目的太明显了,很容易被发现,所以木马服务器端可以与客户端采取间接通讯的专式:在服务器端与客户端之间中间层,服务器端程序先将数据传送至某个网站,客户端程序再从那个网站取得数据。这种方式可以让木马程序达到非常隐蔽的通讯效果,但缺点是通信数据交换的速度变慢了。
三、木马程序的防范策略
计算机木马程序已经严重影响到各类计算机使用者的切身利益,当前最重要的是如何有效的防范木马的攻击。
1.使用防火墙阻止木马侵入
防火墙是抵挡木马入侵的第一道门,也是最好的方式。绝大多数木马都是必须采用直接通讯的方式进行连接,防火墙可以阻塞拒绝来源不明的TCP数据包。防火墙的这种阻塞方式还可以阻止UDP,ICMP等其他IP数据包的通讯。防火墙完全可以进行数据包过滤检查,在适当规则的限制下,如对通讯端口进行限制,只允许系统接受限定几个端口的数据请求,这样即使木马植入成功,攻击者也是无法进入到你的系统,因为防火墙把攻击者和木马分隔开来了。
2.避免下载使用免费或盗版软件
电脑上的木马程序,主要来源有两种。第一种是不小心下载运行了包含有木马的程序。绝大多数计算机使用者都习惯于从网上下载一些免费或者盗版的软件使用,这些软件一方面为广大的使用者提供了方便,节省了资金,另一方面也有一些不法分子利用消费者的这种消费心理,在免费、盗版软件中加载木马程序,计算机使用者在不知情的情况下贸然运行这类软件,进而受到木马程序的攻击。还有一种情况是,“网友”上传在网页上的“好玩”的程序。所以,使用者定要小心,要弄清楚了是什么程序再运行。
3、安全设置浏览器
设置安全级别,关掉Cookies。Cookies是在浏览过程中被有些网站往硬盘写入的一些数据,它们记录下用户的特定信息,因而当用户回到这个页面上时,这些信息就可以被重新利用。但是关注Cookies的原因不是因为可以重新利用这些信息,而是关心这些被重新利用信息的来源:硬盘。所以要格外小心,可以关掉这个功能。步骤如下:选择“工具”菜单下的“Internet选项”,选择其中的“安全”标签,就可以为不同区域的Web内容指定安全设置。点击下面的“自定义级别”,可以看到对Cookies和Java等不安全因素的使用限制。
4.加强防毒能力
“常在河边走,哪有不湿脚”,只要你上网就有可能受到木马攻击,但是并不是说没有办法来解决。在计算机上安装杀毒软件就是其中一种方法,有了防毒软件的确会减少受伤的几率。但在防毒软件的使用中,要尽量使用正版,因为很多盗版自身就携带有木马或病毒,且不能升级。新的木马和病毒一出来,唯一能控制它蔓延的就是不断地更新防毒软件中的病毒库。除了防毒软件的保护,还可以多运行一些其他软件。如天网,它可以监控网络之间正常的数据流通和不正常的数据流通,并随时对用户发出相关提示;如果我们怀疑染了木马的时候,还可以从网上下载木马克星来彻底扫描木马,保护系统的安全。
参考文献:
[1]卢勇焕.黑客与安全[M].北京:中国青年出版社,2001年
[2]张世永.网络安全原理与应用[M].北京:科学出版社,2003年
[3]秘密客.破解黑客木马屠城计[M].北京:中国水利水电出版社,2005年
[4]钟力.网络欺骗安全防护技术[J].军事通信技术,2001(1)
[5]替远、程波财.特洛伊木马的防范策略[J].计算机与现代化,2003(5)