软件安全分析与应用第3章软件安全分析基础工具读书笔记。

  • 软件安全分析基础工具
    • 静态分析工具
      • IDA Pro
      • Udis86
      • Capstone
      • PEiD
      • 010Editor
    • 动态分析工具
      • Process Monitor
      • Wireshark
      • OllyDbg
      • WinDbg
      • Pin
    • 虚拟化辅助分析平台
      • VMWare Workstation
      • VirtualBox
      • QEMU
      • Xen

静态分析工具

静态分析是指在不运行软件程序的情况下,利用分析工具,采用语法分析、词法分析、控制流与数据流分析等技术手段对软件程序进行扫描。

IDA Pro

IDA Pro 是一款交互式的反汇编工具,简称 IDA。支持 Windows、Linux、Mac OS等主流操作系统,支持 Interl x86/x64、ARM、MIPS等数十种指令集的反汇编。

IDA 的常用功能有:

  1. 反汇编,使用递归下降算法进行代码扫描,结果可以使用控制流图和地址顺序排列
  2. 反编译,将对应汇编代码反编译成 C/C++ 代码
  3. 导入表与导出表解析,导入表记录了程序调用的但执行代码不再程序中而在程序中,而在动态库文件(dll/so)的函数中,导出表是动态库文件特有的,记录了供其他动态库或程序模块调用的函数
  4. 函数符号表功能,pdb格式的符号库,通过符号表可以获得更多的语义信息用于逆向分析
  5. 查找功能,支持基于文本的查找和基于引用的查找
  6. 插件功能

Udis86

  1. Udis86 开发接口,是 Udis86 提供的一套反汇编第三方库,用户可以自行编写代码进行拓展
  2. 基于 Udis86 的反汇编工具,提供命令行,可以快速进行反汇编

Capstone

  1. Python 开发接口
  2. C 语言开发接口

PEiD

PEiD 是 Windows 平台下常用的 PE 文件格式分析工具,用于提取 exe、dll、sys 等标准可执行程序的文件结构,也常用于检测程序加壳。目前该工具已经停止了更新。
使用该工具可以进行:

  1. PE 格式信息提取
  2. 插件拓展与脱壳处理

010Editor

使用该工具可以进行文本编辑和文件编辑功能:

  1. 文本编辑,支持文本编辑、二进制编辑以及十六进制编辑等
  2. 范本分析,该工具的特斯,用于对文件格式进行解析,提取文件的格式字段内容。

动态分析工具

Pocess Monitor

该工具是一款 Windows 下的进程监控工具,主要用于进程行为监控与记录,包括文件操作行为、注册表操作行为、网路行为等。
具体功能如下:

  1. 进程监控功能
  2. 文件监控功能
  3. 注册表监控
  4. 网络监控

Wireshark

主要功能:

  1. 流量采集功能
  2. 协议分析功能

OllyDbg

该工具是 Windows 平台反汇编动态调试追踪工具,只支持 Ring3 界的的用户态程序,主要功能有:

  1. 调试功能
  2. Trace 功能

WinDbg

主要功能:

  1. 符号功能
  2. 调试功能
  3. 命令介绍
  4. 内核调试

Pin

Pin 是一块二进制代码插桩分析框架,提供 4 种粒度的代码插桩模式:INS 级别、TRACE 级别、RTN 级别和 IMG 级别。

虚拟化辅助分析平台

VMWare Workstation

VirtualBox

QEMU

Xen