网络 病毒分析概述
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
③ 将病毒程序嵌入感染目标中。
12:06:05
7
பைடு நூலகம்件型病毒传染原理和特征
HOST程序代码头 HOST程序代码 感染方式 1 病毒代码 HOST程序代码
MZ文件头
感染
病毒代码 PE/NE文件头 HOST程序代码头 感染方式 2 感染前的程序 HOST程序代码
MZ文件头(修改后) HOST程序代码头 PE/NE文件头(修改后) 感染前的程序 病毒代码
12:06:05
8
核心态与用户态
操作系统代码、设备驱动程序代码使用特权级0(Ring 0),工作于系统核心态 普通的用户程序使用特权极3(Ring 3) ,工作在用户态
Win32应用程序 Win32应用程序
Win32子系统动态连接库 Ntdll.dll 用户态 (Ring 3)
Windows 2000/XP下 普通应用程序 对核心态功能的 调用示意
2
12:06:05
1 计算机病毒的状态
计算机病毒的基本流程与状态转换
病毒由静态转变为动态的过程,称为病毒的启动。实际上, 病毒的启动过程就是病毒的首次激活过程 内存中的动态病毒又有两种状态:可激活态和激活态。
当内存中的病毒代码能够被系统的正常运行机制所执行时,动 态病毒就处于可激活态 一般而言,动态病毒都是可激活的 系统正在执行病毒代码时,动态病毒就处于激活态 病毒处于激活态时,不一定进行传染和破坏;但进行传染和破 坏时,必然处于激活态
对于处于不同状态的病毒,应采用不同的分析、清除 手段
3
12:06:05
1 计算机病毒的状态
静态 病毒 引导加载, 设置激活、 触发条件 动态 病毒 可激 活态
满足
满足 感染条件? 不满足 满足 破坏条件? 满足 不满足 潜伏或消散
激活 态
满足
满足 激活条件?
不满足
病毒感染
病毒破坏
计算机病毒的基本流程与状态转换
5
12:06:05
病毒的目的
快速传染 隐藏自己 变形
12:06:05
6
病毒感染的一般过程
计算机病毒的感染过程与生物学病毒的感染过程非常 相似,它寄生在宿主程序中,进入计算机,并借助操作系 统和宿主程序的运行,复制自身,大量繁殖。计算机病毒 感染的一般过程为: ① 当计算机运行染毒的宿主程序时,病毒夺取控制权。 ② 寻找感染的突破口。
12:06:05 4
2 计算机病毒的基本环节
计算机病毒要完成一次完整的传播破坏过程, 必须经过以下几个环节:
分发拷贝阶段 潜伏繁殖阶段 破坏表现阶段
在任何一个环节(阶段)都可以抑制病毒的传播、 蔓延,或者清除病毒 我们应当尽可能地在病毒进行破坏性攻击之前 切断病毒传染源、抑制病毒的传播蔓延
12:06:05
10
搜索感染目标文件
搜索文件是病毒寻找目标文件的非常重要的功能 在Win32汇编中,通常采用如下几个API函数进行文 件搜索
FindFirstFile
根据文件名查找文件
根据调用FindFirstFile函数时指定的一个文件名查找下一个文件 用来关闭由FindFirstFile函数创建的一个搜索句柄
FindNextFile
FindClose
12:06:05
11
病毒感染技术
感染是一个病毒赖以长期存活的根本,所以要大规模的搜索,感 染感染再感染! FindFirstFile,FindNextFile,FindClose,除非你hook了某些系统 API(参考Win32.Kriz),否则这三个API是Win32病毒必备的、搜 索再搜索,感染再感染。 目前Win32病毒分为两个主流,一类最常见,覆盖host程序最后一 个section的relocation,或者干脆直接缀在最后一个section后面, 把它扩大一些。这种技术很简单,例子可参见Funlove,有着复杂 的polymorphism引擎,体积比较大的病毒一般也都用这种技术。 第二类就是像Elkern那样把自己尽可能地插进host体内,尽可能地 插,对于VC编译出来的PE文件,它的file alignment是4K,所以 section之间的空隙加起来很可能有4,5K,足可以容下一个Win32 病毒。这种技术比较麻烦一些,调试也复杂,主要流行的有Elkern。
12:06:05
核心态 (Ring 0) 内存、进程、线程、 IO等管理 核心体 设备驱动程序
9
硬件抽象层 (HAL)
获取API函数地址
Win32程序一般运行在Ring 3级,处于保护模式 Win32下的系统功能调用,不是通过中断实现,而 是通过调用动态连接库中的API函数实现 Win32 PE病毒和普通Win32 PE程序一样需要调用 API函数实现某些功能,但是对于Win32 PE病毒来 说,它只有代码节,并不存在引入函数节 病毒就无法象普通PE程序那样直接调用相关API函 数,而应该先找出这些API函数在相应DLL中的地 址
12:06:05
12
蠕虫传染原理
12:06:05
13
蠕虫与漏洞
网络蠕虫最大特点是 利用各种漏洞进行自 动传播 根据网络蠕虫所利用 漏洞的不同,又可以 将其细分
包含蠕虫 的邮件
非法的 MIME头部
解出的 蠕虫程序
Content-Type: audio/x-wav; name="worm.exe" Content-Transfer-Encoding: base64
TVrozAAAAAYAAQACAHhNVHJrAAAIBQD/Awi 邮件蠕虫 T8ZBsgsyOng/AgdLT05BTUkgAP8BD5XSi8i BXori 主要是利用 keORvphZCgD/fwMAAEEA8ApBEEISQAB/AEH MIME(Multipurpose 3AP9YBAQCGAgA/1kCAAAA/1EDB0Deg2r/UQ MHUwCD Internet Mail 感染机器 JP9RAwdiH4Mu/1EDB3F9gy7/UQMHgRuDJP9 Extension Protocol, RAweQ/IMu/1EDB6Eggy7/UQMHsYqDJP9RAw
网络与信息安全技术
计算机病毒分析
12:06:05
1
1 计算机病毒的状态
计算机病毒在传播过程中存在两种状态,即静态和动 态
静态病毒,是指存在于辅助存储介质中的计算机病毒,一般 不能执行病毒的破坏或表现功能,其传播只能通过文件下载 (拷贝)实现 因为静态病毒尚未被加载、尚未进入内存,不可能获取系统 的执行权限 病毒之所以处于静态,有两种可能 没有用户启动该病毒或运行感染了该病毒的文件 该病毒存在于不可执行它的系统中 当病毒完成初始引导,进入内存后,便处于动态。动态病毒 本身处于运行状态,通过截流盗用系统中断等方式监视系统 运行状态或窃取系统控制权。病毒的主动传染和破坏作用, 都是动态病毒的“杰作”