软件安全分析与应用(6)

Hello world,hello blog!

Posted by 吴柚 on June 16, 2019

软件安全分析基础工具

静态分析工具

IDA Pro

  1. IDA Pro简称为IDA,是一款交互式的反汇编工具。

  2. IDA使用递归下降算法进行 代码扫描,从而反汇编。

  3. IDA也有强大的反编译功能,在汇编代码页面点击F5,即可得到反编译后的伪代码。

  4. IDA的导入表与导出表函数的解析功能具备提取导入表的地址、函数名、动态库名等参数和导出表的地址、函数名、Ordinal等参数。

  5. IDA能够加载pdb格式的符号库,通过符号库能够解析出大量的函数符号信息。

  6. IDA提供了SDK插件开发接口,用户能够扩展逆向分析功能。

Udis86

  1. Udis86是一款开源反汇编库。

  2. Udis86提供了一套反汇编的第三方库,用户可自行编写代码进行扩展,Udis86库提供了C/C++接口。

  3. 基于Udis86的反汇编工具udcli。udcli集成在Udis86项目里,通过命令行可快速实现反汇编。

Capstone

  1. Capstone是一款开源、轻量级、多平台、多架构反汇编框架。

  2. Capstone的主要功能是提供一套反汇编框架、核心是反汇编引擎,提供扩展接口。

  3. Capstone提供了C语言开发接口。Capstone基于C语言开发,提供C/C++、Pyhon、Java、Perl等接口,具有开放接口好、轻量级、性能高等特点。

  4. 目前基于Capstone进行开发的产品被应用于恶意软件自动分析、逆向工程等领域。

PEID

  1. PEID的功能有检查PE文件的构成成分,也用于检测程序是否加壳。

  2. 如果想要对程序进行脱壳,需要辅助插件的帮助。

010Editor

  1. 010Editor是一款编辑器软件,具有文件编辑和文件解析等功能。

  2. 文件编辑是010Editor的基础功能,编辑方式支持文本编辑、二进制编辑以及十六进制Hex等编辑模式。同时也具备复制、剪切、粘贴、查找、替换等基础功能。

  3. 范本分析是010Editor的一大特色功能,用于对文件格式进行解析,提取文件的格式字段内容。范本解析需要范本文件Template.bt的支持。

  4. 脚本分析功能也是010Editor的一项高级功能,需要脚本文件的支持。

动态分析工具

Process Monitor

  1. Process Monitor是一款进程监控工具,主要用于进程行为监控与记录,包括文件操作行为、注册表操作行为、网络行为等。

  2. Process Monitor能够监控文件的打开、读、写、关闭等操作,同时获取操作是否成功的状态、文件路径、读写偏移量、字节数等参数。

  3. Process Monitor能够监控注册表的创建、打开、读、写、关闭等操作,同时获取操作是否成功的状态、注册表路径、访问类型、长度等参数。

Wireshark

  1. Wireshark是一款开源的网络数据包采集与分析软件,具备数据包采集和数据报文协议解析的能力。

  2. Wireshark的流量采集功能通过Capture菜单的Option选项进行设置,设置要采集的网卡,设置过滤规则,可以指定协议、IP地址、端口号等。

  3. Wireshark的协议分析功能可以分析实时采集的数据,也可以飞行系离线存储的数据包,协议分析支持网络层的IP、IPv6,支持传输层的TCP、UDP,支持应用层的HTTP、FTP/POP3/SMTP等已知协议,另外还支持IPsec、SSL、TLS、HTTPS等安全协议。

总结

这里面很多软件在之前做oj题时都已经使用过,所以这一章学习起来还是很快的,因为已经有过一定的实践经验,不过这一章的学习也给了我不少对这些软件使用方式新的启发。