导语:恶意软件分析师需要对逆向工程恶意软件高度熟练,所以必须要深入了解某个恶意软件的作用,以及它是如何做到的。

我们将在接下来的日子里发表多个黑客教程来讨论最基本的恶意软件分析,而在这一系列教程的开始,我们将主要讨论多个基本恶意软件分析工具。恶意软件分析师需要对逆向工程恶意软件高度熟练,所以必须要深入了解某个恶意软件的作用,以及它是如何做到的。而要成为恶意软件分析师,非常重要的是要对操作系统、软件、网络、一般的编程、一般的恶意软件以及汇编语言有着很好的理解。汇编语言是高级编程代码和机器指令之间的低级编程代码,换句话说:它将高级语言翻译成将由计算机硬件处理的机器指令。

在本次的教程中,我们将讨论简单但流行的一些基本静态恶意软件分析工具,如:PEiD检测包装器,Dependency Walker查看动态链接的函数,Resource Hacker查看恶意软件的资源,PEview和FileAlyzer检查PE文件头和部分。这些工具主要是被用于基本的静态恶意软件分析,本文重点是尝试确定恶意软件的类型及其功能,并不会实际的去运行恶意软件。运行和分析恶意软件将在laters教程中介绍。在这之后,我们将在下一篇文章中介绍可用于高级静态分析和高级动态恶意软件分析的恶意软件分析高级工具:动态恶意软件分析工具。注意一点,我们将首先讨论了解这些工具,然后再进入详细的教程。

PEiD

PEiD(PE Identifier)是一款著名的查壳工具,其功能强大,几乎可以侦测出所有的壳,其数量已超过470 种PE 文档 的加壳类型和签名。

Basic-Malware-Analysis-Tools-PEiD.jpg

扫描模式主要有以下几种:

正常扫描模式:可在PE文档的入口点扫描所有记录的签名;
深度扫描模式:可深入扫描所有记录的签名,这种模式要比上一种的扫描范围更广、更深入;
核心扫描模式:可完整地扫描整个PE文档,建议将此模式作为最后的选择。

PEiD内置有差错控制的技术,所以一般能确保扫描结果的准确性。前两种扫描模式几乎在瞬间就可得到结果,最后一种有点慢,原因显而易见。

命令选项主要包括;

peid -time〓 显示信息
peid -r〓 扫描子目录
peid -nr〓 不扫描子目录
peid -hard〓 采用核心扫描模式
peid -deep〓 采用深度扫描模式
peid -norm〓 采用正常扫描模式

主要模块

任务查看模块:可以扫描并查看当前正在运行的所有任务和模块,并可终止其运行;
多文件扫描模块:可同时扫描多个文档。选择“只显示PE文件”可以过滤非PE文档;选择“递归扫描”可扫描所有文档,包括子目录。
Hex十六进制查看模块:可以以十六进制快速查看文档。

插件

Krypto ANALyzer
PEID通用脱壳器
通用OEP查找器
Add Signature
Advanced Scan
Crc32

插件总数共84个(不包含重复插件)。实际插件总数88个,其中有4个插件有不同版本(有些是汉化版)。

目前官方的PEiD已经不再活跃了,但是你可以从

http://www.hackingtutorials.org/download/715/进行下载,另外你可能还需要将userdb.txt文件替换为以下文件以添加签名:http://www.hackingtutorials.org/download/712/

Dependency Walker

Dependency Walker是一款Microsoft Visual C++ 中提供的非常有用的PE模块依赖性分析工具,软件大小295KB。主要功能包括查看 PE 模块的导入模块.查看 PE 模块的导入和导出函数、动态剖析 PE 模块的模块依赖性、解析 C++ 函数名称等。

1484147530968660.jpg

你可以选择在这里进行下载:http://www.dependencywalker.com/

Resource Hacker

Resource Hacker一个实用的免费软件,用于查看,修改,添加和删除 Win32 可执行文件的资源。其中内置了一个内部资源编译器和反编译器。

1484147548906458.jpg

主要作用如下:

1. 查看 Win32 可执行和相关文件的资源 (*.exe, *.dll, *.cpl, *.ocx),在已编译和反编译的格式下都可以。

2. 提取 (保存) 资源到文件 (*.res) 格式,作为二进制,或作为反编过的译资源脚本或图像。

图标,位图,指针,菜单,对话,字符串表,消息表,加速器,Borland 窗体和版本信息资源都可以被完整地反编译为他们各自的格式,不论是作为图像或 *.rc 文本文件。

3. 修改 (替换) 可执行文件的资源。

图像资源 (图标,指针和位图) 可以被相应的图像文件 (*.ico, *.cur, *.bmp),*.res 文件,甚至另一个 *.exe 文件所替换。

对话,菜单,字符串表,加速器和消息表资源脚本 (以及 Borland 窗体) 可以通过使用内部资源脚本编辑器被编辑和重新编译。

资源也可以被一个 *.res 文件所替换,只要替换的资源与它是同一类型并且有相同的名称。

4. 添加 新的资源到可执行文件。

允许一个程序支持多种语言,或者添加一个自定义图标或位图 (公司的标识等) 到程序的对话中。

5. 删除 资源。大多数编译器添加了应用程序永远不会用到的资源到应用程序中。删除这些不使用的资源可以减小一个应用程序的大小。

你可以选择在这里进行下载:http://www.angusj.com/resourcehacker/resource_hacker.zip

PEview

1484147566665007.jpg

PEview是一个免费和简单易用的应用程序,可以被用于浏览存储在可移植可执行文件(PE)文件头和文件的不同部分的信息。 在后续的教程中,我们将学习如何在我们检查真正的恶意软件时读取这些文件头。

你可以选择在这里进行下载:http://wjradburn.com/software/PEview.zip

FileAlyzer

FileAlyzer是一款文件分析程序.FileAlyzer允许对文件的基本分析(显示文件特性和文件内容以十六进制形式存储)并且能解释象资源结构的普通文件内容(象文本、图表、HTML、媒介和PE).使用FileAlyzer用鼠标右键单击您想要分析的文件就可以像观看正常物品一样简单的分析查看文件。

1484147581182466.jpg

下载地址:https://www.safer-networking.org/products/filealyzer/

事实上,我们在这里只是介绍了非常小的一部分基本恶意软件分析工具,在接下来的几天我们将会继续推出这个系列的教程,敬请关注。

源链接

Hacking more

...