计算机病毒ComputerVirus

上传人:xian****812 文档编号:324058944 上传时间:2022-07-12 格式:PPT 页数:103 大小:1.01MB
返回 下载 相关 举报
计算机病毒ComputerVirus_第1页
第1页 / 共103页
计算机病毒ComputerVirus_第2页
第2页 / 共103页
计算机病毒ComputerVirus_第3页
第3页 / 共103页
计算机病毒ComputerVirus_第4页
第4页 / 共103页
计算机病毒ComputerVirus_第5页
第5页 / 共103页
点击查看更多>>
资源描述

《计算机病毒ComputerVirus》由会员分享,可在线阅读,更多相关《计算机病毒ComputerVirus(103页珍藏版)》请在金锄头文库上搜索。

1、计算机病毒ComputerVirus傅建明武汉大学计算机学院武汉大学计算机学院 1第二章预备知识主要内容:病毒的基本结构,磁盘结构,文件系统,文件格式讲授:原理介绍与工具演示结合基础和重点2第二章预备知识2.1计算机病毒的结构2.2计算机磁盘的管理2.3Windows文件系统2.4计算机的引导过程2.5中断与异常2.6内存管理2.7EXE文件格式3计算机病毒的结构1.ECHOOFF2.IF%DRIVE%=A:GOTOEND1233.IF%DRIVE%=C:GOTOEND1234.IF%COMSPEC%=C:WINDOWSCOMMAND.COMSETDRIVE=A:5.IF%COMSPEC%=A

2、:COMMAND.COMSETDRIVE=C:6.IFNOTEXIST%DRIVE%AUTOEXEC.BATGOTOEND1237.COPYVIRUS.BAT%DRIVE%NUL8.ECHOCALLVIRUSTMP.DAT9.COPY%DRIVE%AUTOEXEC.BAT+TMP.DAT%DRIVE%AUTOEXEC.BATNUL10.DELTMP.DATNUL11.EchoBATVirusTest!IwillformatyourDisk!12.:END12313.ECHOON4计算机病毒的结构 触发机制:这部分主要用来控制病毒的传播和发作。传播机制:这部分主要负责病毒的感染和传播。表现机制:

3、这个模块也称为破坏模块。51磁盘结构硬盘基本结构盘面基本结构 6计算机磁盘的管理硬硬 盘盘 的的 三三 个个 基基 本本 参参 数数-CHS-CHS:磁 头 数(Heads)、柱面数(Cylinders)、扇区数(Sectors)、以及相应的寻址方式。磁头数(磁头数(HeadsHeads):8bit;0-255柱面数(柱面数(CylindersCylinders):10bit,0-1023扇区数扇区数(Sectors(Sectors):):6bit,0-63一个硬盘实际最大容量为:255*1023*63*512/1048576=8024 MB7计算机磁盘的管理NORMAL,普通模式:这是原来的

4、IDE硬盘工作模式,支持的最大柱面数为1024,最大磁头数为16,每磁道最大扇区数为63,该模式可管理的最大硬盘容量为:10241663512=504MB8计算机磁盘的管理LBA(LogicalBlockAddressing),逻辑块地址模式:在该模式下设置的柱面数、磁头数和每磁道扇区数并不是实际的物理参数,在访问硬盘时,由EIDE控制器把由柱面数、磁头数和每磁道扇区数等参数确定的逻辑地址转换为实际的物理地址。支持的最大磁头数为255,其他参数与普通模式相同。因此,该模式可管理的最大硬盘容量为:102425563512=8024 MB9计算机磁盘的管理LBA=(cylinder*heads_p

5、er_cylinder+heads)*sectors_per_track+(sector-1)C=LBADIV(PH*PS)H=(LBADIVPS)modPHS=LBAmodPS10计算机磁盘的管理ATA-1:C-16bit,H-8bit,S-4bit(28bit)MAX=6553625516512/1024KB=127.5GBInt13:C-10bit,H-8bit,C-6bit(24bit)EXInt13:64bit线性地址BigDrives:CHS每个参数为16bit=48bit64T支持大硬盘:芯片组,主板BIOS,操作系统。11计算机磁盘的管理LARGE,大 模 式:当 硬 盘 的

6、柱 面 数 超 过1024 而 又 不 为LBA 所 支 持 时,可 采 用 该 模 式。LARGE 模 式 参 数 设 置 方 法 是 把 柱 面 数 除 以2,把 磁 头 数 乘 以2,使 柱 面 减 少 容 量 不 变。例 如,硬 盘 物 理 柱 面 数 为1460,磁 头 数 为16,进 入LARGE 模 式 则 变 为 柱 面 数730,磁 头 数32,这 样 在 一 些 软 件 看 来 柱 面 数 小 于 了1024。该 模 式 可 管 理 的 硬 盘 最 大 容 量 为:-1024 32 63 512=1GB 12计算机磁盘的管理主引导扇区(Boot Sector)也就是硬盘的第

7、一个扇区(0面0磁道1扇区),它由主引导记录(Main Boot Record,MBRMBR),硬盘主分区表(Disk Partition Table,DPTDPT)和引导扇区标记(Boot Record ID)三部分组成。该扇区在硬盘进行分区时产生,用FDISK/MBR可重建标准的主引导记录程序。13计算机磁盘的管理000H08AH:主引导程序,用于寻找活动分区08BH0D9H:启动字符串0DAH1BCH:保留1BEH1FDH:硬盘主分区表1FEH1FFH:结束标记(55AA)14生物病毒15计算机磁盘的管理16第一个主分区:绝对地址(LBA)=0000003f=63 总扇区数=00FA08

8、BD=16386237第二个主分区:绝对地址(LBA)=00FA08fc=16386300 总扇区数=0856dbc5=13991008517计算机磁盘的管理第一个虚拟MBR,start sector=16386300,其内容如上:分 区 项 1第 一 个 逻 辑 D,相 对 地 址(LBA)=0000003f=63,总 扇 区 数=01de7f61=31358817分区项2相对地址(LBA)=01de7fa0=31358880,总扇区数=01d4f039=30732345(用PQ时为30732282,减去了虚拟MBR的63个扇区)18计算机磁盘的管理第二虚拟MBR的位置为=16386300+

9、31358880=47745180192021计算机磁盘的管理硬盘的逻辑分区排列如下:MBR(63)+DBR(32)+FAT1+FAT2+DATADBR=DOS引导程序+BPB(BIOS Parameter Block)22系统启动过程简介系统启动过程简介1.开机2.BIOS加电自检(Power On Self Test,即POST),此时电源稳定后,CPU从内存地址0ffff:0000处开始执行。3.将硬盘第一个扇区(0头0道1扇区,也就是Boot Sector)读入内存地址0000:7c00 处。4.检查(WORD)0000:7dfe是否等于0 xaa55,若不等于则转去尝试其它启动介质,

10、如果没有其它启动介质则显示“No ROM BASIC”,然后死机。5.跳转到0000:7c00 处执行MBR中的程序。6.MBR首先将自己复制到0000:0600 处,然后继续执行。7.在主分区表中搜索标志为活动的分区。如果发现没有活动分区或有不止一个活动分区,则显示“Invalid partition table”并挂起系统。8.将活动分区的第一个扇区读入内存地址0000:7c00处。9.检查(WORD)0000:7dfe是否等于0 xaa55,若不等于则显示“Missing Operating System”然后停止,或尝试软盘启动。10.跳转到0000:7c00处继续执行特定系统的启动程

11、序。23扩展Int13H1 1数据类型约定数据类型约定 BYTE1 字节整型(8位)WORD2 字节整型(16位)DWORD4 字节整型(32位)QWORD8 字节整型(64位)24扩展Int13H磁盘地址数据包磁盘地址数据包Disk Address Packet(DAP)DAP是基于绝对扇区地址的,因此利用DAP,Int13H可以轻松地逾越1024柱面的限制,因为它根本就不需要CHS的概念。DAP的结构如下:STRUCTDiskAddressPacketBYTEPacketSize;/数据包尺寸(=16字节)BYTEReserved;/=0WORDBlockCount;/要传输的数据块个数(

12、以扇区为单位)DWORDBufferAddr;/传输缓冲地址(segment:offset)QWORDBlockNum;/磁盘起始绝对块地址;25扩展Int13Hds:di=磁盘地址数据包(disk address packet)dl=驱动器号ah=功能代码/返回码1.检查扩展Int 13H是否存在(41h),2.扩展读(42h),3.扩展写(43h),4.校验扇区(44h),5.扩展定位(47h),6.取得驱动器参数(48h)26Windows文件系统 对文件的读写,屏蔽底层操作。主引导记录(MasterBootRecord,MBR)、磁盘分配表(PartitionTable,DPT)、引导

13、记录(BootRecord,DBR)、文件分配表(FileAllocationTable,FAT)根目录(RootDirectory)簇:若干扇区合并为一个簇,其数目必须是2的幂方。微软把这些簇称为分配单元(AllocationUnit)2728FATFAT12,FAT16,FAT32,NTFS,HPFS,VFSFAT12,FAT16,FAT32,NTFS,HPFS,VFSFATFAT中的一个点表示该簇的状态,是空闲,中的一个点表示该簇的状态,是空闲,还是占用。如果该点用还是占用。如果该点用12bit12bit表示为表示为FAT12,FAT12,用用32bit32bit表示为表示为FAT32F

14、AT32。则最大簇。则最大簇空间:空间:FAT12FAT12的最大空间为的最大空间为=2*12=4K=2*12=4KFAT16FAT16的最大空间为的最大空间为=2*16=64K=2*16=64KFAT32FAT32的最大空间为的最大空间为=2*32=4G=2*32=4G29FAT32DBR+FAT1+FAT2+DATA没有采用固定的FDT,根目录起始扇区由BDR指定。FDT:每项32字节,一簇为4k,则最多的目录项=8*512/32=128个30FAT32(1)0-7字节 文件正名。(2)8-10字节 文件扩展名。(3)11字节 文件属性,按二进制位定义,最高两位保留未用,0至5位分别是只读

15、位、隐藏位、系统位、卷标位、子目录位、归档位。(4)11-13字节 仅长文件名目录项用,用来存储其对应的短文件名目录项的文件名字节校验和等。(5)13-15字节 24位二进制的文件建立时间,其中的高5位为小时,次6位为分钟。(6)16-17字节 16位二进制的文件建立日期,其中的高7位为相对于1980年的年份值,次4位为月份,后5位为月内日期。(7)18-19字节 16位二进制的文件最新访问日期,定义同(6)。(8)20-21字节 起始簇号的高16位。(9)22-23字节 16位二进制的文件最新修改时间,其中的高5位为小时,次6位为分钟,后5位的二倍为秒数。(10)24-25字节 16位二进制

16、的文件最新修改日期,定义同(6)。(11)26-27字节 起始簇号的低16位。(12)28-31字节 32位的文件字节长度。31FAT32其中第(4)至(8)项为以后陆续定义的。对于子目录项,其(12)为零;已删除目录项的首字节值为E5H。在可以使用长文件名的FAT32系统中,文件目录项保存该文件的短文件名,长文件名用若干个长文件名目录项保存,长文件名目录项倒序排在文件短目录项前面,全部是采用双字节内码保存的,每一项最多保存十三个字符内码,首字节指明是长文件名的第几项,11字节一般为0FH,12字节指明类型,13字节为校验和,26-27字节为零。3233簇号为3的数据=目录区34长文件名-SECURITY-ZHANG.LOG每一项最多保存13个字符内码:首字节为长文件名的第几项,0B=0F,0C指名类型,0D为校验码,1A-1B为0。32-6=26=13*2起始簇=157390335SECURITY-ZHANG.LOG的簇链起始簇=1573903-189160|x-189161|x-189162|x-189163|x-18916436计算机的引导过程 1.电源就开始向主板和其它设备供电

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号