静态分析:静态分析方法是在没有运行计算机病毒时,
对其进行分析的相关技术。常用的分析工具有VirusTotal、strings、IDA pro等。
动态分析:动态分析方法则需要运行计算机病毒。常用的分析工具有RegShot、Process Monitor、OllyDbg等。
这两类技术又进一步分为基础分析和高级分析。
1. 静态分析基础技术
静态分析基础技术包括分析病毒可执行文件,但不查看具体CPU指令的分析技术。常用的分析工具有VirusTotal、strings等。非常快速、简单。难以分析复杂的计算机病毒,而且可能会漏掉一些重要的行为。
2. 动态分析基础技术
动态分析基础技术通过运行计算机病毒,分析病毒在系统和网络上的行为,提取病毒的特征码。需要建立安全分析环境。快速、简单。也漏掉一些重要病毒功能。
3. 静态分析高级技术
对计算机病毒内部机制的逆向工程,通过将可执行文件装载到反汇编器中,查看程序CPU指令,来分析病毒到底做了什么。深入分析计算机病毒。需要掌握汇编语言、Windows系统编程等知识。易受代码混淆技术的干扰,例如加壳、花指令等。
4. 动态分析高级技术
使用调试器来分析一个病毒运行时刻的内部状态。动态执行每一条指令,验证静态高级分析的结果。可以缓解代码混淆的干扰。只能覆盖一条计算机病毒的执行轨迹。
5. 恶意代码分析通用规则
首先,不要过于陷入细节,关注主要功能。你应该在进入细节之前有一个概要性的理解。
本文转载自:https://www.gylmap.com
其次,尝试多从不同角度,多使用不同工具和方法来分析恶意代码。
最后,恶意代码分析就像是猫抓老鼠的游戏,应该能够快速地应对恶意代码的新变化。
- 木马与病毒的重大区别是(木马不具感染性)。
- 恶意代码指的是(任何对用户、计算机或网络造成破坏的软件)。
- 网络黑客产业链是指黑客们运用技术手段入侵服务器获取站点权限以及各类账户信息并从中谋取(非法经济利益)的一条产业链。
- 恶意代码分析目标是(对可疑程序进行深入分析,确定该程序是否有恶意行为;定位被感染的机器或者文件;衡量并消除恶意代码对系统造成的破坏)。
- 蠕虫与普通病毒相比特有的性质为(不利用文件寄生)。
- 蠕虫病毒的传染目标是(互联网内的所有计算机)。
- 轰动全球的震网病毒是(蠕虫病毒)。
- 高级静态分析技术主要是对恶意代码内部机制的(逆向工程),通过将可执行文件装载到反汇编器中,查看反汇编指令,来分析恶意代码到底做了什么。
- Rootkit是用来隐藏(其它恶意代码)的程序。
- 恶意代码分析过程中在进入细节分析之前对恶意代码要有一个概要性的理解;尝试从不同角度,使用不同工具和方法来分析恶意代码;先使用(基本的动态和静态分析)工具,定位可疑的静态和动态特征,不建议对全部反汇编指令直接进行逐行分析。
- 计算机病毒数量的变化趋势是(不断增多)。
- 病毒能够自我执行和自我复制。
- 蠕虫是利用文件寄生来通过网络传播的恶性病毒。
- 木马不具有欺骗性,而具有隐蔽性和非授权性。
- 主机特征码关注是恶意代码对系统做什么,而病毒特征码关注恶意代码本身的特性。
- 网络特征码可以在没有进行恶意代码分析时创建,但在恶意代码分析帮助下提取的特征码往往更加有效的,可以提供更高的检测率和更少的误报。
- 基础静态分析技术的分析速度快,但针对复杂的恶意代码时很大程度上是无效的,而且它可能会错过一些重要的行为。
- 随着具有可编程能力的智能设备不断出现,计算机病毒的感染范围在不断扩大,除了传统的计算机和智能手机,病毒已经可以感染打印机、智能家居设备等,甚至可以对国家基础设施的智能电网、智慧城市系统进行攻击。