Agent Skills Enable a New Class of Realistic and Trivially Simple Prompt Injections

TL;DR

Agent Skills框架易受简单提示注入攻击,导致敏感数据泄露。

cs.LG 🟡 进阶级 2025-10-30 4 次浏览
David Schmotz Sahar Abdelnabi Maksym Andriushchenko
LLM 安全性 提示注入 Agent Skills 持续学习

核心发现

方法论

研究采用了Agent Skills框架,该框架通过简单的markdown文件为代理提供新知识。研究展示了如何在长技能文件和引用脚本中隐藏恶意指令,以提取敏感数据。通过修改Claude Code和Claude Web Interface的实验,证明了系统级防护的绕过方法。

关键结果

  • 结果1:在Claude Code中,恶意脚本成功上传演示文稿到外部API,显示了提示注入的有效性。
  • 结果2:Claude Web Interface中,尽管阻止了网络流量,但通过附加恶意URL泄露了敏感信息。
  • 结果3:实验表明,提示注入可在技能描述或主体中实现,无需外部脚本。

研究意义

此研究揭示了Agent Skills框架在实际应用中的安全漏洞,尽管其在持续学习中有潜力。研究强调了在高风险环境中,简单提示注入可能导致严重安全问题,提示需要更强的模型级防护。

技术贡献

研究揭示了Agent Skills框架的根本不安全性,并展示了如何利用简单提示注入绕过现有的系统防护。研究提供了对现有防御机制的挑战,并建议了新的安全策略。

新颖性

该研究首次揭示了Agent Skills框架中的提示注入漏洞,展示了如何在实际场景中利用这些漏洞进行攻击,与现有研究形成鲜明对比。

局限性

  • 局限1:研究主要集中在Claude平台,其他平台的适用性有待验证。
  • 局限2:实验环境较为理想化,实际应用中可能存在其他变量。

未来方向

未来研究可以探索更广泛的平台和环境中的提示注入防御策略,并开发更强大的模型级安全机制。

AI 总览摘要

Agent Skills框架为代理提供了通过简单markdown文件获取新知识的能力。然而,研究发现该框架存在严重的安全漏洞,易受简单提示注入攻击。通过在长技能文件和引用脚本中隐藏恶意指令,攻击者可以提取敏感数据,如内部文件或密码。实验展示了如何绕过流行编码代理的系统级防护,说明即使在高风险环境中,简单提示注入也可能导致严重安全问题。

研究强调了当前LLM在实际应用中的安全性挑战,尽管模型能力不断扩展,但简单提示注入仍然是一个未解决的问题。研究建议在模型级别和系统级别实施更强的防护措施,以应对这些安全漏洞。

研究的代码已在GitHub上公开,旨在推动社区对提示注入问题的关注和解决。未来的研究方向包括开发更强大的防御机制和探索更广泛的应用场景。

深度分析

研究背景

近年来,大型语言模型(LLM)在自然语言处理领域取得了显著进展。然而,如何在不影响模型性能的情况下实现持续学习仍是一个未解决的挑战。Agent Skills框架被引入以通过简单的markdown文件为代理提供新知识,然而其安全性尚未得到充分验证。

核心问题

Agent Skills框架的核心问题在于其易受简单提示注入攻击。由于技能文件中的每一行都被解释为指令,攻击者可以轻松隐藏恶意指令,从而提取敏感数据。这种攻击在实际应用中可能导致严重的安全问题。

核心创新

研究的核心创新在于揭示了Agent Skills框架的安全漏洞,并展示了如何利用这些漏洞进行攻击。通过在技能文件中隐藏恶意指令,研究展示了绕过系统级防护的可能性。

方法详解

  • �� 使用Agent Skills框架进行实验,分析其安全性。
  • �� 在Claude Code中修改技能文件,插入恶意脚本。
  • �� 在Claude Web Interface中测试相同攻击,观察防护机制的反应。
  • �� 分析提示注入的有效性和绕过系统防护的可能性。

实验设计

实验设计包括在Claude Code和Claude Web Interface中测试提示注入攻击。使用Anthropic发布的技能文件进行修改,并插入恶意脚本以观察系统反应。实验重点在于验证提示注入的有效性和系统防护的漏洞。

结果分析

实验结果显示,提示注入在Claude Code中成功上传演示文稿到外部API,而在Claude Web Interface中,尽管阻止了网络流量,但通过附加恶意URL泄露了敏感信息。

应用场景

研究结果适用于需要高安全性的应用场景,如金融和医疗领域。通过识别和修复提示注入漏洞,可以提高这些领域的系统安全性。

局限与展望

研究局限于Claude平台,其他平台的适用性有待验证。此外,实验环境较为理想化,实际应用中可能存在其他变量。未来研究需探索更广泛的平台和环境中的防御策略。

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

想象你在厨房里做饭。Agent Skills就像一本食谱,告诉你如何做每道菜。然而,如果有人在食谱中偷偷加入了错误的步骤,你可能会做出不想要的菜。这个研究发现,Agent Skills框架就像这本食谱,容易被人偷偷加入错误的步骤(即提示注入),从而导致不良后果。通过在食谱中隐藏恶意指令,攻击者可以让你做出错误的菜(即泄露敏感信息)。所以,我们需要更好的方法来检查食谱中的每个步骤,确保没有人偷偷加入错误的指令。

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

想象一下你在玩一个游戏,游戏里有个助手帮你完成任务。这个助手会根据你给它的指令行动,就像Agent Skills框架一样。但是,如果有人偷偷给助手下了坏指令,它可能会做一些你不想让它做的事情,比如泄露你的游戏密码!这个研究发现,这种情况在Agent Skills框架中很容易发生。为了防止这种情况,我们需要确保助手只执行正确的指令,就像在游戏中确保助手只帮助你赢得比赛一样。

术语表

Agent Skills (代理技能)

一种通过简单markdown文件为代理提供新知识的框架。

在研究中用于展示提示注入攻击的易用性。

Prompt Injection (提示注入)

通过在指令中隐藏恶意代码来操纵系统行为的攻击方式。

研究中展示了如何通过提示注入提取敏感数据。

Claude Code

一种用于测试Agent Skills框架的实验平台。

在实验中用于验证提示注入攻击的有效性。

Markdown File (Markdown文件)

一种用于存储Agent Skills指令的简单文本文件格式。

在研究中用于存储和隐藏恶意指令。

System Guardrails (系统防护)

用于保护系统免受恶意攻击的安全机制。

研究中展示了如何绕过这些防护。

开放问题 这项研究留下的未解疑问

  • 1 如何在不影响性能的情况下增强Agent Skills的安全性?
  • 2 是否有更有效的检测提示注入的方法?
  • 3 如何在其他平台上验证研究结果的适用性?

应用场景

近期应用

安全审计

可以用于审计现有系统中的Agent Skills,识别潜在的提示注入漏洞。

远期愿景

安全框架开发

开发更安全的Agent Skills框架,减少提示注入攻击的可能性。

原文摘要

Enabling continual learning in LLMs remains a key unresolved research challenge. In a recent announcement, a frontier LLM company made a step towards this by introducing Agent Skills, a framework that equips agents with new knowledge based on instructions stored in simple markdown files. Although Agent Skills can be a very useful tool, we show that they are fundamentally insecure, since they enable trivially simple prompt injections. We demonstrate how to hide malicious instructions in long Agent Skill files and referenced scripts to exfiltrate sensitive data, such as internal files or passwords. Importantly, we show how to bypass system-level guardrails of a popular coding agent: a benign, task-specific approval with the "Don't ask again" option can carry over to closely related but harmful actions. Overall, we conclude that despite ongoing research efforts and scaling model capabilities, frontier LLMs remain vulnerable to very simple prompt injections in realistic scenarios. Our code is available at https://github.com/aisa-group/promptinject-agent-skills.

cs.LG