文件型病毒
西安邮电学院
计算机病毒实验报告书
院系名称 : 专业名称 班
级 :
通信与信息工程学院
信息安全 安全0804班 余伟东(0608-3121) 2011年06月23日
学生姓名 : 实验时间 :
一.验证利用OllyDBG修改病毒感染程序
(1)进入实验平台,单击工具栏“实验目录”按钮,进入文件型病毒实验目录。新建文件夹“text”,将文件夹“hei”下的hei0.exe(未感染病毒的可执行程序)复制到text目录中。点击工具栏“LaborDayVirus”按钮,将目录中的LaborDayVirus.exe也复制到text目录中。将系统时间调整为5月1日,双击text目录下LaborDayVirus.exe感染hei0.exe文件,观察hei0.exe感染病毒前后的大小变化。
(2)单击工具栏“OllyDBG”按钮启动ollyDbg1.10,单击文件菜单中的“打开”项,选择要修复的hei0.exe。由于病毒修改了原程序的入口点,因此会有程序入口点超出代码范围的提示,如图32-1-1所示。
单击“确定”按钮继续,程序会停在病毒修改后的程序入口点(hei0.exe的入口点为0x00403200)上,在代码中找到最后一个jmp指令处(病毒感染完成后将跳转回原程序),按F2设置断点,按F9运行,程序会在刚设置的jmp断点上中断,查看EAX寄存器的值(EAX=0x401000注意上面提到的断点,下面还会用到),按F7单步执行到下一条指令地址,点选鼠标右键,选择菜单中的“用ollyDump脱壳调试进程”,选中重建输入表方式1,方式2各脱壳一次,分别保存为1.exe、2.exe。测试两个程序是否还具有病毒的传染特性。
二.病毒感染机制分析
(1)准备一个没有感染病毒的可执行程序和一个感染病毒的可执行程序,将其分别重命名为hei0.ex_,hei.ex_,并复制到一个新的目录下用于调试、对比。
(2)进入实验平台,点击工具栏中的“PE”按钮,使用PE Explorer分别打开hei.ex_和hei0.ex_文件,对比两个文件入口点(OEP--Address of Entry Point)和Image Base并分别记录。
点击“View”菜单中的“Section Headers”进入Section Headers页面,比对Section Header的数据信息并记录到下面表格。
由于一般文件型病毒只有代码段,数据和代码都存在一起。所以可以断定hei.ex_的.data段多出的数据即为病毒代码和数据。
(3)进入实验平台,单击工具栏中“UE”按钮,打开Ultra Editor,选择“文件”菜单中的“比较文件”功能对hei0.ex_和hei.ex_进行二进制比对,可以发现在hei.ex_文件的0xa00处开始的数据块为存储于.data节的病毒代码。
「注」 该段数据在.data节是因为hei0.ex_和hei.ex_的.data节都开始于各自文件偏移的Point to Raw Data处。这段数据是病毒代码是因为
0xa00 - 0x800 + 0x403000 = 0x403200(感染病毒文件hei.ex_ OEP的虚地址(VA))。
(4)使用Ultra Editor打开hei.ex_定位光标
到16找
hei.ex_的.data块的Point to Raw Data位置,并以进制形式查找hei0.ex_的入口点(注意字节顺序),查数据的文件偏移。
(5)定位上面例子中hei.ex_的jmp断点,在jmp指令上面会发现如下的汇编代码:
0x40481c在病毒代码之后为被加载到内存的病毒数据的存储区,0x1000为hei0.exe OEP的RVA,0x1000在反汇编代码中的表示是0010。
(6)进入实验平台,单击工具栏中的“实验目录”按钮,利用上面的方法分别对文件分析目录下的已感染和未感染文件进行调试,注意比对感染病毒文件和原文件特征,将各个病毒文件的最后一个跳转指令的目的地址记录到如下表。
(7)通过以上的分析,就可以初步断定,该病毒的感染方式是: 修改跳转指令,PE病毒类型。 三.设计专杀工具
参考例程vk.exe源码(位于目录C:\ExpNIS\AntiVir-Lab\VirusExp\Filevirus\下),编写病毒专杀程序,清除laborDayVirus.exe病毒。
通过步骤二,了解到LaborDayVirus.exe病毒的感染机制,这里通过所学的知识对病毒进行清除。
(1)查找病毒寄存特征。
入口点在代码节(.text)之外,病毒代码存储于最后一节、且在病毒代码段后的一个双字为原程序代码入口RVA(在.text节范围内)。 文件病毒代码以0xE58BE0FF结尾。
(以上特征是对简化后的病毒特征的总结、实际中的病毒要复杂的多); (2)查找原程序入口点。
(3)修改程序入口点为原程序入口点。
(4)修改病毒感染的最后一个节表的SizeOfRawData,使之大小变为去掉病毒代码时的大小。
(5)修改PE文件选项头中的SizeOfImage为去掉病毒代码后的大小。 (6)清除病毒代码数据。
(7)保存清除病毒代码后的文件。
实验心得: 通过这次实验,我充分认识到病毒理论知识的重要性,并且亲身实践操作各种软件,对病毒进行分析,总结各种类型的病毒的特点,研究病毒的感染特点和感染途径,学习了如何检查,删除病毒,并且在实验中充分接触虚拟机的各种应用。 实验过程中,需要预习实验要求和实验目,原理等等相关资料,做到有目标性的操作,不盲目,细心仔细的按照实验步骤进行试验,截取实验结果图片,保存实验过程的各种数据,做好实验。
相关文章
- 毕业论文-计算机病毒的原理与防范研究
- 8.计算机安全习题及答案
- 病毒查杀及预防
- 计算机病毒发展简史
- 实验三+PE文件型病毒分析
- 计算机病毒
- 7月文章试读:恶意代码的亲密接触--病毒编程技术(上)
- 浅议常见病毒的类型.破坏形式及其防范措施
- 抛弃杀软――赤手空拳再战病毒木马
本科毕业论 论文题目: 计算机病毒的原理与防范研究 学生姓名: 学号: 专业: 指导教师: 学 院: Xxxx 年 x 月 xx 日 文 毕业论文(设计)内容介绍 目 录 摘要................................ ...
1. 防止软磁盘感染计算机病毒的一种有效方法是______. A. 软盘远离电磁场 B. 定期对软磁盘作格式化处理 C. 对软磁盘加上写保护 D. 禁止与有病毒的其他软磁盘放在一起 2. 发现微型计算机染有病毒后,较为彻底的清除方法是___ ...
课程名称:病毒查杀及预防 一:病毒含义 计算机病毒:是指编制或者在计算机程序中插入的破坏计算机功能或者毁坏数据.影响计算机使用,并能自我复制的一组计算机指令或者程序代码 二:病毒特征 传染性:病毒通过自身复制来感染正常文件,达到破坏电脑正常 ...
计算机病毒发展简史 [提要]普通病毒 网络蠕虫病毒 变形病毒 [内容]计算机病毒的发展过程可分为三个阶段:普通计算机病毒.网络蠕虫病毒.和变形病毒. 普通计算机病毒 20世纪60年代初,美国贝尔实验室里,三个年轻的程序员编写了一个名为&qu ...
实验三 PE文件型病毒分析 一.实验目的 1.了解PE文件型病毒的基本原理: 2.了解病毒的感染.破坏机制,认识病毒程序: 3.掌握文件型病毒的特征和内在机制. [注意事项] 1.本病毒程序用于实验目的,面向实验演示,侧重于演示和说明病毒的 ...
计算机病毒复习题 计算机病毒知识测试题(单选) 1.下面是关于计算机病毒的两种论断,经判断_A_____ (1)计算机病毒也是一种程序,它在某些条件上激活,起干扰破坏作用,并能传染到其他程序中去:(2)计算机病毒只会破坏磁盘上的数据. A) ...
7月文章试读:恶意代码的亲密接触--病毒编程技术(上) 文 / 温玉洁 生活在网络时代,无论是作为一名程序员抑或是作为一名普通的电脑使用者,对病毒这个词都已经不再陌生.网络不仅仅是传播信息的快速通道,从另外一个角度来看,也是病毒得以传播和滋 ...
第29卷第6期 2009年l2月 成宁学院学报 V01.29,No.6Dec.2009 Journalof)(ianIlingUniversity 文章编号:1006-5342(2009)06-0043-02 浅议常见病毒的类型.破坏形式及 ...
1 巧用进程识别病毒.木马 电脑启动后,在系统中只要运行一个程序,系统便会在后台加载相应的进程.简单地说,进程是操作系统当前运行的执行程序,因此一个软件可能只有一个进程,也有可能同时有两个以上的进程在执行.在系统当前运行的执行程序里包括:系 ...