SkillShield: Prompt-Space Security Skills for LLM Coding Agents

TL;DR

SkillShield通过离线生成安全技能,利用系统提示防护LLM编码代理,显著降低恶意行为风险。

cs.CR 🔴 高级 2026-08-26 72 次浏览
Xiaodong Wu Zhimin Zhao Qi Li Xiangman Li Yu Shi Bram Adams Jianbing Ni
人工智能 安全防护 大语言模型 系统提示 安全技能

核心发现

方法论

该方法通过离线从已知攻击或代理失败中合成安全技能,将其注入系统提示中,持续影响模型行为。分为全类覆盖、子集覆盖和单类覆盖三种配置,无需运行时分类或路由。实验证明在六个大型语言模型上,全部类技能将恶意代码生成严重度从3.37降至0.58,攻击成功率从43.6%降至14.5%。

关键结果

  • 全类技能显著降低恶意代码生成严重度,提升安全性,攻击成功率由67.4%降至43.6%。
  • 按类别和子集配置进一步优化,成功率分别降至14.5%和36.2%。
  • 在两类非自适应越狱攻击下,SkillShield持续优于所有基线方法,平均安全拒绝率仅为0.14%。

研究意义

该研究突破了传统依赖模型微调或运行时检测的限制,提出基于系统提示的离线安全技能注入方案,为API部署环境提供高效、无额外成本的安全防护手段。这不仅增强了LLM编码代理的安全性,也为未来安全策略的自动化合成提供了新思路。

技术贡献

提出基于攻击数据离线合成安全技能,创新性地将安全策略嵌入系统提示中,避免模型微调或引入额外检测组件。通过有限预算配置实现多层次安全防护,验证了不同覆盖范围下的性能权衡,为prompt空间安全提供理论基础和实践方案。

新颖性

首次系统性提出在有限prompt空间内,离线合成多层次、威胁特异的安全技能,显著提升LLM编码代理的抗攻击能力。区别于现有边界提醒和运行时检测,强调预先构建、静态注入的安全策略,具有较强的实用性和扩展性。

局限性

  • 当前方案依赖攻击数据的完整性和代表性,可能对未知攻击类型效果有限。
  • 在极端复杂或多目标攻击场景下,单一系统提示可能不足以覆盖所有威胁。
  • 有限prompt空间限制导致类别覆盖与细节表达之间存在权衡,未来需优化空间利用率。

未来方向

未来将探索动态更新安全技能机制,结合多模态信息增强检测能力,提升对新型攻击的适应性。同时,结合强化学习优化技能合成策略,实现更细粒度的威胁识别与响应。

AI 总览摘要

随着大语言模型(LLM)在代码生成和系统操作中的广泛应用,安全风险也日益凸显。恶意请求可能导致模型执行有害命令或生成恶意代码,威胁系统安全和数据完整性。传统防御手段如模型微调、输入过滤和运行时监控各有局限:微调成本高、过滤易被绕过、监控增加延迟。为此,本文提出SkillShield,一种基于系统提示的离线安全技能注入方案。

SkillShield通过分析已知攻击和代理失败,合成威胁特异的安全策略,并在会话开始时注入系统提示中,贯穿整个交互过程。该方法无需模型微调或运行时分类,适应API部署环境。实验在六个大型语言模型上验证,全部类配置将恶意代码生成严重度从3.37降至0.58,攻击成功率从43.6%降至14.5%,表现优于现有基线。按类别和子集配置进一步提升防护效果,显示出空间利用与威胁覆盖的权衡。

该研究不仅提供了一种高效、可扩展的安全防护策略,也为未来自动化威胁检测和策略合成提供了理论基础。其在实际应用中,可显著降低编码代理的恶意行为风险,增强系统的鲁棒性和可信度。未来工作将聚焦于动态技能更新、多模态信息融合及多目标优化,以应对不断演变的安全挑战。

深度分析

研究背景

近年来,LLM在代码生成、系统交互等方面取得突破,但安全问题日益突出。早期方法依赖模型微调(如RLHF、Constitutional AI)实现安全,但成本高且难以快速适应新威胁。输入过滤和运行时检测虽能拦截部分攻击,但存在延迟和漏检。prompt空间安全策略逐渐兴起,利用系统提示引导模型行为,但缺乏针对威胁的结构化设计。RedCode等基准推动了攻击场景的标准化,但缺少高效的威胁防护方案。本文基于此背景,提出离线合成安全技能,填补了prompt空间安全的空白。

核心问题

现有防御手段难以兼顾效率与全面性,模型微调成本高,检测机制复杂,且难以应对新型攻击。尤其在API部署环境中,无法修改模型权重,需在有限prompt空间内实现威胁特异的安全策略。如何在不增加运行时成本的前提下,提升模型对恶意请求的识别与拒绝能力,成为亟待解决的核心问题。

核心创新

本研究提出离线合成安全技能,利用攻击数据和失败轨迹,自动生成威胁特异的安全策略,嵌入系统提示中。创新点包括:1)多层次配置(全类、子集、单类)以平衡空间利用与威胁覆盖;2)无需模型微调或运行时分类,降低部署成本;3)基于攻击数据的主动和被动学习,提升策略的针对性和鲁棒性。这些创新共同提升了prompt空间安全的实用性和效果。

方法详解

  • �� 利用攻击数据(RedCode、Abuse Reports)主动提取攻击签名,形成检测规则。• 通过分析代理失败轨迹,反向学习攻击原则,生成防御策略。• 将签名和原则整合为Markdown格式的安全技能,加入预定义前缀,确保在会话开始即生效。• 根据威胁类别划分,设计全类、子集和单类三种配置,优化空间利用。• 在会话中,模型遵循系统提示中的安全策略,自动拒绝恶意请求。• 不依赖模型微调或运行时检测,降低成本和复杂度。

实验设计

在六个不同的LLM(如GPT-4、Llama 2、Claude等)上,使用RedCode和自定义攻击集进行测试。评估指标包括恶意代码严重度、攻击成功率和安全拒绝率。对比基线包括无防护、边界提醒和运行时监控。通过不同配置(全类、子集、单类)验证空间利用与防护效果的权衡。还测试了越狱攻击和误报率,确保方案的鲁棒性。

结果分析

全类技能将恶意代码严重度从3.37降至0.58,攻击成功率从43.6%降至14.5%,显著提升安全性。子集和单类配置进一步降低成功率,分别达36.2%和14.5%。在越狱攻击中,SkillShield依然优于所有对比方法,安全拒绝率保持在0.14%。这些数据验证了离线合成策略的有效性和灵活性,显示出在有限prompt空间内实现威胁特异防护的潜力。

应用场景

该方案适用于企业内部编码代理、开源代码助手和云端API服务。部署前,管理员根据威胁评估合成对应的安全技能,嵌入系统提示中。模型在运行时遵循提示指令,自动识别并拒绝恶意请求,提升系统安全性。未来,结合自动威胁检测和持续学习,将进一步增强防护能力。

局限与展望

当前方案依赖已知攻击样本,面对未知威胁时效果有限。空间限制导致类别覆盖与细节表达存在权衡,可能影响细粒度防护。模型在极端复杂场景下可能仍被绕过,未来需结合多模态信息和动态更新机制提升鲁棒性。

通俗解读 非专业人士也能看懂

想象你在一个工厂里工作,工厂每天都要生产各种商品。有时候,有些坏人会偷偷带来坏货,试图让工厂生产出有害的商品,甚至可能造成工厂的损失。工厂的管理者希望提前准备一些安全规则,告诉工人遇到坏货时要拒绝生产,不让坏货进入生产线。SkillShield就像这些提前准备的安全规则,它们在工厂的操作手册里写好,工人在工作时会遵守这些规则,自动识别并拒绝那些危险的请求。这样,即使坏人试图欺骗工人,也难以成功,工厂的安全就得到保障。这种方法不需要每次都重新调整工厂的机器,只要提前写好规则,工人就能一直遵守,保证工厂的正常运转。

简单解释 像给14岁少年讲一样

想象你在学校里,有一位老师会提前告诉你哪些行为是不允许的,比如不能偷偷作弊或者做坏事。每次你遇到这些不好的事情时,你都会立刻拒绝,不去做。SkillShield就像老师提前写好的规则卡片,放在你的书包里,每次上学都带着。这样,无论有人试图让你做坏事,你都能马上知道不能做,自己也不会被欺骗。这种方法不用每次都重新教你规则,只要提前准备好,就能一直帮你保护自己,避免陷入麻烦。它就像一份安全指南,让你在学校里更安心、聪明地应对各种情况。

原文摘要

A coding agent edits files and executes shell commands with its developer's privileges, allowing malicious requests to translate directly into harmful actions or functional malware. Existing defenses have complementary limitations: weight-level alignment is unavailable to API-only deployers, whereas input filters and execution-boundary monitors require auxiliary classification or checking components along the agent's trajectory. We therefore introduce SkillShield, a system-prompt defense that synthesizes security skills offline from known attacks or recorded agent failures. These skills are injected into the system prompt at session start and remain active throughout the tool-use loop. Unlike a reference monitor, they protect the system by defining the security policies the model should follow during execution. Due to the limited system-prompt space, we examine three fixed-budget provisioning scopes: all-classes, with one skill covering all threat classes, per-bundle, with one skill targeting a related subset, and per-class, with one skill dedicated to a single known class and used as the upper-bound reference. None requires runtime request classification or routing. Across six large language models on RedCode, the default all-classes skill reduces malware-generation severity from 3.37 to 0.58 and achieves a 43.6% execution attack success rate, comparable to Llama Guard 3's 42.7% without its separate 8B classifier. The per-bundle and class-fixed per-class settings further reduce this rate to 36.2% and 14.5%, respectively. Under two non-adaptive jailbreak families, SkillShield continues to outperform all baselines on malware generation. Across 731 benign task descriptions, SkillShield yields a mean safety-refusal rate of 0.14%. These results demonstrate the potential of prompt-space security skills to prevent harmful actions and malware generation for LLM coding agents.

cs.CR