论文
评估和防止人工智能生成的 Ansible 代码中的安全气味
Evaluating and Preventing Security Smells in AI-Generated Ansible Code
摘要
人工智能编码助手生成基础设施即代码,但还没有工作检查该代码是否满足安全要求。这很重要,因为基础设施代码中的安全气味会传播到已部署的系统,从而产生不安全且不可信的基础设施。我们评估了 16 个为 Apache Tomcat v10 和 MongoDB v7 生成 Ansible 角色的 AI 模型,并根据 CIS 基准分析了 278 个 Ansible 角色。如果没有安全指导,所有 16 个人工智能模型都会生成包含安全气味的代码,导致基础设施易受攻击,无法通过合规性验证,并且性能低于人类开发人员编写的代码。我们引入了一种通过扩展的 CO-STAR 框架将 Ansible 最佳实践和 CIS 基准集成到提示中的方法,从而在综合过程中实现安全气味预防,而不是在部署后进行检测。当应用这种方法时,16 个模型中有 4 个生成了合规代码,其中领先的模型实现了 95%-100% 的 CIS 合规性,比人类提高了四倍,达到 23%-43%,整体代码质量提高了 19%-49%。其余 12 个模型失败不是因为它们无法生成代码,而是因为它们无法遵循具有多个约束的指令。对于有能力的模型,该方法不需要重新训练,可以通过系统提示来采用。