木马程序的工作机理及防卫措施的研究病毒论文.doc

上传人:仙人指路1688 文档编号:2401943 上传时间:2023-02-17 格式:DOC 页数:19 大小:66KB
返回 下载 相关 举报
木马程序的工作机理及防卫措施的研究病毒论文.doc_第1页
第1页 / 共19页
木马程序的工作机理及防卫措施的研究病毒论文.doc_第2页
第2页 / 共19页
木马程序的工作机理及防卫措施的研究病毒论文.doc_第3页
第3页 / 共19页
木马程序的工作机理及防卫措施的研究病毒论文.doc_第4页
第4页 / 共19页
木马程序的工作机理及防卫措施的研究病毒论文.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《木马程序的工作机理及防卫措施的研究病毒论文.doc》由会员分享,可在线阅读,更多相关《木马程序的工作机理及防卫措施的研究病毒论文.doc(19页珍藏版)》请在三一办公上搜索。

1、木马程序的工作机理的研究 1 引言随着计算机和网络技术的迅猛发展和广泛应用,Intemet深入到社会的每个角落,人们充分享受到了其给工作和生活带来的巨大便利,人类社会对计算机系统和信息网络的依赖性也越来越大。但是从另一方面,由于计算机系统和信息网络系统本身固有的脆弱性。越来越多的网络安全问题开始困扰着我们,入侵者入侵和病毒蔓延的趋势有增无减,社会、企业和个人也因此蒙受了越来越大的损失。特别是在此基础上发展起来的“信息战”,通过计算机攻击工具(如计算机病毒、木马等计算机程序)对敌方的计算机系统和网络设施发动袭击,造成敌方的信息通信的中断和指挥控制系统的瘫痪,从而达到“不战而屈人之兵”的目的。显然

2、,计算机攻击和防御工具也将成为国家之间、企业之间一种重要的攻击和防御手段。因此,计算机和信息安全问题正日益得到人们的重视,并成为国内外的学者和专家研究的热点。在早期的计算机安全防御中,由于网络并不流行,反病毒软件发挥着主要的作用,通过对输入设备的监控,有效地阻止了恶意程序对每台独立的计算机的危害。随着网络的应用,绝大部分计算机连入互连网,威胁变为主要来自网络,网络入侵工具(如蠕虫、木马等)在这时不断涌现。防火墙在这种情况下应运而生,它通过禁止非法的网络请求来防御来自网络的攻击。随着计算机攻击技术的发展,病毒、蠕虫和木马等攻击工具在功能上相互吸收和借鉴,攻击方式和手段也层出不穷,促使计算机安全也

3、向着不断细化的方向发展,即针对不同的攻击方式采用不同的对策,从而形成了比较完善的防御体系。2 木马的功能和特征木马程序的危害是十分大的,它能使远程用户获得本地计算机的最高操作权限,通过网络对本地计算机进行任意的操作,比如删添程序、锁定注册表、获取用户保密信息、远程关机等。木马使用户的电脑完全暴露在网络环境之中,成为别人操纵的对象。就目前出现的木马来看,大致具有以下功能:1自动搜索已中木马的计算机。2对对方资源进行管理,复制文件、删除文件、查看文件内容、上传文件、下载文件等。3远程运行程序。4跟踪监视对方屏幕。5直接屏幕鼠标控制,键盘输入控制。6监视对方任务且可以中止对方任务。7锁定鼠标、键盘和

4、屏幕。8远程重新启动计算机、关机。9记录、监视案件顺序、系统信息等一切操作。10随意修改注册表。11共享被控端的硬盘。12进行乱屏等耍弄人的操作一个典型的特洛伊木马(程序)通常具有以下四个特点:有效性、隐蔽性、顽固性和易植入性。以从这四个方面来加以评估。一个木马的危害大小和清除难易程度可它们是:1有效性:由于木马常常构成网络入侵方法中的一个重要内容。它运行在目标机器上就必须能够实现入侵者的某些企图,因此有效性就是指入侵的木马能够与其控制端(入侵者)建立某种有效联系,从而能够充分控制目标机器并窃取其中的敏感信息。因此有效性是木马的一个最重要特点。入侵木马对目标机器的监控和信息采集能力也是衡量其有

5、效性的一个重要内容。2隐蔽性:木马必须有能力长期潜伏于目标机器中而不被发现。一个隐蔽性差的木马往往会很容易暴露自己,进而被杀毒(或杀马)软件,甚至用户手工检查出来,这样将使得这类木马变得毫无价值。因此可以说隐蔽性是木马的生命。3顽固性:当木马被检查出来(失去隐蔽性)之后,为继续确保其入侵有效性,木马往往还具有另一个重要特性:顽固性。木马顽固性就是指有效清除木马的难易程度。若一个木马在检查出来之后,仍然无法将其一次性有效清除,那么该木马就具有较强的顽固性。4易植入性:显然任何木马必须首先能够进入目标机器(植入操作),因此易植入性就成为木马有效性的先决条件。欺骗性是自木马诞生起最常见的植入手段。因

6、此各种好用的小功能软件就成为木马常用的栖息地。利用系统漏洞进行木马植入也是木马入侵的一类重要途径。目前木马技术与蠕虫技术的结合使得木马具有类似蠕虫的传播性,这也就极大提高了木马的易植入性。从上面对木马特性的分析,我们可以看到木马的设计思想除了具有病毒和蠕虫的设计思想(即主要侧重于其隐蔽性和传播性的实现),还更多地强调与木马控制端通信能力,和反清除与反检测能力。表11对病毒、蠕虫和木马三者进行了一个比较。由于有了控制端的攻击者的指挥,因此木马的行为特征就有了很高的智能化,具有很强的伪装能力和欺骗性。而木马的反清除能力,也使其极为顽固地和被寄生的系统纠合在一起。要想彻底清除木马,系统也得付出惨痛代

7、价。因此及时迅速地检测到木马,避免系统被更深地侵入,是防御木马的共识。2.1 木马的分类根据木马程序对计算机的具体动作方式,可以把现在的木马程序分为以下几类:2.1.1远程访问型木马远程访问型木马是现在最广泛的特洛伊木马。这种木马起着远程控制的功能,用起来非常简单,只需先运行服务端程序,同时获得远程主机的IP地址,控制者就能任意访问被控制端的计算机。这种木马可以使远程控制者在本地机器上做任意的事情,比如键盘记录、上传和下载功能、发送一个“截取屏幕”等等。这种类型的木马有著名的BO(Back office)和N产的冰河等。2.1.2密码发送型木马密码发送型木马的目的是找到所有的隐藏密码,并且在受

8、害者不知道的情况下把它们发送到指定的信箱。大多数这类木马程序不会在每次Windows重启时都自动加载,它们大多数使用25号端口发送电子邮件。2.1.3键盘记录型木马键盘记录型木马是非常简单的,它们只做一种事情,就是记录受害者的键盘敲击,并且在LOG文件里做完整的记录。这种木马程序随着Windows的启动而启动,知道受害者在线并且记录每一个用户事件,然后通过邮件或其他方式发送给控制者。2.1.4毁坏型束马大部分木马程序只窃取信息,不做破坏性的事件,但毁坏型木马却以毁坏并且删除文件为己任。它们可以自动地删除受控制者计算机上所有的dll、illi或exc文件,甚至远程格式化受害者硬盘。毁坏型木马的危

9、害很大,一旦计算机被感染而没有即时删除,系统中的信息会在顷刻间“灰飞烟灭”。2.1.5 FIP型木马FTP型木马打开被控制计算机的21号端口(FTP所使用的默认端口),使每一个人都可以用一个FTP客户端程序来不用密码连接到受控制端计算机,并且可以进行最高权限的上传和下载,窃取受害者的机密文件。2.2远程控制、木马与病毒 远程控制软件可以为我们的网络管理做很多工作,以保证网络和计算机操作系统的安全。这类程序的监听功能,也是为了保证网络的安全而设计的,但是如果使用不当的话,就会出现很多问题。为了达到远程控制的目的,就必须将这些软件隐蔽起来,例如有的远程控制软件为了不让用户发现而被删除,就采用了一些

10、办法使自己隐蔽起来,使远程控制程序本身附着在某些windows程序上,以增强驻留系统的可靠性。然而,正是由于这种功能,才使远程控制软件变得可怕起来,也使远程控制软件、病毒和木马程序之间的区别变得越来越模糊。2.2.1病毒与木马计算机病毒是能够通过某种途径潜伏在计算机存储介质(或程序)里,当达到某种条件时即被激活,并具有对计算机资源进行破坏作用的一种程序或指令集合。计算机病毒一般具有以下几个特点:1破坏性。凡是由软件手段能触及到计算机资源的地方均可能受到计算机病毒的破坏,而计算机病毒也正是利用这种原理进行破坏。2隐蔽性。病毒程序大多夹在正常程序之中,很难被发现。3潜伏性。病毒入侵后,一般不立即活

11、动,需要等一段时间,条件成熟后再作用。4传染性。通过修改别的程序,并把自身的拷贝包括进去,从而达到扩散的目的。从计算机病毒的定义和特征中可以看出木马程序与病毒的区别是十分明显的。最基本的区别就在于病毒有很强的传染性,而木马程序没有。但是,如果木马程序没有处理好软件的安全问题,就会跟病毒相差无几了。例如,有名的木马程序YAl就是一个例子,差一点就成了第2个CIH。随着病毒技术的发展,计算机病毒也在向木马程序靠近,使病毒具有远程控制的功能。例如,有名的“红色代码”已具远程控制的雏形。2.2.2黑客与木马“黑客”一词来源于英语动词hack,本指“手法巧妙、技术高明的恶作剧”。今天,在最新和最普遍的意

12、义上说,“黑客”意味着那些偷偷地、未经许可就进入别人计算机系统的计算机犯罪。他们或修改网页进行恶作剧或流言恐吓;或破坏系统程序:或施放病毒使系统陷入瘫痪:或窃取政治、军事、商业机密;或进行电子邮件骚扰;或转移资金账户,窃取钱财。由此可见,木马程序与黑客的区别是较大的,黑客往往利用操作系统和网络的漏洞进行破坏活动,而木马程序往往充当黑客的工具。2.2.3远程控制与木马木马程序和远程控制软件都是一种在远程计算机之间建立起连接,使远程计算机能够通过网络控制本地计算机的程序,它们的运行都遵照TCPflP协议。其程序编制技术和攻击系统的手段也几乎没有什么区别。但是,木马与远程控制软件的最大区别就是木马具

13、有隐蔽性而远程控制软件没有。例如,国内血蜘蛛,国外的PCAnywhere等都是远程控制软件,血蜘蛛等server端在目标机器上运行时,目标机器上会出现很醒目的标志。而木马类的软件的$ervel端在运行的时候应用各种手段隐藏自己。2.3木马的发展方向随着计算机网络技术和程序设计技术的发展,木马程序的编制技术也在日新月异她发展,新的木马不断地涌现,几乎每个新出现的木马程序都会使用一种新技术。木马程序的大致发展方向如下。2.3.1跨平台性主要是针对Windows系统而言,木马程序的编制者当然认为一个木马可以在Windows 9598Me下使用,也可以在WindowsbiT2000XP下使用。在Win

14、dows 9x系统下,木马程序很容易隐藏,也很容易控制计算机。但Windows NT和Windows 2000XP都具有了权限的概念,这和Windows 9x不同,需要木马程序采用更高级的手段,如控制进程等,现在的一些木马程序也的确做到了这一点。2.3 模块化设计模块化设计是软件开发的一种潮流,现在的木马程序也有了模块化设计的概念。例如,BO,NetBus,Sub等经典木马都有一些优秀的插件在纷纷问世,就是一个很好的说明。木马程序在开始运行时可以很小,功能单一,但在控制过程中,可以从控制端传送某些复杂模块库到被控制端,达到自我升级的功能。 2.3.1更新更强的感染模式传统的修改ini文件和注册

15、表的手法已经不能适应更加隐蔽的需要。目前,很多木马的感染方式已经开始在悄悄转变,例如,著名的木马程序YAI就给了我们很多的启发,该程序像病毒一样的感染Windows下的文件。当木马程序采用了这种感染技术之后,就眼计算机病毒没有什么区别了。164即时通知木马程序如何知道被控制端在哪里已经运行了呢?如果中招的计算机使用固定口地址的话,还比较好检查,但如果目标使用的是动态口。就比较麻烦。现在的木马程序虽然已经有了即时通知的功能,例如IRC,ICQ通知等,毕竟还是太少, 但是,以后肯定会更加完善。2.3.2更强更多的功能我们在前面列出了木马程序常见的12种功能,但木马程序编制者是不会满足现状的,他们会

16、潜心研究、挖掘木马程序的新功能,将来的木马程序的功能也许会让大家大吃一惊。3 木马程序的工作机理3.1远程控制软件的工作机理木马虽然神龙见首不见尾,但他毕竟也是一种计算机程序,要防范木马就必须知道木马的工作原理。本章就来深入了解木马的内部结构,在看清其所隐藏的真是本质之后,对付木马就会变得轻而易举了。3.1.1木马的CS架构远程计算机监控和管理,让网络管理员不必亲临计算机,就可以像坐在计算机前面一样进行管理,人人地提高了管理工作的效率和方便性。只是这些功能必须利用操作系统内建的监控工具或安装其他网络管理工具才能实现。木马程序是一类特殊的计算机程序,其作用是在一台计算机上监控被植入木马计算机的情

17、况。与网络管理工具的最大区别在于,木马程序总是偷偷摸摸地进入其他人的计算机,而网络管理工具则是光明正大地安装到计算机中。黑客利用木马程序可以监视其他计算机的举动,还可以对这些计算机进行远程控制。不管操纵木马的人是出于何种目的,从隐私权或道德上来看,这些都是不被允许的。木马的工作原理与网络管理工具一样。木马程序不是病毒程序,病毒程序的主要特点是会造成破坏,例如CIH病毒可以将计算机的BIOS烧掉:蠕虫病毒可以传送大量的无用封包,导致网络瘫痪;而木马程序的目的不是要破坏计算机或网络,而是要看点什么、拿点什么、甚至砍掉点什么,所以其危害并不逊色于病毒程序。然而,木马程序与病毒程序之间有很多共同特点,

18、例如隐蔽性好,它们为了避免被专门的工具清除,总是将自己伪装成合法的工具或程序,蒙蔽清除工具或用户,然后就不断地进行肆虐。目前也出现了木马+病毒的结合体程序,这种程序结合了木马与病毒的特征和杀伤力,两者狼狈为奸,共同危害计算机。除了不断攻击计算机及网络、进行自身复制之外,还打开后门,让黑客可以控制计算机,或者将计算机中的机密信息传送至某处。病毒程序通常是单独行动,单枪匹马侵入计算机,最多也就是多复制几个和自己一模一样的东西,壮大规模而已,它从不留后路。而木马程序刚好相反,总是成双成对地行动,其先锋部队入侵计算机之后,会悄悄地打开个后门,然后便待在城中做内应,等发动攻击之后就里应外合,让计算机和用

19、户毫无还手之力,只能任由木马肆虐。所以木马程序的结构是典型的客户端服务器ClientServer,简称cs)模式。木马程序分为客户端程序和服务器端程序,服务器端程序骗取用户执行后,便植入在计算机内,作为响应程序。所以它的特点是隐蔽,不容易被用户察觉。或被杀毒程序、木马清除程序消灭,而且它一般不会造成很大的危害,计算机还可以正常执行。另外,木马服务器端程序还有容量小的特点,一般它的大小不会超过300KB,试想如果有一个100MB大小的木马服务器端程序,它能行动方便吗?它的隐蔽性能有多好呢?利用56Kbps调制解调器拨号上网的用户大概永远都没有机会中此类木马。现在的木马服务器端程序越来越小,最小的

20、木马程序甚至只有3KB,这样小的木马很容易就可以合并在一些可以执行的exe文件中或网页中而不被察觉,而且这样小的文件也能很快就下载至磁盘中,若是再利用UPX压缩技术还可以让木马程序变得更小。木马客户端程序是在控制台(黑客的计算机)中执行的,它的作用是连接木马服务器端程序,监视或控制远程计算机,所以不需要太注重空间大小或隐蔽性的问题,但是必须注意通讯的隐蔽,不能传送大量的封包至被植入木马的计算机或大规模的扫描连接端口。木马服务器端程序必须与客户端程序对应,所以黑客必须同时开发这两个程序。服务器端使用某种通讯协议,客户端程序就使用与之相同的通讯协议:服务器端程序打开计算机某个连接端口,则客户端程序

21、就扫描那个连接端口:典型的木马工作原理是服务器端程序与客户端建立连接后,由客户端发出指令,然后服务器在计算机中执行这些指令,并源源不断地将数据传送至客户端。木马服务器端与客户端之间也可以不建立连接,因为建立连接容易被察觉,尤其是现在连计算机初学者都知道如何使用netstatexe指令来查看计算机打开了哪些端口或建立连接,如果再使用连接技术只会自断后路。所以就要使用ICMP来避免建立连接或使用端口。使用ICMP来传送封包可以让数据直接从木马客户端程序送至服务器端。木马服务器端与客户端也可以不要间接通讯,因为直接通讯的目的太明显了,很容易被发现,所以木马服务器端可以与客户端采取间接通讯的专式:这种

22、方式是cs两层结构的扩展,在服务器端与客户端之间中间层,服务器端程序先将数据传送至某个网站,客户端程序再从那个网站取得数据。这种方式可以让木马程序达到非常隐蔽的通讯效果,但缺点是通信数据交换的速度变慢了。3.1.2打开端口的传统木马早期的木马从设计理念来说很简单,只需要将木马植入计算机中,然后打开一扇后门(端口),就可以通过此连接达到控制计算机的同的。第一代木马也是使用这种方式,藉由在目标计算机中打开连接端口,达到对计算机的磁盘进行控制、将屏幕显示输出至客户端等目的。这种木马最常见的就是使用TCP建立连接,因为TCP是一种相当可靠的通讯协议,计算机在通讯过程中会建立稳定的连接,封包在网络传送过

23、程中还会确认完整性,所以利用TCP作为传送协议的木马程序不需要在开发时考虑网络因素。一旦中了此类木马,计算机会始终打开一个特定的端口,例如6666、12345、12346、23450等都是木马程序常用的连接端口号。除了使用这些特定的连接端口之外,木马程序还会使用一些知名服务所用的端口,例如WWW的80、F1呼的21这些端口号也会被利用,因为使用特定的端口很容易被用户或木马清除工具所发现,他们只要使用Windows操作系统内建的netstatexe指令,就可以轻易地发现计算机打开了哪些端口,但是一般人却不会怀疑21、80等端口。使用TCI作为传输协议的缺点,在于必须建立连接和使用端口,这样会导致

24、木马程序的隐蔽性很差。所以很多木马程序放弃使用TCP,而沿用UDP作为传输协议,因为UDP是一种不可靠的传输协议,通讯双方不需在交换数据之前建立连接,只有在传送数据的短暂时间里会打开端口。所以在netstatexe指令的输出中,我们只能看到计算机打开的连接端口,并不能看到连接的状态或目标主机的地址和连接端口不管是使用TCP或是UDP作为传输协议,始终部不能逃过防火墙这一关,防火墙的封包筛选功能可以阻止特定端口的封包通过。在防火墙的规则中,储存了许多木马程序所使用的端口号,打开防火墙功能之后,此类封包便不可以通过防火墙,这样就可以有效防范木马程序,而且还能从防火墙的防护记录中看到,木马攻击的封包

25、都被有效的遏止了。另外,由于打开端口的木马比较稳定,而且不会为计算机带来伤害,所以此类木马也可以从良,作为网络管理工具使用。3.1 lcmp木马 打开端口的木马比较容易被用户或木马清除工具发现,所以便出现第三代木马。ICMP木马属于第三代木马,它不需要使用连接端口进行通讯,这样可以有效地绕过防火墙或是避免被木马清除工具消灭。ICMP(Internet Control Message Protocol:因特网控制信息通讯协议)是球的附属协议,允许网络上的计算机共享错误和状态信息,ICMP常用于服务TCP或UDP,但是也可以单独使用,其工作在口层,不通过TCP、UDP就可以直接传送封包。使用ICM

26、P协议最著名的工具是pingexe,该指令内建于所有的操作系统,可以用于传送ICMP_ECHO封包请求状态和接收ICMP ECHOREPLY封包确认响应。例如在windows中使用pingexe侦测一台计算机时,会向对方发送四个32字节的请求封包,然后再确定对方是否有响应以及响应封包回传的时间,接着统计所需时间和封包遗失比率。ICMP封包不需要建立连接或打开端口,由于此类封包直接交由操作系统或进程,所以用户和木马清除工具都没有办法确定这种木马的存在。于是,黑客就得到pingexe指令的启发,将木马服务器端伪装成一个pingexe的进称,传送ICMP ECHO封包,并且修改封包ICMP表头的构造

27、,再加上木马控制信息,然后传送至木马程序客户端,一旦服务器端接收到ICMP ECHOREPLY响应封包,通过该封包的大小、ICMP SEQ的特征,便可以判断是正常的ICMP ECHOREPLY封包,还是木马客户端所发送过来的封包,木马服务器端便可以从该封包中译码出指令和数据。使用大量的封包来侦测一台计算机会导致拒绝服务(DoS),也称为Ping ofDeath,利用ICMP可以对计算机发动攻击,直到计算机无法处理其他有用的网络封包,甚至不能分配本机计算机的信息而导致当机,所以ICMP封包也被列为危险封包。很多防火墙都内建了丢弃ICMPECHO、ICMPECHOREPLY封包的选项,这个选项对用

28、户来说足不友好的,冈为他们不可以利用pingexe指令来确定是否能够访问远程计算机,但是却可以有效地防范ICMP风暴或ICMP木马,所以必须在安全性和可用性两者之间作个取舍。封锁ICMP之后,除了pingexe指令不能使用之外,其他利用ICMP的工具,例如用来确定路由路径的tracertexe指令、pingexe的衍生指令pathpingexe也不可以使用,而且当使用IntemetExplorer访问一个网站,而该网站不存在时,往往要花费很多等待的时间,因为网络不可访问、网页服务器不存在、连接端口不可用等信息都不能接收到,而Intemet Explorer却一直在等待回复信息直到逾时。3.2

29、通过网站控制的木马通过网站控制的木马实际上也是CS结构,只是木马客户端程序没有直接与服务器端程序通讯,而是通过中间层来完成,计算机误中了木马程序后,木马服务器程序将数据传送至默认的网站,黑客就可以存网站中发布指令,然后这些指令会回传至计算机执行。此类木马通常使用WWW服务默认的80端口,所以中了该类木马的计算机,即使用户没有打行InternetExplorer访问网站,也有打开H丁rP使用的80端口。在netstatexe指令的输出中,我们可以看到计算机连接至外部网站的80端口。由于需要通过中间层,所以会显得比较慢,对于那些文件传送或者屏幕截取等功能,这类型的木马比较少用到,不过远程指令的执行

30、却可以很顺畅地完成,因为不需要太多的频宽。这种木马的特点是可以绕过防火墙或代理服务器,因为它是主动传送封包,而且使用80端口,几乎所有的防火墙都不会丢弃这种封包,而且代理服务器也允许用户访问外部网站,所以这类木马可以大行其道。黑客不必搜索哪些计算机中了木马,所以省了扫描网络的功夫,而且即使计算机是处于内部网络,也不必担心是否可以连接进行控制,因为封包既然可以从中了木马的计算机传送至网站,响应封包也就一定可以从网站传送至计算机。既然防火墙和代理服务器都奈何不了此类木马,用户也很难判断是否中了此类木马,那么有么方式才可以清除它昵?其实,最新的木马清除工具或杀毒程序就可以消灭此类木马,因为木马在磁盘

31、中总是会遗留下某些特征,包括启动项目、木马服务器端程序等,只要木马被人发现,都会立刻加到最新木马特征数据库中,所以使用这些工具来清除木马,当然就没问题了。4 木马程序常用的攻击手段为什么我们需要使用杀毒软件牢牢地守护计算机,严防木马闯进来呢?因为木马程序的功能,实在太过强大了。一旦它悄悄溜进用户的计算机,一场使人欲哭无泪的悲剧就开始上演了。4.1 窃取账户、密码密码是一种最常用来验证用户身份的方法,获得了用户密码,就相当于窃取了用户的某项使用权利。密码的窃取可以分为以下几类:4.1.1窃取本机账户密码窃取本机密码是木马最常见的危害,相当多的木马程序都提供这类功能。通过密码破解,黑客就会从一个普

32、通的用户,一步步晋升为管理员,最终完全控制远程计算机。为了达到这个目的,针对不同的系统,木马程序会使用不同的方法:对于Windows 9xMc,木马会尝试破解Windows 9x操作系统上的pwl文件。对于Windows NT2000XP操作系统的用户而言,木马会试图通过系统漏洞访问注册表,提升木马程序执行账户的权限或记录键盘输入字符,向黑客提供其他账户及密码。4.1.2窃取银行账户密码由于几乎所有的网络财务处理,都是使用SSL连接加密传送,所以黑客要从网络截取并破解的难度极高。而另一方面,相对于只需要密码就可以认证身份的客户端而言,银行的服务器十分严密,所以一些黑客就会通过木马窃取用户密码。

33、由于电子商务、网络银行等服务的普及,越来越多的用户会通过网络处理财务问题。用户只需要在浏览器输入密码验证身份,就可以登入网络银行汇款、转账。由于相当多的用户安全意识并不高,例如会在公共计算机上处理财务等等,因此让黑客有通过记录键盘输入或直接从浏览器的字段获得密码的机会。4.1.3窃取其他网络账户密码除了窃取银行账户木马这些极为重要的密码之外,木马也随着潮流而不断推出符合黑客“胃口”的密码窃取功能。例如,在电子邮件开始普及的那段时期,窃取用户邮件密码的木马曾盛极一时,而流行网络游戏的今天,有越来越多的木马程序则添加了窃取网络游戏账户的功能。4.2远程监控 用户会使用计算机观赏影片,也会使用它处理

34、公司的机密数据,如公司的投标计划。为了获得这些机密或是刺探用户的个人隐私,黑客会使用远程监控功能,监看用户的一举一动。目前较为常见的远程监控方法有以下两种,下面将分别说明他们的危害方式。4.2.1远程屏幕画面截取 为了安全起见,许多公司的数据都是加密储存的,黑客即使窃取到文件,如果不解密将会看到一堆没有仔何意义的乱码。而且,解密过程通畅都十分复杂,依理论而言,得花上数年至数十年才能解密成功。不少黑客会因此望而却步,放弃窃取到的数据。然而无论使用何种加密方式储存,当用户本人需要使用时,一样需要解密并以人类可以理解的文字或图像显示在屏幕上,才能进行处理。远程屏幕画面截取功能,虽然不能获得文件本身,

35、但是它的可怕之处在于,可以让黑客获得最终的输出结果。对于一些使用计算机处理机密数据的用户而言,这是他们最不想看到的情况。因为用,住屏幕上所看到的一切,将全部显示在黑客的屏幕上。换而言之,黑客就好像站在用户身后,看着用户将自己所有的加密文件解密,并且呈现所有内容给其观看。或许有些用户还抱着最后的希望,处理文件的时间很短,黑客不会记录下所有数据吧。答案,是令人失望的。大多数支持屏幕画面截取的木马,都可以将截取到的图像另存为图文件,一些还具有自动存盘功能。所以,一旦被带有屏幕画面截取功能的木马入侵,就再也没有什么秘密可言了。4.2.2远程桌面控制远程屏幕画面截取的功能虽然强大,对于黑客而言,只能观看

36、用户的操作结果,并不能由自己主动操控始终有些可惜,特别是将要显示关键信息时,用户若关闭了文件,不知气坏了多少正在浏览远程屏幕的黑客。所以,许多新推出的木马都带有远程桌面控制功能。通过远程桌面控制功能,黑客不但可以监视用户正在进行的操作,在需要时还可以夺取用户的控制权,由黑客直接使用目前登入的账户操作远程计算饥。由于相当多的木马,为了避免与用户发生争夺桌面控制权的情况,通常会存远程控制功能启动的同时,锁定用户的鼠标与键盘。对于用言而言,如果受到带有远程桌面控制功能的木马入侵,将会完全失去计算机的控制权,这时除了强行拔除网络连接线之外,无法摆脱受到控制的命运。4.3 打开未授权的服务哪些服务是必须

37、启用的?哪些服务是自己不需要的?对于一般的用户而言,可以正确答对以上问题的人并不多。因此,这就让黑客有了可乘之机,可以在用户不知不觉的情况下,安装及打开某些服务。或许,用户会觉得,多一些服务难道不是一件好事吗?这就不一定了它的危害方式主要有以下两点:占用带宽成为黑客的替罪羊。4.3.1占用频宽首先,额外的服务将占用大量的带宽,让用户可用的带宽减少。例如用户10Mbps的宽带网络,成为FrP文件服务器后,大量下载的文件将会令可用带宽拥挤得只剩几Kbps甚至更少。被黑客设定为代理服务器的计算机,更成为成千上万网络用户数据传输的中继站,用户本人几乎无法正常上网。4.3.2泄露机密相当多的木马入侵后,

38、会为客户端打开文件共享服务。这样用户硬盘上存储的所有数据,都将成为黑客的囊中之物。只要黑客需要,他随时可以通过客户端下载自己需要的文件。4.3.3成为黑客的替罪羊并不是各种网络服务都可以花钱购买的,例如要架设一个色情网站,向用户发送色情刊物,恐怕没有哪一个网络服务提供商可以提供这样的空间给用户。为了获得免费的储存空间或开办一些违法网站,一些黑客就会使用木马,在入侵的计算机启用一些未经授权的服务。例如,打开FTP服务,储存一些盗版软件,供其他用户下载。由于非法文件不是放在自己的计算机,所以黑客就可以高枕无忧了,而用户在不知情的情况下却成了违法经营者,变成黑客的替罪羊。所以,不小心被木马入侵的话,

39、可能警察找上门来,用户却还茫然不知原因呢。5 木马程序的开发技术近年来,黑客技术不断成熟起采,对网络安全造成了极大的威胁,黑客的主要攻击手段之一,就是使用木马程序,渗透到对方的主机系统晕,从而实现远程控制目标主机。其破坏力之大,是绝不容忽视的。那么,黑客到底是如何编制了这种具有破坏力的木马程序昵?这就是本节要讨论的内容。在木马程序中,在控制端和被控制端进行数据通讯,使用的主要技术就是网编程技术和系统编程技术,在本节,我们将介绍这些技术的实现方法。在讨论具体的实现技术之前,我们先要知道如何利用socket进行网络编程,因为这些是网络编程的核心技术。5.1 Socket的基本概念Socket的引入

40、随着计算机网络技术的发展,Tc聃P协议被集成到操作系统内核中时,相当于在操作系统中引入了一种新型的输入输出操作。操作系统用户进程与网络协议的交互作用比用户进程与传统的输入输出设备相互作用复杂得多。首先,进行网络操作的两个进程在不同机器上,如何建立它们之间的联系?其次,有很多种网络协议。如何建立一种通用机制以支持多种协议?这些都是网络应用编程所要解决的问题。20世纪80年代初,美国政府的高级研究工程机构(ARPA)给加利福尼亚大学Berkeley分校提供了资金,让他们在Unix操作系统下实现TCPIP协议。在这个项目中,研究人员为TCPIP网络通信开发了一个应用程序接口(APt9。这个API就称

41、为Socket(套接字)接口。今天,socket接口是TC坤网络最为通用的API也是在Intemet上进行应用开发最为通用的API。实际上socket在计算机中提供了一个通信端口(套接口),通过这个端口,一台计算机可以与任何一台具有Socket接口的计算机通信,通信的基础是套接口,一个套接口是通讯的一端,在这一端上可以找到与其对应的一个名字。一个正在被使用的套接口都有它的类型和与其相关的进程,套接口存在于通讯域中。一个套接口通常和同一个域中的套接口交换数据(数据交换也可能穿越域的界限但这时一定要执行某种解释程序)。应用程序在网络上传输,接收的信息都通过这个套接口采实现。在应用开发中就像使用文件

42、句柄一拦可以对Socket句柄进行读写操作。5.1.1Socket编程的基本概念在开始使用套接字编程之前,我们首先必须建立以下概念。5.1.1.1两间进程通信进程通信的概念最初采源于单机系统。由于每个进程都在自己的地址范围内运行,为了保证两个相互通信的进程之间既互不干扰又能协调一致工作,操作系统为进程通信提供了相应设施,如Unix BSD中的管道(Pipe)、命名管道(Namedpipe)和软中断信号(Signa0,Unix system V的消息(Message)、共享存储区(sharedMemory)和信号量(semaphore)等,但都仅限于用在本机进程之间通信。网间进程通信要解决的是不

43、同计算机进程间的相互通信问题f可把同机进程通信看作是其中的特例)。为此,首先要解决的是网间进程标识问题,同一计算机上不同进程可用进程号(Process ID)惟一标识。但在网络环境下,各计算机独立分配的进程号不能惟一标识该进程。例如,计算机甲赋于某进程号48,在乙计算机中也可以存在48号进程,因此,“48号进程”这句话就没有意义了。其次,操作系统支持的网络协议众多,不同协议的工作方式也不同,地址格式也不一样。因此网问进程通信还要解决多重协议的识别问题。5.1.1.2服务方式在网络分层结构中,各层之间是严格单向依赖的,各层次的分工和协作集中体现在相邻层之间的界面上。“服务是描述相邻层之间关系的抽

44、象概念,即网络中各层向紧邻上层提供的一组操作,下层是服务提供者,上层是请求服务的用户。服务的表现形式是原话(Primitive),如系统调用或库函数等。系统调用是操作系统内核向网络应用程序或高层协议提供的服务原语。在国际标准化组织(ISO)的开放系统互连(osi)的术语中网络层及其以下各层又称为通信子网,只提供点到点通信,没有程序或进程的概念。而传输层实现的是“端到端”通信,引进网间进程通信概念,同时也要解决差错控制,流量控制,数据排序(报文排序),连接管理等问题,为此提供不同的服务方式:面向连接(虚电路1的服务或无连接的服务。面向连接服务是电话系统服务模式的抽象,即每一次完整的数据传输都要经

45、过建立连接、使用连接、终止连接的过程。在数据传输过程中,各数据分组不携带目的地址,而使用连接号(Conncct In)。本质上,连接是一个管道,收发数据不但顺序一致,而且内容相同。我们知道,TCP协议提供面向连接的虚电路。无连接服务是邮政系统服务的抽象,每个分组都携带完整的目的地址,各分组在系统中独立传送。无连接服务不能保证分组的先后顺序。不进行分组出错的恢复与重传,不保证传输的可靠性。提供无连接的数据报服务的常用协议是UDP协议。5.1.1.3客户服务器模式在TCPIP网络应用中,通信的两个进程问相互作用的主要模式是客户服务器(clientserver)模式,即客户向服务器发出服务请求,服务

46、器接收到请求后,提供相应的服务。客户服务器模式的建立基于以下两点:首先,建立网络的起因是网络中软硬件资源、运算能力和信息不均等,需要共事,从而造就拥有众多资源的主机提供服务,资源较少的客户请求服务这一非对等作用。其次,网间进程通信完全是异步的,相互通信的进程间既不存在父子关系,又不共享内存缓冲区,因此需要一种机制为希望通信的进程间建立联系,为二者的数据交换提供同步这就是基于客户服务器模式的TCP,m协议。5.1.2 Socket的类型TCP,lP协议的Socket提供了下列三种类型的套接字。5.1.2.1套接宇socket如果我们想让发送出去的数据按顺序无重复的到达目的地,那么需要使用流式套接

47、字。流式套接字提供了一种可靠的面向连接的数据传输方法数据无差错、无重复地发送,且按发送的顺序进行接收。不管是对单个的数据报。还是对整个数据包,流式套接字都提供了一种流式数据传输,流式套接字使用传输控制协议(rcP)。此外,在数据传输时,如果连接断开,应用程序会被通知,流式套接字内设流量控制,避免数据流超限:数据被看作是字节流,无长度限制文件传送协议(FrP)使用流式套接字。5.1.2.2数据报套接字socket数据报套接字提供了一种不可靠的、非连接的数据包(Packet)通信方式。在这里“不可 靠”的意思是指传送一个数据包不能获得担保,也不能保证数据包按照发送的顺序到达目的地。数据包以独立包形

48、式被发送,不提供无错保证,数据可能丢失或重复,并且接收顺序混乱,在实际上同一分组数据报可能不止一次地被发送。对于Winsock的TCPIP实现,数据报套接字使用用户数据报协议(UDn,不过WinSock2也支持别的协议。网络文件系统(NFS)使用数据报套接字。虽然在通常情况下,在同一台计算机上或在轻负载0ighfly loaded)的局域网(LAN)所连接的两台计算机上的进程之间进行通信时,可能不会出现数据包有不被发送,或没按照顺序到达、有重复发送的情形。但我们在编写应用程序时,应该注意检测意外的发生。具备处理出现这些情况的能力。当然,如果我们为非常复杂的网络(如Intemet)编写通信应用程序时,就应该要考虑到数据报套接字的不可靠性。如果我们的应用程序没有适当的处理好这个问题,它就可能会崩溃。尽管如此,数据报套接字在发送数据包或记录型数据时仍然是很有用的。另外,数据报套接字还提供了向多个目标地址发送广播数据包的能力。5.1.3程序的自动加载运行技

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号