1、恶意软件的分析与防范恶意软件的分析与防范严严 飞飞武汉大学计算机学院武汉大学计算机学院课时安排课时安排1.恶意代码概述(9-26)2.计算机病毒(9-29,10-13)3.网络蠕虫(10-20,10-27)4.网页/移动恶意代码(11-3,11-10)5.后门、木马和Rootkit(11-17)6.常用检测技术和工具(11-24)7.课堂讨论与练习(11-24,占用一节课)8.期末考试(12-1)第二讲第二讲 传统的计算机病毒传统的计算机病毒一生物病毒二计算机病毒的基本常识三计算机病毒相关技术一、生物病毒一、生物病毒u病毒是目前发现的最小微生物,其突出的特点是:(1)个体极小。(2)寄生性。病
2、毒没有独立的代谢活动,在活体外不具有任何生命特征。(3)没有细胞结构,化学组成与繁殖方式较简单。病毒没有细胞结构,大多数病毒是由蛋白质与核酸组成的大分子,而且只含单一类型核酸DNA或RNA。一、生物病毒(续)一、生物病毒(续)u埃博拉病毒:Ebolal无有效治疗l艾博拉的糖性蛋白质会把白血球包住,使之失效,病毒本身攻击血管壁细胞。u艾滋病病毒:AIDSl易变异,l破坏免疫系统,由其他病毒感染致死u冠状病毒:SARSlRNA病毒、易变异l有严重的后遗症:肺部纤维化RNA造成;骨质疏松激素造成u狂犬病:hydrophobia lRNA病毒,侵蚀中枢神经l疫苗可控,但一旦发病,100%死亡Ebola
3、AIDSSARShydrophobia2.1 计算机病毒的概念计算机病毒的概念1.何为计算机病毒?是一段附着在其它程序上的、可以自我繁殖的程序代码。复制后生成的新病毒同样具有感染其它程序的功能。Frederick CohenFred Cohen认为:病毒不是利用操作系统运行的错误和缺陷的程序,病毒是正常的用户程序。2.1 计算机病毒的概念计算机病毒的概念u广义定义:从广义上讲,凡能够引起计算机故障,破坏计算机数据的程序统称为计算机病毒。依据此定义,诸如恶意代码,蠕虫,木马等均可称为计算机病毒。在国内,专家和研究者对计算机病毒也做过不尽相同的定义,但一直没有公认的明确定义。2.1 计算机病毒的概
4、念计算机病毒的概念u直至1994年2月18日,我国正式颁布实施了中华人民共和国计算机信息系统安全保护条例,在条例第二十八条中明确明确指出:“计算机病毒,是指编制或者在计算机程序中插入的破坏计算机功能或者毁坏数据,影响计算机使用,并能自我复制的一组计算机指令或者程序代码”。此定义具有法律性、权威性2.2 计算机病毒的生命周期计算机病毒的生命周期在生命周期中,病毒一般会经历如下四个阶段:u潜伏阶段u传染阶段u触发阶段u发作阶段2.3 计算机病毒的特征与结构计算机病毒的特征与结构u计算机病毒的特征 传染性 非授权性 隐蔽性 潜伏性 破坏性 不可预见性 可触发性 2.3 计算机病毒的特征与结构计算机病
5、毒的特征与结构u计算机病毒的基本结构2.3 计算机病毒的特征与结构计算机病毒的特征与结构/*引导功能模块*/将病毒程序寄生于宿主程序中;加载计算机程序;病毒程序随其宿主程序的运行进入系统;/*传染功能模块;*/*破坏功能模块;*/main()调用引导功能模块;A:do 寻找传染对象;if(传染条件不满足)goto A;while(满足传染条件);调用传染功能模块;while(满足破坏条件)激活病毒程序;调用破坏功能模块;运行宿主源程序;if 不关机goto A;关机;计算机病毒的基本框架 2.4 计算机病毒小史计算机病毒小史u潘多拉的盒子是谁打开的?程序名 发布时间描述达尔文(Darwin)(
6、即著名的Core War磁芯大战)1962在这个计算机游戏中,程序在计算机之间互相残杀并在内存中进行自我复制,为了生存而斗争。PERVADE1975这个例程附在一个叫做“ANLAML”的游戏上,允许程序在系统中传播自身的拷贝。Elk Cloner1982针对Apple II的恶作剧程序Ken Thompson 1983在某颁奖典礼上公开证实电脑病毒的存在,并介绍自己的制作手法。潘多拉盒子给打开了!Dewdney 1984在科学美国人撰文,讨论磁芯大战。Brain(巴基斯坦病毒)1986这是已知的第一个以MS-DOS计算机为目标的病毒(第一个真正意义上的PC病毒)2.4 计算机病毒小史计算机病毒
7、小史u1983 年 11 月 3 日,弗雷德科恩(Fred Cohen)博士研制出一种在运行过程中可以复制自身的破坏性程序,伦艾德勒曼(Len Adleman)将它命名为计算机病毒(computer viruses),并在每周一次的计算机安全讨论会上正式提出。u1988年冬天,正在康乃尔大学攻读的莫里斯,把一个被称为“蠕虫”的电脑病毒送进了美国最大的电脑网络互联网。1988年11月2日下午5点,互联网的管理人员首次发现网络有不明入侵者。当晚,从美国东海岸到西海岸,互联网用户陷入一片恐慌。uCIH病毒,又名“切尔诺贝利”,是一种可怕的电脑病毒。它是由台湾大学生陈盈豪编制的,九八年五月间,陈盈豪还
8、在大同工学院就读时,完成以他的英文名字缩写“CIH”名的电脑病毒起初据称只是为了“想纪念一下1986的灾难”或“使反病毒软件公司难堪”。u年仅18岁的高中生杰弗里李帕森因为涉嫌是“冲击波”电脑病毒的制造者于2003年8月29日被捕。对此,他的邻居们表示不敢相信。在他们的眼里,杰弗里李帕森是一个电脑天才,而决不是什么黑客,更不会去犯罪。u李俊,大专毕业l大于1000万用户染毒l损失数亿元人民币l处罚:判刑4年,已出狱u磁芯大战(by RedCode)lREF:http:/ MOV 0,1l稍复杂一点儿 bomb DAT#0dwarf ADD#4,bombMOV bomb,bombJMP dwar
9、fEND dwarf 2.4 计算机病毒的分类计算机病毒的分类 1.按照计算机病毒攻击的操作系统分类lMicrosoft DOS(1981)lMicrosoft Windows 95/98/ME(1995)lMicrosoft Windows NT/2000/XP/VISTA/WIN 7(1996)lUnix(Linux)lMacintosh(MacMag病毒、Scores病毒)lOS/2(AEP病毒)l其他操作系统(Windows Mobile/Symbian/Android)2.4 计算机病毒的分类计算机病毒的分类2.2.按照计算病毒的攻击类型分类:按照计算病毒的攻击类型分类:l攻击微型计
10、算机的病毒l攻击小型计算机的病毒l攻击工业计算机的病毒:如本周报道的StuxNet,攻击西门子设备,目标:伊朗布什尔核电站?l攻击便携式电子设备的病毒2.4 计算机病毒的分类计算机病毒的分类3.3.按照计算机病毒的链接方式分类按照计算机病毒的链接方式分类 l源码型病毒:该病毒攻击高级语言编写的程序,该病毒在高级语言所编写的程序编译前插入到原程序中,经编译成为合法程序的一部分。l嵌入型病毒:这种病毒是将自身嵌入到现有程序中,把计算机病毒的主体程序与其攻击的对象以插入的方式链接。这种计算机病毒是难以编写的,一旦侵入程序体后也较难消除。如果同时采用多态性病毒技术,超级病毒技术和隐蔽性病毒技术,将给当
11、前的反病毒技术带来严峻的挑战。2.4 计算机病毒的分类计算机病毒的分类3.3.按照计算机病毒的链接方式分类按照计算机病毒的链接方式分类(续续)lshell病毒:外壳型病毒将其自身包围在主程序的四周,对原来的程序不作修改。这种病毒最为常见,易于编写,也易于发现,一般测试文件的大小即可知。l译码型病毒(宏病毒/脚本病毒):该种病毒一般应藏在Office等文档中,如VBS、WSH、JSl操作系统型病毒:这种病毒用自身的程序加入或取代部分操作系统进行工作,具有很强的破坏力,可以导致整个系统的瘫痪。圆点病毒和大麻病毒就是典型的操作系统型病毒。2.4 计算机病毒的分类计算机病毒的分类4.按照计算机病毒的破
12、坏情况分类 u二分法l良性病毒:是不包含有对计算机系统产生直接破坏作用的代码的计算机病毒。l恶性病毒:指在代码中包含有损伤和破坏计算机系统的操作。u四分法l无害型:无害型:除了传染时减少磁盘的可用空间外,对系统没有其它影响。l无危险型:无危险型:这类病毒仅仅是减少内存、显示图像、发出声音及同类音响。l危险型:危险型:这类病毒在计算机系统操作中造成严重的错误。l非常危险型:非常危险型:这类病毒删除程序、破坏数据、清除系统内存区和操作系统中重要的信息。2.4 计算机病毒的分类计算机病毒的分类5.5.按传播媒介来分类按传播媒介来分类l单机病毒:单机病毒的载体是磁盘或光盘。常见的是通过从软盘传入硬盘,
13、感染系统后,再传染其它软盘。软盘又感染其它系统。l网络病毒:网络为病毒提供了最好的传播途径,它的破坏力是前所未有的。网络病毒利用计算机网络的协议或命令以及Email等进行传播,常见的是通过QQ、BBS、视频、音频、图片、Email、FTP、Web等传播。2.4 计算机病毒的分类计算机病毒的分类6.6.按寄生方式和传染途径分类按寄生方式和传染途径分类:l引导型病毒:主要使用病毒的全部或部分代码取代正常的引导记录,而将正常的引导记录隐藏在其他地方l文件型病毒:寄生在可执行程序中,一旦程序执行,病毒就被激活,进行预定活动。l引导型兼文件型病毒:BOTH2.5 计算机病毒的基本防治计算机病毒的基本防治
14、u病毒防治的公理1.不存在这样一种反病毒软硬件,能够防治未来产生的所有病毒。2.不存在这样一种病毒程序,能够让未来的所有反病毒软硬件都无法检测。3.目前的反病毒软件和硬件以及安全产品是都易耗品,必须经常进行更新、升级。4.病毒产生在前,反病毒手段滞后的现状,将是一个长期的过程。病毒防治的一般步骤病毒防治的一般步骤u检测:一旦系统被感染,就立即断定病毒的存在并对其进行定位。u鉴别:对病毒进行检测后,辨别该病毒的类型。u消除:在确定病毒的类型后,从受染文件中删除所有的病毒并恢复程序的正常状态。消除被感染系统中的所有病毒,目的是阻止病毒的进一步传染。病毒防治的基本手段病毒防治的基本手段u第一代:简单的扫描:病毒的特征 u第二代:启发式的扫描:启发性知识,实体完整性检查 u第三代:主动设置陷阱:行为监测u第四代:全面的预防措施:虚拟机、沙箱7.中国绿盟lhttp:/;http:/l网站内容包括安全论坛、安全文献、系统工具、工具介绍等。8.安全焦点lhttp:/l网站内容包括安全文献、安全工具、安全漏洞、焦点论坛等。Any Question?