2026.03.17
本次汇报聚焦大语言模型驱动的领域特定语言(DSL)设计与漏洞检测。报告从传统静态分析规则开发的局限出发,介绍 DSL Assistant、DSL-Xpert、MoCQ 等方法,说明 LLM 如何参与自然语言需求理解、形式化规则生成与代码漏洞发现。
传统漏洞检测通常依赖安全专家手工编写 CodeQL 等查询规则,开发和维护成本高,也难覆盖新语言与动态语言特性。直接使用 LLM 进行漏洞判断又会受到跨文件上下文不足、结果不稳定和领域知识缺失的限制。DSL 通过面向安全分析的中间表示压缩无关语法信息,能够以更紧凑的方式表达漏洞模式,为 LLM 与静态分析工具协同提供接口。
报告首先介绍 DSL Assistant 如何将自然语言描述映射为正式语言表达,使用户能够以较低门槛编写分析规则。DSL-Xpert 面向通用 DSL 代码生成,通过检索增强和领域适配提升 LLM 对语法、语义及约束条件的掌握。MoCQ 则将神经模型与符号分析结合,在候选生成、约束验证和漏洞判断之间建立整体流程,避免单纯依赖语言模型输出。
系统以领域知识、DSL 语法和中间表示为基础,将用户需求组织成可执行的查询或检测逻辑。RAG 可补充规则示例与工具文档,微调用于适配特定 DSL 的表达习惯。后续的编译、静态分析与约束检查负责验证生成结果是否可执行,并帮助定位自然语言理解、规则生成或程序分析中的错误来源。
报告指出,LLM 与 DSL 的结合能够减少规则编写门槛,并改善面向多语言和复杂漏洞模式的检测效率。其关键并非让 LLM 独立给出最终结论,而是利用正式语言、静态分析和验证环节约束生成过程。未来仍需进一步提升跨文件推理、动态特性建模、生成结果验证以及领域知识持续更新的可靠性。