SOK:您想知道的关于x86/x64二进制反汇编的所有知识

2020-09-20 10:17:07

下载PDF摘要:反汇编二进制代码很困难,但对于提高二进制软件的安全性是必要的。在过去的几十年里,对二进制反汇编的研究已经产生了许多工具和框架,这些工具和框架已经提供给研究人员和安全专业人员。这些工具采用各种策略,赋予它们不同的特性。然而,缺乏系统性阻碍了该领域的新研究,并使选择正确的工具变得困难,因为我们不了解现有工具的优缺点。在本文中,我们通过对九种流行的开源工具的研究,使二进制反汇编系统化。我们将他们代码库的手动检查与(到目前为止)使用3,788个二进制文件的最全面的实验评估结合起来。我们的研究对拆卸策略进行了全面的描述和组织,将其分为算法和启发式两类。同时,我们测量和报告了个别算法对每个工具结果的影响。我们发现,尽管所有工具都使用原则性算法,但它们仍然严重依赖启发式算法来增加代码覆盖率。根据所使用的启发式规则,不同的覆盖率和正确性权衡发挥作用,导致工具具有不同的优点和缺点。我们预计这些发现将帮助用户选择正确的工具,并帮助研究人员改进二进制反汇编。