电脑技术学习

电脑病毒最基础知识

dn001

  3.蠕虫病毒

  繁殖,繁殖,再繁殖,利用系统漏洞,通过网络感染感染其他计算机,繁殖,繁殖,再繁殖。此类病毒深得“乾坤生两仪,两仪生四象,四象生八卦之能,每台受感染的机器,本身又以病毒发送者的身份将蠕虫病毒送向四面八方。

  病毒描述:这类病毒的本质特征之一就是透过网络主动进行感染,本身不具有太多破坏特性,以消耗系统带宽、内存、CPU为主。这类病毒最大的破坏之处不是对终端用户造成的麻烦,而是对网络的中间设备无谓耗用。例如网络中的交换机/路由器/DNS服务器/邮件服务器常常是蠕虫病毒爆发的最大受害者——“互联网瘫痪了!?——2003年1月的SQL蠕虫爆发就是最好的例证。

  病毒浅析:在以前,编写这类病毒的技术要求相当高。1988年,前面提到的“磁芯大战之子罗伯特.莫里斯在发现了几个系统漏洞后,编写了一个精巧的程序,短短时间便将当时的大半个互联网瘫痪。由以上可以看出,蠕虫的出现,传播,感染是需要系统漏洞和获得系统权限的。莫里斯不愧为技术高手,不光在于对病毒的编写,更在于对系统漏洞的发掘上。随着时间的推移,操作系统的进步,在功能完善的同时,漏洞也随之增加。

  不少真正的安全小组在发现漏洞的同时,除了会给出详细的技术说明外,往往附带一个小程序的源代码,说明利用漏洞获得权限的实现。而这个小程序被蠕虫病毒编写者如获至宝,将起改写,加上文件传输,ping扫描,修改启动项自动执行等能用代码简单实现的功能,就成了一个蠕虫病毒——换句话说,现在编写蠕虫病毒的门槛已经大大降低了,所以大家会看到18岁的优秀病毒编写者云云——其实相较起破坏特性来,发现安全漏洞更是需要高超的技术水平——这是安全小组做到的,而不是病毒编写者。因此可以这样概括:自从莫里斯发明出蠕虫病毒以来,该种病毒的编写者自身实力日渐下降,从操作系统级水平沦落到代码编写级水平,不可同日而语。

  感染途径:系统漏洞/用户错误权限

  蠕虫病毒本事是一个需要以一定身份执行的程序。因此通过系统漏洞进行感染是其手段,提升权限是其企图,重复感染是其目的。没打上系统漏洞补丁的操作系统,权限设置松散的设置,极其简单的用户密码是这类病毒的最爱。

  病毒自查:由于通过网络感染,这类病毒都会大量占用网络带宽。由于现在普通pc的性能相当不错,因此一些新兴的蠕虫病毒在大肆占用网卡发送封包的同时,本机速度不会变的太缓慢,这跟自查带来了一定麻烦。以天缘工作为例,检查到内网中有用户染毒后,电话通知他,结果被反问:“我运行单机程序的时候这么快,只有上网的时候才觉得慢,是不是你们网络中心故意捣乱??网管难做啊,不对单机造成任何伤害的病毒用户一般难以察觉,因此还是后来会导致系统出错1分钟内自动关闭的这类病毒比较受我们网管欢迎呢。上网的朋友可以检查一下网络连接的封包发送,如果自己没进行任何操作的时候,依然有大量的数据报文不断发出——那么有很大可能您中了蠕虫病毒。

  病毒查杀:这类蠕虫病毒由于感染非常迅速,而且是通过系统漏洞方式感染,所以对互联网络的危害相当大,唇亡齿寒,因此一般来说发现了该漏洞的操作系统公司和杀毒公司都不会坐视不管,会在第一时间推出补丁和专杀工具。用户下载后,断网进行杀毒,然后打上patch,重新启动系统就能避免再次重复感染了。至于病毒传播速度太快,在杀毒后下载patch的中途又被重复感染的问题,可见我以前的一篇文章《网管笔记之小兵逞英雄》,举一反三则可以 。

  杀毒遗留:由于该类病毒本身是独立程序,利用系统漏洞进行远程权限获取,进而上传,运行,感染,所以用专用的软件杀除后,基本无文件残留,但部分专杀工具没有将其启动项目清理得非常完全,可以使用上面查找木马启动设置的方法手工查找加载位置进行删除。另外切记一定在杀毒后第一时间及时打上补丁,否则重复感染机会高达100% 。

  病毒防御:

  1.勤打补丁,一般说来一个操作系统被发现漏洞以后,大概在15天以内相关的病毒就会出现,因此有必要随时关注自己所使用的操作系统的补丁升级情况,养成每天定时查看补丁升级情形的习惯。这里的补丁不光包括操作系统自身的,也包含程序服务的补丁,例如ftp服务器的补丁等等。

  2.权限设置,很多蠕虫感染的条件是需要以root级运行的进程出现漏洞,那么蠕虫才有权限进行上载、执行的权利,在windows下由于大多数后台进程是以administrator权限执行,带来的危害也相当大;*nix下则可设置非关键进程使用普通用户或chroot方式来避免权限提升。

  3.尽量少开服务,可开可不开的服务绝对不开,最小化风险;

  4.安装网络封包防火墙,只允许特定的端口的数据包通过或者特定的程序访问网络。这部分我们放在后面攻击防御那里介绍。

  4.脚本病毒

  这类病毒编写最为简单,但造成的危害非常大。我们常见的浏览了xx站点就被改了主页,在收藏夹里被添加上很多无谓的东西,就是拜这类病毒所赐。

  病毒描述:这类病毒的本质是利用脚本解释器的检查漏洞和用户权限设置不当进行感染传播;病毒本身是ascii码或者加密的ascii码,通过特定的脚本解释器执行产生规定行为,因其行为对计算机用户造成伤害,因此被定性为恶意程序。最常见的行为就是修改用户主页,搜索页,修改用户收藏夹,在每个文件夹下放置自动执行文件拖慢系统速度等;比较出名的如美利莎邮件病毒、新欢乐时光病毒、office的宏病毒等都属于这类。

  病毒浅析:为了完成一些自动化的任务,需要用程序方式来实现。但复杂的程序编写又不是非程序人员能够胜任的。为了提高工作效率,方便用户操作,加强系统特性,于是许多软件/操作系统都预留了接口给用户,用简单的方法编写一些完成一定功能的小程序。程序本身是ascii码的,不编译,直接解释执行,在调试/修改使用上相当简便,虽然牺牲一定效率,但是换来了易用性。这本是一个良好的愿望,但太多的时候,这没有起到积极的作用,反而为脚本病毒编写者提供了良机。

  以web病毒为例,由于用户缺乏安全意识用错误的权限登陆,导致ie中的解释器使用wsh可以操作硬盘上的文件和注册表,而javascript和vbscript调用wsh是很容易的事情——于是恶意脚本的作者只需要让你访问该页面,就能在你本地写上一些恶意的脚本,在注册表里修改你的主页/搜索项了。而利用ie的activex检查漏洞,则可以在不提示地情况下从网络上下载文件并自动执行——这就成了木马攻击的前奏曲;利用mime头漏洞,则可以用一个以jpg结尾的url中,指向一个事实上的web页,然后在web页中内嵌图片+恶意代码的方式迷惑计算机用户;利用outlook自动读去eml的特性和mime头检查不严格来执行恶意2进制代码;利用本地硬盘上有执行autorun.inf的特性(这功能本来是光驱用的,我们的光盘之所以放进去就能自动读出程序,就是光盘上有个名为autorun.inf文件起的作用,它是个文本文件,各位可以看看)把一些需要加载的程序写到该文件下导致每次访问该分区的时候就会自动运行;利用windows下会优先读取folder.htt和desktop.ini的特性,将恶意代码写入其中,导致访问任何一个文件夹的时候都会启动该病毒,再配合上锁定注册表的功能,杀除起来异常麻烦——不复杂,但是相当烦琐,一不留意没杀干净一处,又导致死灰复燃,前功尽弃。

  病毒自查:上面有提到,这类病毒一般以捣乱居多,所以特别容易发现。而其另一个作用是作为木马进驻系统的先遣部队,利用浏览器漏洞等达到下载木马文件到本地硬盘,并修改启动项,达到下次启机运行的目的。因此一旦发现木马的同时,也可以检查一下是不是有些可疑的脚本文件。

  病毒查杀:这类病毒一般来说由于其编写灵活,源代码公开,所以衍生版本格外地多;杀毒软件/木马杀除软件对待这类病毒大多没用。而由于脚本病毒(除宏病毒外)大多是独立文件,只要将这些文件查找出来删除掉就行了。不过这里值得留意的是,利用微软的浏览器的漏洞,在点击选择某些文件的同时就自动执行了,甚至打开浏览器的同时脚本病毒就开始驻留感染——这样是无法杀除干净的。

  正确的做法是使用其他第三方的资源浏览器,例如Total Command就是一个非常不错的选择。查杀大致过程如下:首先,在资源浏览器——工具——文件夹选项中,将“使用Windows传统风格的桌面取消掉,在桌面上点右键,点“属性——“桌面设置,将使用活动桌面取消,接着查杀可疑对象;常见查杀对象:各个根分区下的autorun.inf,各个目录下的desktop.ini和folder.htt(有几个是系统自带的,不过删除了也无关系的),这一步最好采用第三方的资源浏览器,例如前面介绍的Total Command来完成。在这一步,最忌讳查杀不净,即使有一个病毒遗漏,很快就又遍布各个文件夹内了。关于邮件病毒的杀除使用专杀工具就行了。

  病毒残留:纯粹脚本病毒在杀除后不会有任何残留,但由于目前的病毒大都采用复合形态,捆绑多种传染方式和多种特性,因此不少脚本病毒只是将用户机器的安全防线撕开的前奏——真正的破坏主力木马、蠕虫尾随其后进入系统,因此在杀除掉脚本病毒后,非常有必要连带着检查系统中是否已经有了木马和蠕虫病毒。

  病毒防御:脚本病毒的特性之一就是被动触发——因此防御脚本病毒最好的方法是不访问带毒的文件/web网页,在网络时代,脚本病毒更以欺骗的方式引诱人运行居多。由于ie本身存在多个漏洞,特别是执行activex的功能存在相当大的弊端,最近爆出的重大漏洞都和它有关,包括mozilla的windows版本也未能幸免。因此个人推荐使用myie2软件代替ie作为默认浏览器,因为myie2中有个方便的功能是启用/禁用web页面的activex控件,在默认的时候,可以将页面中的activex控件全部禁用,待访问在线电影类等情况下根据自己的需要再启用。关于邮件病毒,大多以eml作为文件后缀的,如果您单机有用outlook取信的习惯,最好准备一个能检测邮件病毒的杀毒软件并及时升级。如果非必要,将word等office软件中的宏选项设置为禁用。脚本病毒是目前网络上最为常见的一类病毒,它编写容易,源代码公开,修改起来相当容易和方便,而且往往给用户造成的巨大危害。

  以上4类程序的介绍,为了降低学习难度,我是单态方式来介绍的。事实上目前的病毒大多以具有上面4类程序中的2到3类的特征,因此无论感染,传播,杀除的困难都大大增加。例如发文前夕的mydoom新变种病毒的分析中:它利用系统漏洞/邮件群发/共享漏洞方式传播(具备了蠕虫、脚本病毒和新型病毒的传播特性),进驻用户系统后上载自身并运行(木马特性),获取用户本地outlook中的地址本(木马特性),通过调用google等搜索引擎获取用户email地址本中同后缀的相关选项(调用系统程序,木马功能),再主动给地址本中的每个程序发出email(木马特性)。对待这样一个病毒,无论是系统存在漏洞、共享安全设置不当、或者随意地打开了“朋友发来的email,都可能导致中毒。关于中毒途径的分析,留待下一站《攻击防御之旅》内一并介绍。

  在从第一个病毒出现到现在,已经有整整半个世纪了,病毒的发展日新月异,令查杀的困难大大增加,造成的损失也异常巨大。或许,计算机病毒这个幽灵,从计算机诞生的那一刻起就注定要如影相随的。只要还有用心险恶的人存在,那么病毒就不会消亡。病毒之战,恐怕会在今后的日子里越演越烈……