研究警示:代码生成式AI或致安全漏洞增加
斯坦福大学附属研究团队最新论文指出,使用代码生成式AI系统的软件工程师更易在应用中引入安全漏洞。随着GitHub等厂商大力推广此类系统,其潜在风险不容忽视。
核心发现与专家建议
该研究主要共同作者、斯坦福大学博士生尼尔·佩里(Neil Perry)强调:“目前代码生成系统尚无法替代人类开发者。”他建议:
- 利用AI完成超出自身专业领域任务的开发者应保持高度警惕;
- 利用AI加速擅长任务时,务必仔细复核输出结果及其在项目中的上下文背景。
实验设计与结果分析
研究聚焦于OpenAI开发的Codex系统(Copilot的核心引擎)。研究人员招募了47名从本科生到资深从业者的开发者,要求其使用Codex解决涉及Python、JavaScript和C语言的安全相关问题。
Codex基于数十亿行公开代码训练,能根据目标描述及上下文提供编程方案。结果显示,相较于对照组,使用Codex的参与者更可能编写出错误且“不安全”的代码,且更易误判这些不安全答案为正确。相比之下,对照组未表现出这种过度自信倾向。
理性看待:并非全面否定
第二共同作者Megha Srivastava指出,上述发现不代表对代码生成系统的全盘否定:
- 部分参与者缺乏识别漏洞的专业安全知识;
- 在探索性研究代码等低风险场景中,该系统仍具可靠辅助作用;
- 通过微调可进一步优化代码建议质量。
Srivastava认为,自行开发系统的公司若在内部源代码上继续训练模型,可能获得更有利的位置,促使模型生成更符合自身编码规范与安全实践的输出。
厂商应对策略与技术局限
针对如何防止安全缺陷,研究者提出以下建议:
- 优化提示词机制:建立类似主管审阅草稿的机制,引导用户输入更安全的提示词;
- 确保默认安全:密码学库开发者应确保默认设置安全,避免AI因倾向使用默认值而引入漏洞。
Perry表示,AI辅助代码生成令人振奋,但也带来需前置考虑的问题,未来仍需更多工作探索解决方案。
版权风险与过滤器的不足
除安全问题外,版权风险同样突出。Codex训练数据包含受限制性许可协议的代码,已有案例显示Copilot生成了《Quake》游戏代码及个人书籍示例。法律专家指出,若企业无意中将受版权保护的AI生成代码纳入生产环境,可能面临法律风险。
GitHub虽于六月推出过滤器,将建议代码与约150个字符的公共代码比对以隐藏匹配项,但效果并不完美。德克萨斯农工大学教授Tim Davis发现,启用过滤器后,Copilot仍输出了其大量受版权保护的代码及署名信息。
Srivastava补充道:“鉴于上述原因,我们对使用这些工具取代初级开发者良好编码实践教育的做法持谨慎态度。”

