BlackHat大会上,BlackBerry宣布开源逆向工具PE Tree
2020-08-06 12:10:00 Author: www.4hou.com(查看原文) 阅读量:289 收藏

在8月3日举办的BlackHat大会上,BlackBerry宣布开源PE逆向工具——PE Tree。PE Tree是由BlackBerry 研究团队研发的使用pefile和PyQt5 来以树形查看PE文件的逆向工具。因为面向的是逆向工程师和社区,PE Tree还融合了HexRays IDA Pro反编译器的功能,可以查看PE结构、复制内存中的PE文件并执行导入重构。

概览

PE Tree是用python开发的,支持Windows、Linux和macOS 操作系统。可以以独立应用安装和运行,也可以以IDAPython插件的形式安装和运行。

图 1.标准应用

图 2. IDAPython插件

PE文件在映射为树形之前会用Ero Carrera的 pefile 模块进行分析,得到如下header信息:

· MZ header

· DOS stub

· Rich headers

· NT/File/Optional headers

· Data directories

· Sections

· Imports

· Exports

· Debug information

· Load config

· TLS

· Resources

· Version information

· Certificates

· Overlay

图 3. Header信息

如果pefile在分析过程中检测到任何问题,就会显示告警信息:

图 4. Pefile 告警

点击链接可以执行VirusTotal 搜索,包括:

· 文件哈希;

· PDB路径;

· 时间戳;

· Section hash/name;

· Import hash/name;

· Export name;

· Resource哈希;

· 证书序列号。

注:IMAGE_DIRECTORY_ENTRY_DEBUG和IMAGE_EXPORT_DESCRIPTOR时间戳一般是由编译器设置的,所以可以用于进一步的分析。

此外,PE文件的特定部分可以被爆出和导出到CyberChef,用于下一步处理,比如:

· DOS stub

· Sections

· Resources

· Certificates

· Overlay

图 5. 保存和导出证书

左侧的 “rainbow view”提供了PE文件结构的高层概览以及每个区域的offset/size/ratio。比如,下面就是含有多个资源的PE文件。

图 6. Rainbow图

点击每个区域可以查看树视图,右击可以保存和导出到CyberChef。

Rainbow图在处理PE文件目录时是非常有用的,因为可以很容易地指出类似的文件组成,并确定样本之间可能的关联。

IDAPython

HeyRays的 IDA Pro融合是通过IDAPython插件来实现的,它可以实现更高级的功能,比如从IDA数据库和重构导入中找到和复制PE文件:

图 7. 搜索PE文件的IDA数据库

在复制内存中的PE文件时,PE Tree会在IDB中添加文件结构的基本评论,并对IAT函数重新命名偏移量,使得很容易就可以查看和分析注入和未打包的PE。

注:PE Tree可以以一种与OllyDumpEx/ImpRec类似的方法来复制PE文件和重构导入,比如,解压MPRESS:

图 8. 执行IDB检索

 

图 9. 复制后,未打包的PE文件中含有新的导入地址表

如果选择Rebuild imports,PE Tree就会对所有可能的IAT引用搜索IDA disassembly,并构造新的IAT、IDT和hint name表。如果选定“Use existing imports”, PE Tree就会通过DIRECTORY_ENTRY_IMPORT 基于IAT来重构导入。

未来发展

PE Tree目前仍在开发中,未来将会添加更多的新特征。下一版本将关注rekall 支持,提供从内存复制或运行系统(live)中查看和复制进程的能力。

 图 10. 用Rekall!复制活动进程内容

PE Tree源码和使用方法参见BlackBerry GitHub:https://github.com/blackberry/pe_tree

本文翻译自:https://blogs.blackberry.com/en/2020/08/blackberry-open-source-pe-tree-tool-for-malware-reverse-engineers如若转载,请注明原文地址


文章来源: https://www.4hou.com/posts/Np2p
如有侵权请联系:admin#unsafe.sh