推荐 3.5
Conf: 50%
反编译器是逆向工程中用于从编译后的二进制代码重构源代码的重要工具。然而,由于编译器在将人类可读的代码转换为低级机器码时,会丢失高级语法、标识符和自定义数据类型等信息,因此从编译后的二进制代码中重构源代码是一项具有挑战性的任务。传统的确定性反编译器虽然实用,但在推断惯用语法和标识符名称方面存在困难。生成式AI模型天然适合重构高级语法、标识符和类型,但可能会产生幻觉,生成不正确的编程结构和语义。本文提出了Decaf(DECompilation with Automated Feedback,自动反馈反编译)系统,其核心思想是:不是通过更多数据和更多训练来改进神经反编译器,而是利用编译器反馈通过搜索来大幅提升神经反编译器输出的语义正确性。具体地,Decaf在反编译器生成多个候选代码后,使用编译器对候选代码进行编译并检查是否与原始二进制代码在语义上等价(例如通过比较执行结果或二进制相似性),从而筛选出最符合语义的候选。实验基于ExeBench数据集,在Real -O2优化级别上,Decaf将神经反编译的成功率从26.0%提升至83.9%,且不牺牲与原始源代码的相似性。此外,该自动反馈方法对于较弱的神经反编译模型同样非常有效。该研究为机器学习驱动的反编译提供了新范式,证明了结合编译器反馈和搜索可以显著改善反编译质量,对于逆向工程、恶意软件分析、遗留代码理解等领域具有重要价值。
💡 推荐理由: 该研究通过编译器反馈与搜索机制,显著提升了神经反编译器的语义正确性,解决了传统方法依赖大量训练数据且容易产生幻觉的痛点,为逆向工程、恶意软件分析和二进制漏洞研究提供了更可靠的自动化工具。
🎯 建议动作: 研究跟进
排序因子: 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)