本文针对LLM编程智能体(coding agent)的安全防护问题展开研究。编程智能体能够以开发者的权限编辑文件、执行shell命令,因此恶意请求可能被直接转化为有害操作或功能性恶意软件。现有防御手段存在互补性局限:基于权重对齐的微调方法不适用于仅通过API部署的模型;而输入过滤器和执行边界监控器需要在智能体运行轨迹中额外部署分类或检查组件。为此,作者提出SkillShield,一种基于系统提示词(system prompt)的防御方法。该方法离线地从已知攻击或记录的智能体失败案例中综合生成“安全技能”,在会话开始时注入系统提示词,并在整个工具调用循环中持续生效。与参考监控器不同,SkillShield通过定义模型在执行过程中应遵循的安全策略来保护系统。由于系统提示词空间有限,作者研究了三种固定预算下的技能配置范围:全类别(all-classes,一个技能覆盖所有威胁类别)、分组(per-bundle,一个技能针对相关子集)、单类别(per-class,一个技能专门针对单一已知类别,作为上限参考)。这些方案均无需运行时请求分类或路由。在RedCode基准上,基于六个大语言模型的实验表明,默认的全类别技能将恶意软件生成严重度从3.37降至0.58,执行攻击成功率为43.6%,与Llama Guard 3的42.7%相当,但无需额外的8B分类器。分组和单类别设置进一步将攻击成功率降至36.2%和14.5%。在两种非自适应越狱家族下,SkillShield在恶意软件生成方面依然优于所有基线。在731个良性任务描述中,SkillShield的平均安全拒绝率仅为0.14%。这些结果展示了提示空间安全技能在防止LLM编程智能体产生有害行为和生成恶意软件方面的潜力。本文适合关注LLM智能体安全、AI系统防御以及可信AI的研究人员、安全工程师和红蓝队人员阅读。
💡 推荐理由: 该工作为LLM编程智能体提供了一种轻量级、无需额外运行时分类的系统提示词防御方案,显著降低恶意代码生成风险,对API部署场景尤其具有实用价值。
🎯 建议动作: 研究跟进