计算机病毒分析与对抗学习--------(一)
2007-09-04 21:25
288 查看
哎,虽然是信息安全专业,但是对病毒啊,网络安全啊这些东西都不是很明白,一直也没有系统的学习一下。现在快找工作了,不学就不行了,于是乎,拿起了我敬爱的老师写的书,开啃!!
要学习病毒知识,基本的系统的知识可少不了,所以先把Windows 的基本的系统知识回顾一下:
1 硬盘
容量计算:磁头数*拄面数*扇面数
INT 13H 调用:BIOS提供的磁盘基本输入输出中断调用,可以完成硬盘的复位,读写,校验,定位,诊断,格式化等功能。采用CHS(既按磁头8,柱面10和扇区数6)寻址,最大只能访问8GB。
扩展INT13H(Extended INT 13H):采用线形寻址方式,还加入了对可拆卸介质的支持。
2 Boot Sector
Boot Sector 也就是硬盘的第一个扇区, 它由 MBR (Master Boot Record),DPT (Disk Partition Table) 和 Boot Record ID 三部分组成.MBR 又称作主引导记录占用 Boot Sector 的前 446 个字节 ( 0 to 0x1BD ),存放系统主引导程序 (它负责从活动分区中装载并运行系统引导程序).DPT 即主分区表占用 64 个字节 (0x1BE to 0x1FD), 记录了磁盘的基本分区信息. 主分区表分为四个分区项, 每项 16 字节, 分别记录了每个主分区的信息(因此最多可以有四个主分区). Boot Record ID 即引导区标记占用两个字节 (0x1FE and 0x1FF), 对于合法引导区, 它等于 0xAA55, 这是判别引导区是否合法的标志.
Boot Sector 的具体结构如下图所示 (参见 NightOwl 大侠的文章):
0000 |------------------------------------------------|
| Master Boot Record |
| 主引导记录(446字节) |
01BD | |
01BE |------------------------------------------------|
01CD | 分区信息 1(16字节) |
01CE |---------------------------------------------|
01DD | 分区信息 2(16字节) |
01DE |---------------------------------------------|
01ED | 分区信息 3(16字节) |
01EE |--------------------------------------------|
01FD | 分区信息 4(16字节) |
|-------------------------------------------|
| 01FE | 01FF |
| 55 | AA |
|-------------------------------------------|
3 FAT文件格式
1) FAT链
FAT是一个记录磁盘上头文件大小及其所对应的簇的数据库。它对每个簇都有一个相对的记录点。 当簇空白时,表示未分配,在FAT16中值为0000H;当簇有受损扇区时,为FFF7H;当簇为最后一个时,为FFFFH;其他情况,记录下一个簇的位置。
在FAT文件系统中,寻找文件一般是先找到文件的目录项,目录项中记录了文件的第一个簇的地址,找到第一个簇后,其他的簇顺着FAT链即可找到。
4 NTFS文件格式
它也是以簇为分配空间。主控文件表(MFT)记录了卷中所有文件的信息,它以文件记录数组来实现的,每个文件记录的大小都固定为1KB。最初的16个元数据是保留的。NTFS将文件作为属性/属性值的集合来处理。每个文件都有一个64位的唯一标识。
4 操纵内存 --------------------> 参考win32 API 大全
5 EXE 文件格式 http://www.moon-soft.com/program/FORMAT/
6 病毒的基本机制
感染模块, 触发模块, 破坏模块, 传播模块(有的有)。
病毒如果要发作首先宿主机中必须存在病毒体,其次要有合适的条件使得病毒能够运行,这样病毒才能做破坏。病毒要想能够运行,一般是先需要驻入内存,修改中断(为后面的运行提供触发机会),隐藏自己。
病毒占用的中断功能有:INT 9H读取键盘输入;INT 8H计时中断;INT13H 读写磁盘;INT25H读磁盘逻辑扇区;INT 21H的4BH功能 在可执行程序中调用其他程序。
要学习病毒知识,基本的系统的知识可少不了,所以先把Windows 的基本的系统知识回顾一下:
1 硬盘
容量计算:磁头数*拄面数*扇面数
INT 13H 调用:BIOS提供的磁盘基本输入输出中断调用,可以完成硬盘的复位,读写,校验,定位,诊断,格式化等功能。采用CHS(既按磁头8,柱面10和扇区数6)寻址,最大只能访问8GB。
扩展INT13H(Extended INT 13H):采用线形寻址方式,还加入了对可拆卸介质的支持。
2 Boot Sector
Boot Sector 也就是硬盘的第一个扇区, 它由 MBR (Master Boot Record),DPT (Disk Partition Table) 和 Boot Record ID 三部分组成.MBR 又称作主引导记录占用 Boot Sector 的前 446 个字节 ( 0 to 0x1BD ),存放系统主引导程序 (它负责从活动分区中装载并运行系统引导程序).DPT 即主分区表占用 64 个字节 (0x1BE to 0x1FD), 记录了磁盘的基本分区信息. 主分区表分为四个分区项, 每项 16 字节, 分别记录了每个主分区的信息(因此最多可以有四个主分区). Boot Record ID 即引导区标记占用两个字节 (0x1FE and 0x1FF), 对于合法引导区, 它等于 0xAA55, 这是判别引导区是否合法的标志.
Boot Sector 的具体结构如下图所示 (参见 NightOwl 大侠的文章):
0000 |------------------------------------------------|
| Master Boot Record |
| 主引导记录(446字节) |
01BD | |
01BE |------------------------------------------------|
01CD | 分区信息 1(16字节) |
01CE |---------------------------------------------|
01DD | 分区信息 2(16字节) |
01DE |---------------------------------------------|
01ED | 分区信息 3(16字节) |
01EE |--------------------------------------------|
01FD | 分区信息 4(16字节) |
|-------------------------------------------|
| 01FE | 01FF |
| 55 | AA |
|-------------------------------------------|
3 FAT文件格式
1) FAT链
FAT是一个记录磁盘上头文件大小及其所对应的簇的数据库。它对每个簇都有一个相对的记录点。 当簇空白时,表示未分配,在FAT16中值为0000H;当簇有受损扇区时,为FFF7H;当簇为最后一个时,为FFFFH;其他情况,记录下一个簇的位置。
在FAT文件系统中,寻找文件一般是先找到文件的目录项,目录项中记录了文件的第一个簇的地址,找到第一个簇后,其他的簇顺着FAT链即可找到。
4 NTFS文件格式
它也是以簇为分配空间。主控文件表(MFT)记录了卷中所有文件的信息,它以文件记录数组来实现的,每个文件记录的大小都固定为1KB。最初的16个元数据是保留的。NTFS将文件作为属性/属性值的集合来处理。每个文件都有一个64位的唯一标识。
4 操纵内存 --------------------> 参考win32 API 大全
5 EXE 文件格式 http://www.moon-soft.com/program/FORMAT/
6 病毒的基本机制
感染模块, 触发模块, 破坏模块, 传播模块(有的有)。
病毒如果要发作首先宿主机中必须存在病毒体,其次要有合适的条件使得病毒能够运行,这样病毒才能做破坏。病毒要想能够运行,一般是先需要驻入内存,修改中断(为后面的运行提供触发机会),隐藏自己。
病毒占用的中断功能有:INT 9H读取键盘输入;INT 8H计时中断;INT13H 读写磁盘;INT25H读磁盘逻辑扇区;INT 21H的4BH功能 在可执行程序中调用其他程序。
相关文章推荐
- 计算机病毒分析与对抗
- 计算机网络学习--网络分析
- Linux内核分析第一周学习总结:计算机是如何工作的?
- LINUX内核分析第一周学习总结:计算机是如何工作的?
- TinyOS学习笔记12-节点与计算机利用串口通信2-数据包分析
- 一个用汇编写的引导区病毒例程,有时间可以分析一下,对各位学习汇编的朋友很有帮助!
- Linux内核分析第一周学习博客 --- 通过反汇编方式学习计算机工作过程
- 2006年全国信息网络安全状况与计算机病毒疫情调查分析报告
- Linux内核分析 计算机是如何工作的? 学习笔记
- 病毒分析技术学习资料
- 【病毒分析】学习的计划
- LINUX内核分析第一周学习总结——计算机是如何工作的
- Linux内核分析第一周学习总结:计算机是如何工作的?
- TinyOS学习笔记13-节点与计算机利用串口通信3-MIG分析
- 【Android病毒分析报告】 - AVPasser 对抗安全软件监控
- 计算机病毒实践总结二:简单动态分析
- TinyOS学习笔记12-节点与计算机利用串口通信2-数据包分析
- 学习分析病毒[1]
- 计算机专业学习路径!
- 分析单任务计算机操作之反汇编C程序