密码算法应该抵抗什么攻击
A. 信息加密技术的加密技术分析
加密就是通过密码算术对数据进行转化,使之成为没有正确密钥任何人都无法读懂的报文。而这些以无法读懂的形式出现的数据一般被称为密文。为了读懂报文,密文必须重新转变为它的最初形式--明文。而含有用来以数学方式转换报文的双重密码就是密钥。在这种情况下即使一则信息被截获并阅读,这则信息也是毫无利用价值的。而实现这种转化的算法标准,据不完全统计,到现在为止已经有近200多种。在这里,主要介绍几种重要的标准。按照国际上通行的惯例,将这近200种方法按照双方收发的密钥是否相同的标准划分为两大类:一种是常规算法(也叫私钥加密算法或对称加密算法),其特征是收信方和发信方使用相同的密钥,即加密密钥和解密密钥是相同或等价的。比较着名的常规密码算法有:美国的DES及其各种变形,比如3DES、GDES、New DES和DES的前身Lucifer; 欧洲的IDEA;日本的FEAL N、LOKI?91、Skipjack、RC4、RC5以及以代换密码和转轮密码为代表的古典密码等。在众多的常规密码中影响最大的是DES密码,而最近美国NIST(国家标准与技术研究所)推出的AES将有取代DES的趋势,后文将作出详细的分析。常规密码的优点是有很强的保密强度,且经受住时间的检验和攻击,但其密钥必须通过安全的途径传送。因此,其密钥管理成为系统安全的重要因素。另外一种是公钥加密算法(也叫非对称加密算法)。其特征是收信方和发信方使用的密钥互不相同,而且几乎不可能从加密密钥推导解密密钥。比较着名的公钥密码算法有:RSA、背包密码、McEliece密码、Diffe Hellman、Rabin、Ong Fiat Shamir、零知识证明的算法、椭圆曲线、EIGamal算法等等⑷。最有影响的公钥密码算法是RSA,它能抵抗到目前为止已知的所有密码攻击,而最近势头正劲的ECC算法正有取代RSA的趋势。公钥密码的优点是可以适应网络的开放性要求,且密钥管理问题也较为简单,尤其可方便的实现数字签名和验证。但其算法复杂,加密数据的速率较低。尽管如此,随着现代电子技术和密码技术的发展,公钥密码算法将是一种很有前途的网络安全加密体制。这两种算法各有其短处和长处,在下面将作出详细的分析。 在私钥加密算法中,信息的接受者和发送者都使用相同的密钥,所以双方的密钥都处于保密的状态,因为私钥的保密性必须基于密钥的保密性,而非算法上。这在硬件上增加了私钥加密算法的安全性。但同时我们也看到这也增加了一个挑战:收发双方都必须为自己的密钥负责,这种情况在两者在地理上分离显得尤为重要。私钥算法还面临这一个更大的困难,那就是对私钥的管理和分发十分的困难和复杂,而且所需的费用十分的庞大。比如说,一个n个用户的网络就需要派发n(n-1)/2个私钥,特别是对于一些大型的并且广域的网络来说,其管理是一个十分困难的过程,正因为这些因素从而决定了私钥算法的使用范围。而且,私钥加密算法不支持数字签名,这对远距离的传输来说也是一个障碍。另一个影响私钥的保密性的因素是算法的复杂性。现今为止,国际上比较通行的是DES、3DES以及最近推广的AES。
数据加密标准(Data Encryption Standard)是IBM公司1977年为美国政府研制的一种算法。DES是以56 位密钥为基础的密码块加密技术。它的加密过程一般如下:
① 一次性把64位明文块打乱置换。
② 把64位明文块拆成两个32位块;
③ 用机密DES密钥把每个32位块打乱位置16次;
④ 使用初始置换的逆置换。
但在实际应用中,DES的保密性受到了很大的挑战,1999年1月,EFF和分散网络用不到一天的时间,破译了56位的DES加密信息。DES的统治地位受到了严重的影响,为此,美国推出DES的改进版本-- 三重加密(triple Data Encryption Standard)即在使用过程中,收发双方都用三把密钥进行加解密,无疑这种3*56式的加密方法大大提升了密码的安全性,按现在的计算机的运算速度,这种破解几乎是不可能的。但是我们在为数据提供强有力的安全保护的同时,也要化更多的时间来对信息进行三次加密和对每个密层进行解密。同时在这种前提下,使用这种密钥的双发都必须拥有3个密钥,如果丢失了其中任何一把,其余两把都成了无用的密钥。这样私钥的数量一下又提升了3倍,这显然不是我们想看到的。于是美国国家标准与技术研究所推出了一个新的保密措施来保护金融交易。高级加密标准(Advanced Encryption Standard)美国国家技术标准委员会(NIST)在2000年10月选定了比利时的研究成果Rijndael作为AES的基础。Rijndael是经过三年漫长的过程,最终从进入候选的五种方案中挑选出来的。
AES内部有更简洁精确的数学算法,而加密数据只需一次通过。AES被设计成高速,坚固的安全性能,而且能够支持各种小型设备。AES与3DES相比,不仅是安全性能有重大差别,使用性能和资源有效利用上也有很大差别。虽然到现在为止,我还不了解AES的具体算法但是从下表可以看出其与3DES的巨大优越性。
还有一些其他的一些算法,如美国国家安全局使用的飞鱼(Skipjack)算法,不过它的算法细节始终都是保密的,所以外人都无从得知其细节类容;一些私人组织开发的取代DES的方案:RC2、RC4、RC5等。 面对在执行过程中如何使用和分享密钥及保持其机密性等问题,1975年Whitefield Diffe和Marti Hellman提出了公开的密钥密码技术的概念,被称为Diffie-Hellman技术。从此公钥加密算法便产生了。
由于采取了公共密钥,密钥的管理和分发就变得简单多了,对于一个n个用户的网络来说,只需要2n个密钥便可达到密度。同时使得公钥加密法的保密性全部集中在及其复杂的数学问题上,它的安全性因而也得到了保证。但是在实际运用中,公共密钥加密算法并没有完全的取代私钥加密算法。其重要的原因是它的实现速度远远赶不上私钥加密算法。又因为它的安全性,所以常常用来加密一些重要的文件。自公钥加密问世以来,学者们提出了许多种公钥加密方法,它们的安全性都是基于复杂的数学难题。根据所基于的数学难题来分类,有以下三类系统目前被认为是安全和有效的:大整数因子分解系统(代表性的有RSA)、椭圆曲线离散对数系统(ECC)和离散对数系统 (代表性的有DSA),下面就作出较为详细的叙述。
RSA算法是由罗纳多·瑞维斯特(Rivet)、艾迪·夏弥尔(Shamir)和里奥纳多·艾德拉曼(Adelman)联合推出的,RAS算法由此而得名。它的安全性是基于大整数素因子分解的困难性,而大整数因子分解问题是数学上的着名难题,至今没有有效的方法予以解决,因此可以确保RSA算法的安全性。RSA系统是公钥系统的最具有典型意义的方法,大多数使用公钥密码进行加密和数字签名的产品和标准使用的都是RSA算法。它得具体算法如下:
① 找两个非常大的质数,越大越安全。把这两个质数叫做P和Q。
② 找一个能满足下列条件得数字E:
A. 是一个奇数。
B. 小于P×Q。
C. 与(P-1)×(Q-1)互质,只是指E和该方程的计算结果没有相同的质数因子。
③ 计算出数值D,满足下面性质:((D×E)-1)能被(P-1)×(Q-1)整除。
公开密钥对是(P×Q,E)。
私人密钥是D。
公开密钥是E。
解密函数是:
假设T是明文,C是密文。
加密函数用公开密钥E和模P×Q;
加密信息=(TE)模P×Q。
解密函数用私人密钥D和模P×Q;
解密信息=(CD)模P×Q。
椭圆曲线加密技术(ECC)是建立在单向函数(椭圆曲线离散对数)得基础上,由于它比RAS使用得离散对数要复杂得多。而且该单向函数比RSA得要难,所以与RSA相比,它有如下几个优点:
安全性能更高 加密算法的安全性能一般通过该算法的抗攻击强度来反映。ECC和其他几种公钥系统相比,其抗攻击性具有绝对的优势。如160位 ECC与1024位 RSA有相同的安全强度。而210位 ECC则与2048bit RSA具有相同的安全强度。
计算量小,处理速度快 虽然在RSA中可以通过选取较小的公钥(可以小到3)的方法提高公钥处理速度,即提高加密和签名验证的速度,使其在加密和签名验证速度上与ECC有可比性,但在私钥的处理速度上(解密和签名),ECC远比RSA、DSA快得多。因此ECC总的速度比RSA、DSA要快得多。
存储空间占用小 ECC的密钥尺寸和系统参数与RSA、DSA相比要小得多,意味着它所占的存贮空间要小得多。这对于加密算法在IC卡上的应用具有特别重要的意义。
带宽要求低 当对长消息进行加解密时,三类密码系统有相同的带宽要求,但应用于短消息时ECC带宽要求却低得多。而公钥加密系统多用于短消息,例如用于数字签名和用于对对称系统的会话密钥传递。带宽要求低使ECC在无线网络领域具有广泛的应用前景。
ECC的这些特点使它必将取代RSA,成为通用的公钥加密算法。比如SET协议的制定者已把它作为下一代SET协议中缺省的公钥密码算法。
B. 在现代密码学研究中什么保护是防止密码体被攻击的重点
在现代密码学研究中加解密算法保护是防止密码体被攻击的重点。
AES是美国国家标准技术研究所NIST旨在取代DES的21世纪的加密标准。 AES的基局氏乱本要求是,采用对称分组密码体制,密钥长度的最少支持为128、192、256,分组长度128位,算法应易于各种硬件和软件实现。
C. 密码芯片的主要攻击类型和对抗方法有哪些
是一个程序,一段可执行码 ,对计算机的正常使用进行破坏,使得电脑无法正常使用甚至整个操作系统或者电脑硬盘损坏。就像生物病毒一样,计算机病毒有独特的复制能力。计算机病毒可以很快地蔓延,又常常难以根除。它们能把自身附着在各种类型的文件上。当文件被复制或从一个用户传送到另一个用户时,它们就随同文件一起蔓延开来。这种程序不是独立存在的,它隐蔽在其他可执行的程序之中,既有破坏性,又有传染性和潜伏性。轻则影响机器运行速度,使机器不能正常运行;重则使机器处于瘫痪,会给用户带来不可估量的损失。通常就把这种具有破坏作用的程序称为计算机病毒。
除复制能力外,某些计算机病毒还有其它一些共同特性:一个被污染的程序能够传送病毒载体。当你看到病毒载体似乎仅仅表现在文字和图像上时,它们可能也已毁坏了文件、再格式化了你的硬盘驱动或引发了其它类型的灾害。若是病毒并不寄生于一个污染程序,它仍然能通过占据存贮空间给你带来麻烦,并降低你的计算机的全部性能。
计算机病毒具有以下几个特点:
(1) 寄生性
计算机病毒寄生在其他程序之中,当执行这个程序时,病毒就起破坏作用,而在未启动这个程序之前,它是不易被人发觉的。
(2) 传染性
计算机病毒不但本身具有破坏性,更有害的是具有传染性,一旦病毒被复制或产生变种,其速度之快令人难以预防。
(3) 潜伏性
有些病毒像定时炸弹一样,让它什么时间发作是预先设计好的。比如黑色星期五病毒,不到预定时间一点都觉察不出来,等到条件具备的时候一下子就爆炸开来,对系统进行破坏。
(4) 隐蔽性
计算机病毒具有很强的隐蔽性,有的可以通过病毒软件检查出来,有的根本就查不出来,有的时隐时现、变化无常,这类病毒处理起来通常很困难。
计算机受到病毒感染后,会表现出不同的症状,下边把一些经常碰到的现象列出来,供用户参考。
(1) 机器不能正常启动
加电后机器根本不能启动,或者可以启动,但所需要的时间比原来的启动时间变长了。有时会突然出现黑屏现象。
(2) 运行速度降低
如果发现在运行某个程序时,读取数据的时间比原来长,存文件或调文件的时间都增加了,那就可能是由于病毒造成的。
(3) 磁盘空间迅速变小
由于病毒程序要进驻内存,而且又能繁殖,因此使内存空间变小甚至变为“0”,用户什么信息也进不去。
(4) 文件内容和长度有所改变
一个文件存入磁盘后,本来它的长度和其内容都不会改变,可是由于病毒的干扰,文件长度可能改变,文件内容也可能出现乱码。有时文件内容无法显示或显示后又消失了。
(5) 经常出现“死机”现象
正常的操作是不会造成死机现象的,即使是初学者,命令输入不对也不会死机。如果机器经常死机,那可能是由于系统被病毒感染了。
(6) 外部设备工作异常
因为外部设备受系统的控制,如果机器中有病毒,外部设备在工作时可能会出现一些异常情况,出现一些用理论或经验说不清道不明的现象。
以上仅列出一些比较常见的病毒表现形式,肯定还会遇到一些其他的特殊现象,这就需要由用户自己判断了。
首先,在思想上重视,加强管理,止病毒的入侵。凡是从外来的软盘往机器中拷信息,都应该先对软盘进行查毒,若有病毒必须清除,这样可以保证计算机不被新的病毒传染。此外,由于病毒具有潜伏性,可能机器中还隐蔽着某些旧病毒,一旦时机成熟还将发作,所以,要经常对磁盘进行检查,若发现病毒就及时杀除。思想重视是基础,采取有效的查毒与消毒方法是技术保证。检查病毒与消除病毒目前通常有两种手段,一种是在计算机中加一块防病毒卡,另一种是使用防病毒软件工作原理基本一样,一般用防病毒软件的用户更多一些。切记要注意一点,预防与消除病毒是一项长期的工作任务,不是一劳永逸的,应坚持不懈。
计算机病毒是在什么情况下出现的?
计算机病毒的产生是计算机技术和以计算机为核心的社会信息化进程发展到一定阶段的必然产物。它产生的背景是:
(1)计算机病毒是计算机犯罪的一种新的衍化形式
计算机病毒是高技术犯罪, 具有瞬时性、动态性和随机性。不易取证, 风险小破坏大, 从而刺激了犯罪意识和犯罪活动。是某些人恶作剧和报复心态在计算机应用领域的表现。
(2)计算机软硬件产品的危弱性是根本的技术原因
计算机是电子产品。数据从输入、存储、处理、输出等环节, 易误入、篡改、丢失、作假和破坏;程序易被删除、改写;计算机软件设计的手工方式, 效率低下且生产周期长;人们至今没有办法事先了解一个程序有没有错误, 只能在运行中发现、修改错误, 并不知道还有多少错误和缺陷隐藏在其中。这些脆弱性就为病毒的侵入提供了方便。
(3)微机的普及应用是计算机病毒产生的必要环境
1983年11月3日美国计算机专家首次提出了计算机病毒的概念并进行了验证。几年前计算机病毒就迅速蔓延, 到我国才是近年来的事。而这几年正是我国微型计算机普及应用热潮。微机的广泛普及, 操作系统简单明了, 软、硬件透明度高, 基本上没有什么安全措施, 能够透彻了解它内部结构的用户日益增多, 对其存在的缺点和易攻击处也了解的越来越清楚, 不同的目的可以做出截然不同的选择。目前, 在IBM PC系统及其兼容机上广泛流行着各种病毒就很说明这个问题。
计算机病毒是如何分类的?
计算机病毒可以从不同的角度分类。若按其表现性质可分为良性的和恶性的。良性的危害性小, 不破坏系统和数据, 但大量占用系统开销, 将使机器无法正常工作,陷于瘫痪。如国内出现的圆点病毒就是良性的。恶性病毒可能会毁坏数据文件, 也可能使计算机停止工作。若按激活的时间可分为定时的和随机的。定时病毒仅在某一特定时间才发作, 而随机病毒一般不是由时钟来激活的。若按其入侵方式可分操作系统型病毒( 圆点病毒和大麻病毒是典型的操作系统病毒), 这种病毒具有很强的破坏力(用它自己的程序意图加入或取代部分操作系统进行工作), 可以导致整个系统的瘫痪;原码病毒, 在程序被编译之前插入到FORTRAN、C、或PASCAL等语言编制的源程序里, 完成这一工作的病毒程序一般是在语言处理程序或连接程序中;外壳病毒, 常附在主程序的首尾, 对源程序不作更改, 这种病毒较常见, 易于编写, 也易于发现, 一般测试可执行文件的大小即可知;入侵病毒, 侵入到主程序之中, 并替代主程序中部分不常用到的功能模块或堆栈区, 这种病毒一般是针对某些特定程序而编写的。若按其是否有传染性又可分为不可传染性和可传染性病毒。不可传染性病毒有可能比可传染性病毒更具有危险性和难以预防。若按传染方式可分磁盘引导区传染的计算机病毒、操作系统传染的计算机病毒和一般应用程序传染的计算机病毒。若按其病毒攻击的机种分类, 攻击微型计算机的, 攻击小型机的, 攻击工作站的, 其中以攻击微型计算机的病毒为多, 世界上出现的病毒几乎90%是攻击IBM PC机及其兼容机。
计算机病毒的定义
一 计算机病毒的定义计算机病毒(Computer Virus)在《中华人民共和国计算机信息系统安全保护条例》中被明确定义,病毒“指编制或者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或者程序代码”。
二 计算机病毒的特点计算机病毒是人为的特制程序,具有自我复制能力,很强的感染性,一定的潜伏性,特定的触发性和很大的破坏性。
三 病毒存在的必然性计算机的信息需要存取、复制、传送,病毒作为信息的一种形式可以随之繁殖、感染、破坏,而当病毒取得控制权之后,他们会主动寻找感染目标,使自身广为流传。
四 计算机病毒的长期性病毒往往会利用计算机操作系统的弱点进行传播,提高系统的安全性是防病毒的一个重要方面,但完美的系统是不存在的,过于强调提高系统的安全性将使系统多数时间用于病毒检查,系统失去了可用性、实用性和易用性,另一方面,信息保密的要求让人们在泄密和抓住病毒之间无法选择。病毒与反病毒将作为一种技术对抗长期存在,两种技术都将随计算机技术的发展而得到长期的发展。
五 计算机病毒的产生病毒不是来源于突发或偶然的原因.一次突发的停电和偶然的错误,会在计算机的磁盘和内存中产生一些乱码和随机指令,但这些代码是无序和混乱的,病毒则是一种比较完美的,精巧严谨的代码,按照严格的秩序组织起来,与所在的系统网络环境相适应和配合起来,病毒不会通过偶然形成,并且需要有一定的长度,这个基本的长度从概率上来讲是不可能通过随机代码产生的。病毒是人为的特制程序现在流行的病毒是由人为故意编写的,多数病毒可以找到作者信息和产地信息,通过大量的资料分析统计来看,病毒作者主要情况和目的是:一些天才的程序员为了表现自己和证明自己的能力,处于对上司的不满,为了好奇,为了报复,为了祝贺和求爱,为了得到控制口令,为了软件拿不到报酬预留的陷阱等.当然也有因政治,军事,宗教,民族.专利等方面的需求而专门编写的,其中也包括一些病毒研究机构和黑客的测试病毒.
六 计算机病毒分类根据多年对计算机病毒的研究,按照科学的、系统的、严密的方法,计算机病毒可分类如下:按照计算机病毒属性的方法进行分类,计算机病毒可以根据下面的属性进行分类:
其他计算机病毒介绍
按照计算机病毒存在的媒体进行分类根据病毒存在的媒体,病毒可以划分为网络病毒,文件病毒,引导型病毒。网络病毒通过计算机网络传播感染网络中的可执行文件,文件病毒感染计算机中的文件(如:COM,EXE,DOC等),引导型病毒感染启动扇区(Boot)和硬盘的系统引导扇区(MBR),还有这三种情况的混合型,例如:多型病毒(文件和引导型)感染文件和引导扇区两种目标,这样的病毒通常都具有复杂的算法,它们使用非常规的办法侵入系统,同时使用了加密和变形算法。 按照计算机病毒传染的方法进行分类根据病毒传染的方法可分为驻留型病毒和非驻留型病毒,驻留型病毒感染计算机后,把自身的内存驻留部分放在内存(RAM)中,这一部分程序挂接系统调用并合并到操作系统中去,他处于激活状态,一直到关机或重新启动.非驻留型病毒在得到机会激活时并不感染计算机内存,一些病毒在内存中留有小部分,但是并不通过这一部分进行传染,这类病毒也被划分为非驻留型病毒。 按照计算机病毒破坏的能力进行分类根据病毒破坏的能力可划分为以下几种:无害型除了传染时减少磁盘的可用空间外,对系统没有其它影响。无危险型这类病毒仅仅是减少内存、显示图像、发出声音及同类音响。危险型这类病毒在计算机系统操作中造成严重的错误。非常危险型这类病毒删除程序、破坏数据、清除系统内存区和操作系统中重要的信息。这些病毒对系统造成的危害,并不是本身的算法中存在危险的调用,而是当它们传染时会引起无法预料的和灾难性的破坏。由病毒引起其它的程序产生的错误也会破坏文件和扇区,这些病毒也按照他们引起的破坏能力划分。一些现在的无害型病毒也可能会对新版的DOS、Windows和其它操作系统造成破坏。例如:在早期的病毒中,有一个“Denzuk”病毒在360K磁盘上很好的工作,不会造成任何破坏,但是在后来的高密度软盘上却能引起大量的数据丢失。 按照计算机病毒特有的算法进行分类根据病毒特有的算法,病毒可以划分为:伴随型病毒这一类病毒并不改变文件本身,它们根据算法产生EXE文件的伴随体,具有同样的名字和不同的扩展名(COM),例如:XCOPY.EXE的伴随体是XCOPY.COM。病毒把自身写入COM文件并不改变EXE文件,当DOS加载文件时,伴随体优先被执行到,再由伴随体加载执行原来的EXE文件。“蠕虫”型病毒通过计算机网络传播,不改变文件和资料信息,利用网络从一台机器的内存传播到其它机器的内存,计算网络地址,将自身的病毒通过网络发送。有时它们在系统存在,一般除了内存不占用其它资源。寄生型病毒除了伴随和“蠕虫”型,其它病毒均可称为寄生型病毒,它们依附在系统的引导扇区或文件中,通过系统的功能进行传播,按其算法不同可分为:练习型病毒病毒自身包含错误,不能进行很好的传播,例如一些病毒在调试阶段。诡秘型病毒它们一般不直接修改DOS中断和扇区数据,而是通过设备技术和文件缓冲区等DOS内部修改,不易看到资源,使用比较高级的技术。利用DOS空闲的数据区进行工作。变型病毒(又称幽灵病毒)这一类病毒使用一个复杂的算法,使自己每传播一份都具有不同的内容和长度。它们一般的作法是一段混有无关指令的解码算法和被变化过的病毒体组成。
七、计算机病毒的发展在病毒的发展史上,病毒的出现是有规律的,一般情况下一种新的病毒技术出现后,病毒迅速发展,接着反病毒技术的发展会抑制其流传。操作系统升级后,病毒也会调整为新的方式,产生新的病毒技术。它可划分为:
DOS引导阶段
1987年,计算机病毒主要是引导型病毒,具有代表性的是“小球”和“石头”病毒。当时的计算机硬件较少,功能简单,一般需要通过软盘启动后使用.引导型病毒利用软盘的启动原理工作,它们修改系统启动扇区,在计算机启动时首先取得控制权,减少系统内存,修改磁盘读写中断,影响系统工作效率,在系统存取磁盘时进行传播.1989年,引导型病毒发展为可以感染硬盘,典型的代表有“石头2”。 DOS可执行阶段1989年,可执行文件型病毒出现,它们利用DOS系统加载执行文件的机制工作,代表为“耶路撒冷”,“星期天”病毒,病毒代码在系统执行文件时取得控制权,修改DOS中断,在系统调用时进行传染,并将自己附加在可执行文件中,使文件长度增加。1990年,发展为复合型病毒,可感染COM和EXE文件。 伴随,批次型阶段1992年,伴随型病毒出现,它们利用DOS加载文件的优先顺序进行工作,具有代表性的是“金蝉”病毒,它感染EXE文件时生成一个和EXE同名但扩展名为COM的伴随体;它感染文件时,改原来的COM文件为同名的EXE文件,再产生一个原名的伴随体,文件扩展名为COM,这样,在DOS加载文件时,病毒就取得控制权.这类病毒的特点是不改变原来的文件内容,日期及属性,解除病毒时只要将其伴随体删除即可。在非DOS操作系统中,一些伴随型病毒利用操作系统的描述语言进行工作,具有典型代表的是“海盗旗”病毒,它在得到执行时,询问用户名称和口令,然后返回一个出错信息,将自身删除。批次型病毒是工作在DOS下的和“海盗旗”病毒类似的一类病毒。 幽灵,多形阶段1994年,随着汇编语言的发展,实现同一功能可以用不同的方式进行完成,这些方式的组合使一段看似随机的代码产生相同的运算结果。幽灵病毒就是利用这个特点,每感染一次就产生不同的代码。例如“一半”病毒就是产生一段有上亿种可能的解码运算程序,病毒体被隐藏在解码前的数据中,查解这类病毒就必须能对这段数据进行解码,加大了查毒的难度。多形型病毒是一种综合性病毒,它既能感染引导区又能感染程序区,多数具有解码算法,一种病毒往往要两段以上的子程序方能解除。 生成器,变体机阶段1995年,在汇编语言中,一些数据的运算放在不同的通用寄存器中,可运算出同样的结果,随机的插入一些空操作和无关指令,也不影响运算的结果,这样,一段解码算法就可以由生成器生成,当生成器的生成结果为病毒时,就产生了这种复杂的“病毒生成器” ,而变体机就是增加解码复杂程度的指令生成机制。这一阶段的典型代表是“病毒制造机” VCL,它可以在瞬间制造出成千上万种不同的病毒,查解时就不能使用传统的特征识别法,需要在宏观上分析指令,解码后查解病毒。 网络,蠕虫阶段1995年,随着网络的普及,病毒开始利用网络进行传播,它们只是以上几代病毒的改进.在非DOS操作系统中,“蠕虫”是典型的代表,它不占用除内存以外的任何资源,不修改磁盘文件,利用网络功能搜索网络地址,将自身向下一地址进行传播,有时也在网络服务器和启动文件中存在。 视窗阶段1996年,随着Windows和Windows95的日益普及,利用Windows进行工作的病毒开始发展,它们修改(NE,PE)文件,典型的代表是DS.3873,这类病毒的机制更为复杂,它们利用保护模式和API调用接口工作,解除方法也比较复杂。 宏病毒阶段1996年,随着Windows Word功能的增强,使用Word宏语言也可以编制病毒,这种病毒使用类Basic语言,编写容易,感染Word文档等文件,在Excel和AmiPro出现的相同工作机制的病毒也归为此类,由于Word文档格式没有公开,这类病毒查解比较困难 互连网阶段1997年,随着因特网的发展,各种病毒也开始利用因特网进行传播,一些携带病毒的数据包和邮件越来越多,如果不小心打开了这些邮件,机器就有可能中毒. 爪哇(Java),邮件炸弹阶段1997年,随着万维网(Wold Wide Web)上Java的普及,利用Java语言进行传播和资料获取的病毒开始出现,典型的代表是JavaSnake病毒,还有一些利用邮件服务器进行传播和破坏的病毒,例如Mail-Bomb病毒,它会严重影响因特网的效率。
八 他的破坏行为计算机病毒的破坏行为体现了病毒的杀伤能力。病毒破坏行为的激烈程度取决于病毒作者的主观愿望和他所具有的技术能量。数以万计不断发展扩张的病毒,其破坏行为千奇百怪,不可能穷举其破坏行为,而且难以做全面的描述,根据现有的病毒资料可以把病毒的破坏目标和攻击部位归纳如下:
攻击系统数据区,攻击部位包括:硬盘主引寻扇区、Boot扇区、FAT表、文件目录等。一般来说,攻击系统数据区的病毒是恶性病毒,受损的数据不易恢复。 攻击文件病毒对文件的攻击方式很多,可列举如下:删除、改名、替换内容、丢失部分程序代码、内容颠倒、写入时间空白、变碎片、假冒文件、丢失文件簇、丢失数据文件等。 攻击内存内存是计算机的重要资源,也是病毒攻击的主要目标之一,病毒额外地占用和消耗系统的内存资源,可以导致一些较的大程序难以运行。病毒攻击内存的方式如下:占用大量内存、改变内存总量、禁止分配内存、蚕食内存等。 干扰系统运行病毒会干扰系统的正常运行,以此做为自己的破坏行为,此类行为也是花样繁多,可以列举下述诸方式:不执行命令、干扰内部命令的执行、虚假报警、使文件打不开、使内部栈溢出、占用特殊数据区、时钟倒转、重启动、死机、强制游戏、扰乱串行口、并行口等。 速度下降病毒激活时,其内部的时间延迟程序启动,在时钟中纳入了时间的循环计数,迫使计算机空转,计算机速度明显下降。 攻击磁盘攻击磁盘数据、不写盘、写操作变读操作、写盘时丢字节等。 扰乱屏幕显示病毒扰乱屏幕显示的方式很多,可列举如下:字符跌落、环绕、倒置、显示前一屏、光标下跌、滚屏、抖动、乱写、吃字符等。 键盘病毒干扰键盘操作,已发现有下述方式:响铃、封锁键盘、换字、抹掉缓存区字符、重复、输入紊乱等。 喇叭许多病毒运行时,会使计算机的喇叭发出响声。有的病毒作者通过喇叭发出种种声音,有的病毒作者让病毒演奏旋律优美的世界名曲,在高雅的曲调中去杀戮人们的信息财富,已发现的喇叭发声有以下方式:演奏曲子、警笛声、炸弹噪声、鸣叫、咔咔声、嘀嗒声等。 攻击CMOS 在机器的CMOS区中,保存着系统的重要数据,例如系统时钟、磁盘类型、内存容量等,并具有校验和。有的病毒激活时,能够对CMOS区进行写入动作,破坏系统CMOS中的数据。 干扰打印机典型现象为:假报警、间断性打印、更换字符等。
九、计算机病毒的危害性计算机资源的损失和破坏,不但会造成资源和财富的巨大浪费,而且有可能造成社会性的灾难,随着信息化社会的发展,计算机病毒的威胁日益严重,反病毒的任务也更加艰巨了。1988年11月2日下午5时1分59秒,美国康奈尔大学的计算机科学系研究生,23岁的莫里斯(Morris)将其编写的蠕虫程序输入计算机网络,致使这个拥有数万台计算机的网络被堵塞。这件事就像是计算机界的一次大地震,引起了巨大反响,震惊全世界,引起了人们对计算机病毒的恐慌,也使更多的计算机专家重视和致力于计算机病毒研究。1988年下半年,我国在统计局系统首次发现了“小球”病毒,它对统计系统影响极大,此后由计算机病毒发作而引起的“病毒事件”接连不断,前一段时间发现的CIH、美丽杀等病毒更是给社会造成了很大损失。
3.计算机病毒是一个程序,一段可执行码。就像生物病毒一样,计算机病毒有独特的复制能力。计算机病毒可以很快地蔓延,又常常难以根除。它们能把自身附着在各种类型的文件上。当文件被复制或从一个用户传送到另一个用户时,它们就随同文件一起蔓延开来。
除复制能力外,某些计算机病毒还有其它一些共同特性:一个被污染的程序能够传送病毒载体。当你看到病毒载体似乎仅仅表现在文字和图像上时,它们可能也已毁坏了文件、再格式化了你的硬盘驱动或引发了其它类型的灾害。若是病毒并不寄生于一个污染程序,它仍然能通过占据存贮空间给你带来麻烦,并降低你的计算机的全部性能。
可以从不同角度给出计算机病毒的定义。一种定义是通过磁盘、磁带和网络等作为媒介传播扩散,能“传染” 其他程序的程序。另一种是能够实现自身复制且借助一定的载体存在的具有潜伏性、传染性和破坏性的程序。还有的定义是一种人为制造的程序,它通过不同的途径潜伏或寄生在存储媒体(如磁盘、内存)或程序里。当某种条件或时机成熟时,它会自生复制并传播,使计算机的资源受到不同程序的破坏等等。这些说法在某种意义上借用了生物学病毒的概念,计算机病毒同生物病毒所相似之处是能够侵入计算机系统和网络,危害正常工作的“病原体”。它能够对计算机系统进行各种破坏,同时能够自我复制, 具有传染性。所以, 计算机病毒就是能够通过某种途径潜伏在计算机存储介质(或程序)里, 当达到某种条件时即被激活的具有对计算机资源进行破坏作用的一组程序或指令集合。
计算机病毒寄生方式有哪几种?
(1)寄生在磁盘引导扇区中:任何操作系统都有个自举过程, 例如DOS在启动时, 首先由系统读入引导扇区记录并执行它, 将DOS读入内存。病毒程序就是利用了这一点, 自身占据了引导扇区而将原来的引导扇区内容及其病毒的其他部分放到磁盘的其他空间, 并给这些扇区标志为坏簇。这样, 系统的一次初始化, 病毒就被激活了。它首先将自身拷贝到内存的高端并占据该范围, 然后置触发条件如INT 13H中断(磁盘读写中断)向量的修改, 置内部时钟的某一值为条件等, 最后引入正常的操作系统。以后一旦触发条件成熟, 如一个磁盘读或写的请求, 病毒就被触发。如果磁盘没有被感染(通过识别标志)则进行传染。
(2)寄生在可执行程序中:这种病毒寄生在正常的可执行程序中, 一旦程序执行病毒就被激活, 于是病毒程序首先被执行, 它将自身常驻内存, 然后置触发条件, 也可能立即进行传染, 但一般不作表现。做完这些工作后, 开始执行正常的程序, 病毒程序也可能在执行正常程序之后再置触发条件等工作。病毒可以寄生在源程序的首部也可以寄生在尾部, 但都要修改源程序的长度和一些控制信息, 以保证病毒成为源程序的一部分, 并在执行时首先执行它。这种病毒传染性比较强。
(3)寄生在硬盘的主引导扇区中:例如大麻病毒感染硬盘的主引导扇区, 该扇区与DOS无关。
计算机病毒的工作过程应包括哪些环节?
计算机病毒的完整工作过程应包括以下几个环节:
(1)传染源:病毒总是依附于某些存储介质, 例如软盘、 硬盘等构成传染源。
(2)传染媒介:病毒传染的媒介由工作的环境来定, 可能是计算机网, 也可能是可移动的存储介质, 例如软磁盘等。
(3)病毒激活:是指将病毒装入内存, 并设置触发条件, 一旦触发条件成熟, 病毒就开始作用--自我复制到传染对象中, 进行各种破坏活动等。
(4)病毒触发:计算机病毒一旦被激活, 立刻就发生作用, 触发的条件是多样化的, 可以是内部时钟, 系统的日期, 用户标识符,也可能是系统一次通信等等。
(5)病毒表现:表现是病毒的主要目的之一, 有时在屏幕显示出来, 有时则表现为破坏系统数据。可以这样说, 凡是软件技术能够触发到的地方, 都在其表现范围内。
(6)传染:病毒的传染是病毒性能的一个重要标志。在传染环节中, 病毒复制一个自身副本到传染对象中去。
不同种类的计算机病毒的传染方法有何不同?
从病毒的传染方式上来讲, 所有病毒到目前为止可以归结于三类:感染用户程序的计算机病毒;感染操作系统文件的计算机病毒;感染磁盘引导扇区的计算机病毒。这三类病毒的传染方式均不相同。
感染用户应用程序的计算机病毒的传染方式是病毒以链接的方式对应用程序进行传染。这种病毒在一个受传染的应用程序执行时获得控制权, 同时扫描计算机系统在硬盘或软盘上的另外的应用程序, 若发现这些程序时, 就链接在应用程序中, 完成传染, 返回正常的应用程序并继续执行。
感染操作系统文件的计算机病毒的传染方式是通过与操作系统中所有的模块或程序链接来进行传染。由于操作系统的某些程序是在系统启动过程中调入内存的, 所以传染操作系统的病毒是通过链接某个操作系统中的程序或模块并随着它们的运行进入内存的。病毒进入内存后就判断是否满足条件时则进行传染。