如何解包和解密恶意软件?

逆向工程 恶意软件 静态分析 动态分析
2021-07-02 10:42:01

最近,我一直致力于对已知恶意软件的二进制样本和可执行文件进行逆向工程。它们中的大多数已经被打包或加密。为了获得实际数据或程序的一部分,我们必须找到解包的位置。

是否有任何通用方法或技术来解压恶意软件样本以便于分析?

2个回答

为了补充 Hector 所说的内容,我想提供一些出色的工具,以及来自行业专家的启发性 YouTube 频道,该频道向您展示了用于逆转现代恶意软件目标的技术和工具。

  1. 进程转储:将恶意软件内存组件转储回磁盘进行分析。支持转储没有 PE 标头的区域,在这些情况下,将自动生成 PE 标头和导入表。Process Dump 支持创建和使用clean-hash 数据库,因此可以跳过诸如kernel32.dll 之类的clean 文件的转储。

  2. PE-Sieve检测内联挂钩、挖空流程、流程重复等等。

  3. Hedgehogs 的恶意软件分析:一个频道的有趣名称,但绝对是用于逆转现代恶意软件的非常宝贵的教程,包括从工具到技术,再到如何设置成功逆转环境等的所有内容。

当然有多种工具和技术,但我在本文中提到的应该让您走上正确的道路,尤其是在使用 MalwareAnalysisForHedgehogs 提到和使用的工具时。

根据打包/加密的工作方式,一种常见的方法是运行恶意软件(在沙盒环境中),然后在内存中转储它。

如果恶意软件只是临时解密您希望看到的部分,您可能需要在调试器环境中运行该过程。