#program-equivalence

共收录 1 条相关安全情报。

← 返回所有主题
👥 作者: Luke Dramko, Claire Le Goues, Edward Schwartz

该论文聚焦神经反编译器(neural decompiler)的可信度问题。神经反编译器是采用机器学习模型完成反编译任务的系统,作用是把低层语言(如汇编/中间表示)提升为高层语言(如 C 代码)。相比传统确定性反编译器,它的核心优势在于能够以概率方式恢复在 lowering(向低层翻译)过程中被丢弃的信息,例如变量名、数据类型以及控制流结构,因此在可读性和语义丰富度上具备明显实用价值。但代价是这类模型会出错,可能生成与原始程序语义不等价的代码,导致安全与工程人员难以信任其输出结果。 为缓解该问题,作者提出 Faultless——一种面向神经反编译器的程序等价性(program equivalence)技术,用于执行翻译验证(translation validation)。其核心思路是把确定性反编译器产出的代码(具备更强的正确性保证)作为基准,与神经反编译器产出的代码进行等价性比对;同样的机制也可用于模型评估这一高度相关的任务,即把模型预测与参考解进行比较。 论文指出,神经反编译给程序等价性判定带来两类现有技术无法应对的新挑战:一是可用的额外功能上下文(extrafunctional context)非常有限,二是反编译代码中普遍存在系统性的语义不一致(systematic semantic inconsistencies)。为此,Faultless 采用基于静态符号执行的技术路线,并专门设计了能够处理上述挑战的执行模型(execution model)与内存模型(memory model)。该工作属于程序语言与软件工程交叉方向,适合反编译器研发、二进制分析、AI 代码生成可信性评估以及形式化验证相关的研究与工程人员阅读。

💡 推荐理由: AI 反编译/代码重建工具正被逐步引入逆向与二进制分析流水线,但其输出缺乏正确性保证。Faultless 提供了可对神经反编译器做翻译验证与模型评估的等价性判定方法,为'能否信任 AI 反编译结果'给出可检查的技术手段。

🎯 建议动作: 研究跟进

排序因子: 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)