论文

用于保护 LLM 生成的 C 代码的工具引导检索增强修复

Tool-Guided Retrieval-Augmented Repair for Securing LLM-Generated C Code

智能体系统Agent 工具调用

摘要

大语言模型可以从自然语言描述生成C代码,但生成的程序通常包含安全漏洞和编译错误,给嵌入式和资源受限的系统带来风险。这项工作研究反馈和检索如何提高 LLM 生成的 C 代码的可靠性。我们提出了一种分析和修复工作流程,它将编译诊断、CodeQL 静态分析和 KLEE 符号执行与先前修复模式的检索相结合以进行迭代细化。对 5,000 个使用嵌入式相关漏洞的 C 编程任务进行评估后,基线模型显示出巨大的可靠性差距,编译失败率高达 46%,安全缺陷率高达 49%。我们的方法改善了这两个指标。对于 CodeLlama 7B,安全缺陷率从 49% 下降到 19%,CodeQL 错误总数从 15,088 下降到 2,463 (83.7%)。对于 DeepSeek Coder 1.3B,编译失败从 42% 减少到 22%,安全缺陷从 35% 减少到 15%。这些结果表明,集成轻量级分析工具可以提高 LLM 生成的嵌入式开发代码的安全性。