|
知识路径: > 恶意代码防范技术原理 > 恶意代码概述 > 恶意代码分析技术 > 恶意代码分析技术 >
|
相关知识点:2个
|
|
|
|
|
(1)文件监测。恶意代码在传播和破坏的过程中需要依赖读写文件系统,但存在极少数恶意代码只是单纯依赖内存却没有与文件系统进行交互。恶意代码执行后,在目标主机上可能读写各文件,修改程序,添加文件,甚至把代码嵌入其他文件,因此对文件系统必须进行监测。FileMon是常用的文件监测程序,能够记录与文件相关的动作,例如打开、读取、写入、关闭、删除和存储时间戳等。另外还有文件完整性监测工具,如Trip wire、AIDE等。
|
|
|
(2)进程监测。恶意代码要入侵甚至传播,必须有新的进程生成或盗用系统进程的合法权限,主机上所有被植入进程的细节都能为分析恶意代码提供重要参考信息。常用的进程监测工具是Process Explorer,它将机器上的每一个执行中的程序显示出来,将每一个进程的工作详细展示出来。虽然Windows系统自己内嵌了一个进程展示工具,但是只显示了进程的名字和CPU占用率,这不足以用来了解进程的详细活动情况。而Process Explorer比任何的内嵌工具更有用,它可以看见文件、注册表键值和进程装载的全部动态链接库的情况,并且对每一个运行的进程,该工具还显示了进程的属主、独立细致特权、优先级和环境变量。
|
|
|
(3)网络活动监测。恶意代码经历了从早期的单一传染形式到依赖网络传染的多种传染方式的变化,因此分析恶意代码还要监测恶意代码的网络行为。使用网络嗅探器检测恶意代码传播的内容,当恶意代码在网络上发送包时,嗅探器就会将它们捕获。下表列出了一些网络监测工具。
|
|
|
|
|
(4)注册表监测。Windows操作系统的注册表是个包含了操作系统和大多数应用程序的配置的层次数据库,恶意代码运行时一般要改变Windows操作系统的配置来改变Windows操作系统的行为,实现恶意代码自身的目的。常用的监测软件是Regmon,它能够实时显示读写注册表项的全部动作。
|
|
|
(5)动态反汇编分析。动态反汇编指在恶意代码的执行过程中对其进行监测和分析。其基本思想是将恶意代码运行的控制权交给动态调试工具。该监测过程从代码的入口点处开始,控制权在程序代码与调试工具之间来回传递,直到程序执行完为止。这种技术能得到正确的反汇编代码,但只能对程序中那些实际执行的部分有效。目前主要的动态反汇编分析方法有以下两种:
|
|
|
. 同内存调试。这种方法使调试工具与被分析恶意代码程序加载到相同的地址空间里。该方法的优点是实现代价相对较低,控制权转交到调试工具或者从调试工具转回恶意代码程序的实现相对来说比较简单;缺点是需要改变被分析程序的地址。
|
|
|
. 仿真调试,即虚拟调试。这种方法是让调试工具与分析的恶意代码程序处于不同的地址空间,可绕过很多传统动态反跟踪类技术。这种方法的优点是不用修改目标程序中的地址,但在进程间控制权的转移上要付出较高的代价。
|
|
|
|
|
|