冰月星阁吧 关注:55贴子:3,156

【电脑知识】电脑病毒

只看楼主收藏回复

有很多的电脑用家,当听到『电脑病毒』时都闻毒而色变。其中有些或者真是曾身受其害,但更多的是因为夸张的道听途说而致人人自危。不但担惊受怕,更多的是钱包受损(商人的圈套)。 

         现在就让我们一起揭开『电脑病毒』的神秘面纱,并且让我们一起来研究。或者从中你会发觉,从某一程度来说,『电脑病毒』也是一种艺术呢?!



1楼2006-11-15 02:17回复
    简单的说,电脑病毒只是一个电脑程式。它与你常用的文书处理软体、你常玩的电脑游戏,都一样 ,都是电脑程式罢了。只不过电脑游戏可以让你享受声光的刺激,文书处理软体是设计来让你打字排 版列印出来,而电脑病毒是设计来破坏电脑里的软体,让你的工作不能正常进行


    2楼2006-11-15 02:19
    回复
      定义:

      『电脑病毒』是什麼东西呢?会否好像其他病毒,如『H5N1』、『O-157大肠杆菌』、『HIV』一样对人体造成伤害呢?『电脑病毒』是会造成伤害,但不是对你造成伤害,而是对你的电脑系统造成一定的伤害。

       电脑病毒是一段很小的电脑程式,它是一种会不断「自我复制」及「感染」的程式,在传统的DOS环境下,通常它会寄存在可执行的档案之中,或者是软、硬碟的开机磁区启动部份,随著被感染程式由作业系统载入记忆体而同时执行,病毒因此获得系统控制权;但在视窗系统中出现的文件巨集病毒则是附著在文件档中,且其感染之对象亦限於文件档。 

       简单来说,会使档案长度增加删减、不寻常的错误讯息出现, 而且可以不断的去感染其它程式的程式,我们都可以通称它为电脑毒。 

       电脑病毒在我们的电脑裏执行并且导致不同的影响。它可把电脑裏的程式或数据消失或改变。『电脑病毒』与其它威胁不同,它可以不需要人们的介入就能由程式或系统传播出去。

       『程式码』包含一套不必要的指令,当执行时,它把自己传播到其它的电脑系统、程式裏。首先它把自己拷贝(copy)在一个没有被感染的程式或档案裏,当这个程式或档案执行任何指令时,这电脑病毒都会包括在指令裏。 

       根据病毒创造者的动机,这些指令可以做出任何事,其中包括显示一段讯息、删除档案或精细地改变数据。有些情况下,电脑病毒并没有破坏指令的企图。但取而代之就是毒病占据磁碟空间,中央处理器时间或网络的连接。 

       

       


      3楼2006-11-15 02:20
      回复
        产生:

        电脑病毒被制造有很多不同的原因。例如:病毒是由雇员故意制造用来向 公司报复,表示自己的不满;有些就是用来庆祝某些节日;甚至有些是由宗教狂、政治狂制造的 ,目的就是想从这途径发表自己的声音。 
         有些程式编写员制造电脑病毒的目的是为了表现自己的 能力或挑战自己或别人,他们只是想看看病毒会带来甚麼後果或者看看是否有人能够把病毒清除 ,其实这种做法是错误运用自己的能力。

         其实很多"病毒″只不过是程式中的错误。当一个程式 编写员设计一个新程式时,很多时都会注要不到其中的小问题或错误(bugs)。就因为这些小问题 或错误(bug),造成一些不必要的指令及影响。所以作为一个好的程式编写员应该在程式未公开前 把程式作一次彻底的检查及测试。

         其实大部的"错误″病毒都没有破坏性,所以正确来说这些错 误病毒应该被定义为"错误(bug)″而不是"病毒″。


        4楼2006-11-15 02:20
        回复
          影响:

          电脑病毒对电脑系统可以造成很大的影响。 大部份的病毒都是把电脑程式及数据破坏。下面描述了病毒制造的不同破坏及影响。 

           有些电脑病毒例如 FormatC (macro virus)及Stoned Daniela, 当它们被触发时,会无条件地把硬磁碟格式化及删除磁碟上所有系统档案。以AOL4Free Trojan Horse为例子,它附在电子邮件讯息上并以AOL4FREE.COM为档案名。其实它是用DOS的公用程式 (utility) -- BATEXEC 1.5版本由成批文件(batch file)转换过来的[这个公用程式是用来转换一些很大的成批文件去更 快的速度]。 

           这个Trojan Horse首先会在DOS裏的不同目录找寻DELTREE.EXE这个档案,然後用这个档案把硬磁碟裏的所有档 案删除。当档案被删除後,它会显示一个DOS错误讯息:"BadCommand or file name″以及一个猥亵的讯息(obscene message)。如果这病毒找不到DELTREE.EXE的话,它就不能把档案删除,但猥亵的讯息(obscene message)仍会出现。

           有些病毒, 如Monkey(Stoned. Empire. Monkey)及AntiEXE,会感染主启动记录(Master Boot Record MBR)及DOS启动磁区(Dos Boot Sector),之後它会降低记忆体及硬磁碟的效能,直至当我们的用电脑时萤光幕上显示一些讯息 或有其他损坏。 

           以AntiEXE为例子,在启动过程时载入的主启动记录(MBR),该病毒会把这个没有 被感染的MBR贮存在硬磁碟中柱(Cylinder) O,边(Side) O,磁区(Sector)13的位置。然後病毒会把它的病毒编码放在MBR裏,并且把已感染 的MBR写在硬磁碟中柱(Cylinder) O,边(Side) O,扇区(Sector)1的位置。当AntiEXE病毒在记忆体活跃时,它就会把由任何磁碟读取得来的有毒 MBR及\或DBS重新传入一个清洁相同的地区(clean counterpart)。随著在磁碟读取过程时把MBR及\或DBS安放,病毒会找寻一特定的*.EXE档案(它的 身份到现在还没有知道),然後把档案破坏。 

           另一例子,One Half会把大约一半的硬磁碟编加密码,并且会显示一段讯息:Disk is one half. Press any key to continue.″ 如果我们用一般的方法去除MBR中的病毒,所有在密码区的数据都会流失。


          5楼2006-11-15 02:22
          回复
            类别:

            开机型病毒(Boot Strap Sector Virus) 
            档案型病毒 (File Infector Virus) 
            复合型病毒 (Multi-Partite Virus) 
            千面人病毒 (Polymorphic/Mutation Virus) 
            巨集病毒 (Macro Virus)


            6楼2006-11-15 02:23
            回复
              开机型病毒 (Boot Strap Sector Virus):

               开机型病毒是藏匿和感染磁碟片或硬碟的第一个磁区,即我们平常所说的Boot Sector。开机型病毒藉由开机动作而侵入记忆体,若你用已感染的磁片开机,那麼病毒将立即感染到你的硬碟。因为DOS的架构设计, 使得开机型病毒可以於每次开机时, 在作业系统还没被载入之前就被载入到记忆体中, 这个特性使得病毒可以针对DOS的各类中断 (Interrupt) 得到完全的控制, 并且拥有更大的能力去进行传染与破坏。开机型病毒是以猴子(Monkey)病毒最为经典,另外像是曾经流行一阵子的米开朗基罗病毒(又名石头三号病毒)也是属於此类型的病毒。

              开机型病毒又可以分为:

              传统开机型病毒。传统开机型病毒大多经由磁碟传染,进入电脑後再伺机传染其他档案,最有名的例子是米开朗基罗病毒。 
              隐型开机型病毒。隐型开机型病毒感染的是硬碟的开机磁区,它伪造开机磁区的资料,使防毒软件以为系是正常的。 
              目录型开机型病毒。它只感染电脑的档案配置表(FAT),一但你的档案配置表被破坏後,你的电脑档案读写就会不正常,甚至失去档案。


              7楼2006-11-15 02:23
              回复
                档案型病毒 (File Infector Virus):

                 档案型病毒通常寄生在可执行档(如 *.COM, *.EXE等)中。当这些档案被执行时, 病毒的程式就跟著被执行。我们常见的档案型病毒有Connie系到病毒与耶路撒冷(Jerusalem)系列病毒等等。档案型的病毒依传染方式的不同, 又分成非常驻型、常驻型和隐形三种:


                非常驻型病毒(Non-memory Resident Virus) : 非常驻型病毒将自己寄生在 *.COM, *.EXE或是 *.SYS的档案中。当这些中毒的程式被执行时,就会尝试地去传染给另一个或多个档案。 

                常驻型病毒(Memory Resident Virus) :常驻型病毒躲在记忆体中,其行为就好像是寄生在各类的低阶功能一般(如 Interrupts),由於这个原因, 常驻型病毒往往对磁碟造成更大的伤害。一旦常驻型病毒进入了记忆体中, 只要执行档被执行, 它就对其进行感染的动作, 其效果非常显著。将它赶出记忆体的唯一方式就是冷开机(完全关掉电源之後再开机)。 
                隐形档案型病毒:它会把自己植入作业系统里面,当程式向作业系统要求中断服务时,它就会感染那个提出要的程式,而且看起来不像被感染的样子。


                8楼2006-11-15 02:23
                回复
                  复合型病毒 (Multi-Partite Virus):

                   复合型病毒兼具开机型病毒以及档案型病毒的特性。它们可以传染 *.COM, *.EXE 档,也可以传染磁碟的开机系统区(Boot Sector)。由於这个特性,使得这种病毒具有相当程度的传染力。一旦发病,其破坏的程度将会非常可观!例如:台湾曾经流行的大榔头(Hammer),欧洲流行的Flip翻转病毒皆是。


                  9楼2006-11-15 02:24
                  回复
                    千面人病毒 (Polymorphic/Mutation Virus):

                     千面人病毒可怕的地方,在於每当它们繁殖一次,就会以不同的病毒码传染到别的地方去。每一个中毒的档案中,所含的病毒码都不一样,对於扫描固定病毒码的防毒软体来说,无疑是一个严重的考验!如Whale病毒依附於.COM档时,几乎无法找到相同的病毒码,而Flip病毒则只有2 byte的共同病毒码(好像戴面具只剩两个眼睛露出来)。


                    10楼2006-11-15 02:24
                    回复
                      巨集病毒 (Macro Virus):

                       巨集病毒是目前最热门的话题,它主要是利用软体本身所提供的巨集能力来设计病毒,所以凡是具有写巨集能力的软体都有巨集病毒存在的可能,如Word、Excel、AmiPro都相继传出巨集病毒危害的事件,在台湾最著名的例子正是Taiwan NO.1 Word巨集病毒


                      11楼2006-11-15 02:24
                      回复
                        传播:

                        电脑病毒一定要在电脑系统裏才能传播。这提供了很多的途径。例如如果你在别的电脑下载或执行一个已经被感染的程式,这样你的电脑亦会被病毒所传染。

                         病毒程式第一件要做的事通常是把自己复制[电脑病毒主要是传播、隐藏及破坏电脑系统]。病毒会把附在一处可以有利於自己执行的系统裏。在运作电脑时,病毒可在很短的时间内把自己复制多个。 
                         电脑病毒蔓延的主要方式是透过软件的分享。如果软件是透过人手散布出去的,病毒蔓延的速度会比由BBS或国际网络慢得多。 

                         由於文书处理系统及国际网络十分受欢迎,所以电脑病毒例如宏集病毒(marco virus)很容易在很短的日子裏传播到无数用家的电脑系统裏。现在很多人都会用到文书处理器,并且附在电子邮件中传送给其他人。如果这文件是带有病毒的话,收件人亦会被传染。 

                         现在很多电子邮件程式都会把接收到的邮件自动地放在文书处理器开启,所以收件人是在没有选择的情况下被传染病毒。 

                         另一电脑病毒传播的除径就是CD。现在翻版CD的情况十分严重,尤其在香港。这些翻版CD很多时都会带有病毒,但由於CD不能用来编写,所以CD裏的病毒亦不能被清除。另外,一些软件制造商为了教训这些用翻版软件的人,他们故意设计一种病毒放在他们的软件中。如果用家用的是正版软件,病毒就不会发作;相反如果用的是反翻软件,病毒程式就会执行[破坏系统]。


                        12楼2006-11-15 02:25
                        回复
                          测验:

                          对曾中过电脑病毒的朋友,都知道电脑病毒是什麼样子。例如是档案的长度和日期忽然改变,系统执行速度下降或出现一些奇怪的讯息或者无故当机,严重的是硬碟被重新格式化。电脑病毒如前文所说的那麼神通广大,那麼我们常用的防毒软件是如何去发现它们的呢?他们就是利用所谓的病毒码(Virus Pattern)。 
                           所谓的病毒码其实可以想像成是犯人的指纹, 当防毒软体公司收集到一只新的病毒时, 他们就会从这个病毒程式中截取一小段独一无二而且足以表示这只病毒的二进位程式码 (Binary Code) , 来当做扫毒程式辨认此病毒的依据, 而这段独一无二的二进位程式码就是所谓的病毒码。 

                           在电脑中所有可以执行的程式(如 *.EXE,*.COM) 几乎都是由二进位程式码所组成, 也就是电脑的最基本语言-- 机械码。就连当红的文件巨集病毒, 虽然它只是包含在Word文件档案中的巨集, 可是它的巨集程式也是以二进位码的方式存在於Word文件档中。

                          防毒软体常使用的病毒测试技术: 

                          病毒码扫描法 
                          加总比对法 (Check Sum) 
                          人工智慧陷阱(Rule-based) 
                          软体模拟扫描法 
                          VICE(Virus Instruction Code Emulation) - 先知扫描法 
                          即时的I/O扫描(Realtime I/O Scan) 
                          文件巨集病毒陷阱(MacroTrapTM) 

                          病毒码扫描法


                           将新发现的病毒加以分析後, 根据其特徵, 编成病毒码, 加入资料库中。以後每当执行扫毒程式时, 便能立刻扫描程式档案, 并作病毒码比对, 即能侦测到是否有病毒。病毒码扫描法又快又有效率( 例如趋势科技的PC-cillin及Server Protect, 利用深层扫描技术, 在即时扫瞄各个或大或小的档案时,平均只需1/20秒的时间), 大多数防毒软体均采用这种方式, 但其缺点是无法侦测到未知的新病毒及以变种病毒。

                          加总比对法 (Check-sum)

                           根据每个程式的档案名称、大小、时间、日期及内容, 加总为一个检查码, 再将检查码附於程式的後面, 或是将所有检查码放在同一个资料库中, 再利用此Check-sum系统, 追踪并记录每个程式的检查码是否遭更改, 以判断是否中毒。一个很简单的例子就是, 当您把车停下来之後, 将里程表的数字写下来。那麼下次您再开车时, 只要比对一下里程表的数字, 那麼您就可以断定是否有人偷开了您的车子。这种技术可侦测到各式的病毒, 但最大的缺点就是误判断高, 且无法确认是哪种病毒感染的。对於隐形飞机式病毒, 亦无法侦测到。

                          人工智慧陷阱(Rule-based) 

                          人工智慧陷阱是一种监测电脑行为的常驻式扫描技术。它将所有病毒所产生的行为归纳起来, 一旦发现记忆体的程式有任何不当的行为, 系统就会有所警觉, 并告知使用。这种技术的优点是执行速度快、手续简便, 且可以侦测到各式病毒;其缺点就是程式设计难, 且不容易考虑周全。不过在这千变万化的病毒世界中, 人工智慧陷阱扫描技术是一个至少具有保全功能的新观点。目前趋势科技的PC-Cillin, 就对病毒的可疑行为设下了将近12道的陷阱, 以达到预防重於治疗的目标。


                          软体模拟扫描法

                           软体模拟技术专门用来对付千面人病毒(Polymorphic /Mutation Virus)。千面人病毒在每次传染时, 都以不同的随机乱数加密於每个中毒的档案中, 传统病毒码比对的方式根本就无法找到这种病毒。软体模拟技术则是成功地模拟CPU执行, 在其设计的DOS虚拟机器(Virtual Machine)下假执行病毒的变体引擎解码程式, 安全并确实地将多型体病毒解开,使其显露原本的面目, 再加以扫描。


                          VICE ( Virus Instruction Code Emulation) - 先知扫描法

                           VICE先知扫描技术是继软体模拟後的一大技术上突破。既然软体模拟可以建立一个保护模式下的DOS虚拟机器, 模拟CPU动作并假执行程式以解开变体引擎病毒, 那麼应用类似的技术也可以用来分析一般程式检查可疑的病毒码。因此VICE将工程师用来判断程式是否有病毒码存在的方法, 分析归纳成专家系统知识库, 再利用软体工程的模拟技术(Software Emulation)假执行新的病毒, 则可分析出新病毒码对付以後的病毒。


                          即时的I/O扫描(Realtime I/O Scan) 

                           Realtime I/O Scan的目的在於即时地对资料的输入/输出动作做病毒码比对的动作, 希望能够在病毒尚未被执行之前, 就能够防堵下来。理论上, 这样的即时扫描程式虽然会影响到整体的资料传输速率, 但是使用Realtime I/O scan, 档案传送进来之後, 就等於扫过了一次毒, 整体来说, 是没有什麼差别的。


                          文件巨集病毒陷阱(MacroTrapTM)

                           MacroTrapTM 是结合了病毒码比对与人工智慧陷阱的技术,依病毒行为模式(Rule base) 来侦测已知及未知的巨集病毒。其中,配合OLE2技术,可将巨集与文件分开,使得扫描速度变得飞快,而且更可有效地将巨集病毒彻底清除!


                          14楼2006-11-15 02:29
                          回复
                            防治:

                            预防篇 
                            治疗篇 
                            电脑受病毒感染的先兆 

                             电脑病毒的防治包括了两方面,一是预防,二是治毒。古人有云,预防胜於治疗,所以预防电脑病毒对保护你的电脑系统免受病毒破坏是非常重要的。但是,亡羊补牢,为时未晚也,治毒和预防都不可忽视。

                            预防篇
                            提倡尊重知识产权的观念,支持使用合法原版的软件,拒绝使用翻版软件,只有这样才能够确实降低使用者电脑发生中毒的机会。 

                            平常就要将重要的资料备份起来,毕竟解毒软体不能完全还原中毒的资料,只有靠自己的备份才是最重要的。 

                            建立一张紧急救援磁片,而且是乾净可开机,DOS的版本与硬碟相同,同时里面还要有以下程式:FDISK.EXE、FORMAT.COM、UNFORMAT.COM、SYS.COM、UNDELETE.EXE、SCANDISK.EXE、扫毒软体所备份的启动磁区及硬碟分割表档案。如果你有PCTOOLS或Norton Utility等软体,用它们来帮助你做一张紧急救援磁片,它们甚至可以还原CMOS资料,或是灾後重建资料。(别忘了贴上防写标签。) 

                            不要随便使用来路不明的档案或磁碟,就算要使用,先用扫毒软体扫一扫再用。 

                            随时注意特殊的档案(如COMMAND.COM、EMM386.EXE、WIN.COM、SMARTDRV.COM等)的长度与日期,以及记忆体使用的情形。利用MEM.EXE或MEMMAKER等来检查传统记忆体(Conventional Memory)有否640K(655360Bytes)?一般来说, 假如您的 BIOS 没有挪做其它用途的话, 那您的电脑八成是中毒了! 

                            避免用软碟开机,甚且是别人的磁片。 

                            准备一些好的防毒、扫毒、解毒软体,并且定期使用。 

                            建立正确病毒基本观念,了解病毒感染、发作的原理,可以提高自己的警觉心。 

                            学习灾後重建资料的技巧,别以为DIR看到一堆乱码就救不回来了,其实有很多软体修复资料的功能很强大,学会使用它们是很有帮助的。

                            治疗篇

                            请熟记以下的六字口诀:

                            关(Step 1;关闭电源) 

                            开(Step 2;以乾净磁片开机) 

                            扫(Step 3;用防毒软体扫瞄病毒) 

                            除(Step 4;若侦测到病毒,则删除之) 

                            救(Step 5;若侦测到的是硬碟分割区或启动区病毒时,可用"硬碟紧急救援磁片"救回资料,或用乾净DOS磁片中的FDISK指令,执行FDISK/MBR以救回硬碟分割区资料;另可在A槽中执行A>SYS C:(C为中毒磁碟)以救回资料;若不行就只有重新格式化硬碟了 

                            防(Step 6;好了!您的电脑安全了。不过为了预防未来不再受到病毒之侵害,建议您经常更新你的防毒软件,以建立完善且坚固的病毒防疫系统) 

                            如何知道电脑受到病毒感染? 

                            若您在作业时发现电脑有以下的状况发生时,那您必须执行电脑病毒侦测软体,以确认是否遭受电脑病毒的感染: 

                             

                            电脑执行速度比平常缓慢。 

                            不寻常的错误讯息出现。 

                            程式载入时间比平常久。 

                            可执行档的大小改变系统。 

                            记忆体容量忽然大量减少。 

                            记忆体内增加来路不明的常驻程式。 

                            磁碟坏轨突然增加。 

                            磁碟可利用的空间突然减少。 

                            档案名称、副档名、日期、属性被更改过。 

                            档案的内容多出了一些奇怪的资料。


                            15楼2006-11-15 02:30
                            回复
                              防毒软件:

                              ACT/SOPHOS Anti-Virus Software 
                              ALWIL Software 
                              Deep Freeze Security Software 
                              InterScan VirusWall 
                              Iris Anti Virus 
                              Leprechaun Software 
                              Panda Software   
                              Vipro 
                              Virus, Inc. 
                              ViruSafe 
                              VirusBuster 
                              网际网路防毒软体


                              17楼2006-11-15 02:32
                              回复