NeFut Logo NeFut
EN 管理员登录

[AI学术] 颠覆性源码恢复:基于锚点检索与大语言模型推理的实用方案

发布于:2026-07-14 22:00 最后更新:2026-07-15 02:00
#LLM #Open Source #Reverse Engineering

我们提出了一种实用的源码恢复管道,通过结合逆向工程、基于锚点的源码检索和大语言模型推理,从剥离的二进制函数中恢复源代码。我们的二进制到源代码检索方法旨在从源码数据库中识别源函数,而不是生成近似的反编译伪代码。

该方法首先使用 Ghidra 提取锚点,如字符串、常量、外部调用和可用函数名称,然后通过倒排索引搜索数据库检索候选文件,进一步缩小到可能的函数片段,并基于反汇编、反编译代码和源元数据使用大语言模型(LLM)重新排序候选项。置信度高的匹配结果还可以在后续过程中作为锚点。

在我们高保真源码数据库的评估中,对于一个剥离且经过优化的 tcpdump 二进制文件,我们提出的二进制到源匹配方法实现了 95.2% 的汇编指令覆盖率。在使用 GitHub 基础的检索数据库进行的实验中,由于检索失误,表现较差,平均指令覆盖率仅为 35.5%。这些结果表明,源级二进制恢复在高质量数据库中表现出色,并在嘈杂环境中仍然是一种有用的工具。

博主点评: 该研究展示了如何有效结合逆向工程与大语言模型的优势,显著提高了二进制文件的源码恢复率。这样的技术在安全性和逆向工程领域具有广泛的应用潜力,尤其是在面对复杂或不完整的二进制文件时。未来,随着数据集的质量提升,这种方法的效果将更加显著。

原文链接: https://arxiv.org/abs/2607.09452

[h] 返回首页