摘要由 AI 生成
研究提出 Decompile-Diverge 工具以检测 LLM 反编译器在重构代码时丢失关键行为的问题。基于八种系统、九种配置及真实 GitHub 函数与 CVE 漏洞数据测试发现,尽管可重构率从 Ghidra 的 75% 提升至 90%,但行为匹配率降至 62%。在 300 个测试用例中,整体差异率为 4.9%,部分系统最高达 13%,且部分已披露漏洞的重构代码完全缺失崩溃痕迹。现有测试套件无法捕捉此类失效,而新工具通过合成驱动程序与模糊测试语料库,对比重构代码在相同输入下的行为变化以识别偏差。分析表明,这种分歧源于 LLM 将传统工具留下的未知占位符替换为引入的字段、类型、调用关系及守卫条件。
关键实体KEY ENTITIES
Decompile-DivergeGhidraHex-Rays
报道态势 · 每日报道量LANGUAGE SPLIT
实体关系
信号强度SIGNALS
关键词热度
- Ghidra1
- Hex-Rays1
- Decompile-Diverge1
全部报道(1)SOURCES
↗
LLM 反编译器在重构代码时可能丢失关键行为,本文提出 Decompile-Diverge 工具以检测此类偏差。研究基于八种系统九种配置及真实 GitHub 函数与 CVE 漏洞数据发现,尽管 LLM 反编译器的可重构率从 Ghidra 的 75% 提升至 90%,但其行为匹配率却降至 62%;在 300 个测试用例中,4.9% 的整体差异率最高达单系统的 13%,且部分已披露漏洞的重构代码中完全缺失崩溃痕迹。现有测试套件无法捕捉此类失效,而新工具通过合成驱动程序与模糊测试语料库,对比重构代码在相同输入下的行为变化以识别偏差。分析表明,这种分歧源于 LLM 将传统工具留下的未知占位符替换为引入的字段、类型、调用关系及守卫条件。