软件安全分析与应用:恶意代码检测与分析
软件安全分析与应用第8章恶意代码检测与分析读书笔记。
- 恶意代码检测与分析
- 恶意代码分析基础
- 恶意代码分类
- 恶意代码分析的目的
- 典型分析流程
- 软件漏洞利用分析
- 静态分析
- 杀毒软件扫描
- 文件类型确定
- 文件哈希计算
- 字符串信息提取
- 文件元数据提取
- 混淆代码识别
- 代码反汇编
- 动态分析
- 动态分析环境构建
- 动态行为分析
- 动态调试分析
- 反虚拟化分析对抗
- 反自动化分析对抗
恶意代码分类
- 蠕虫 worm
- 木马 trojan horse
- 后门 backdoor
- 僵尸程序 bot
- 下载器 downloader
- rootkit
- 恐吓软件 scareware
- 勒索软件 ransomware
静态分析
使用现有工具进行静态分析,首先确认是否该样本已经被主流安全工具确认为恶意代码。
动态分析
静态分析获得恶意代码的初步信息后,可以使用动态分析技术,通过运行可以代码,观察其行为。
动态分析包含一下步骤:
- 动态分析环境构建
- 动态行为分析
- 动态调试分析
- 反虚拟化分析对抗
- 反自动化分析对抗
动态行为分析
系统、进程监控其实常用的系统级别分析软件,wireshark 是常用的网络流量监控分析软件。
动态调试分析
动态调试是软件分析的重要手段,常用的工具有 OllyDbg 和 WinDbg 等。
反虚拟化分析对抗
恶意代码为了避免自身被发现和分析,通常会采用一些反调试、反分析技术来对抗分析过程。所以需要进行配置对抗恶意代码中的虚拟化检测功能。
反自动化分析对抗
为了绕过自动化检测分析,恶意代码编写者不断尝试采用各种技术来对抗自动化分析系统。
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.