Towards Secure Agent Skills: Architecture, Threat Taxonomy, and Security Analysis
Organizations: Institute of Software, Chinese Academy of Sciences, Beijing, China · University of Chinese Academy of Sciences, Beijing, China · Key Laboratory of System Software (Chinese Academy of Sciences), Beijing, China
Abstract
Agent Skills is an emerging open standard that defines a modular, filesystem-based packaging format enabling LLM-based agents to acquire domain-specific expertise on demand. Despite rapid adoption across multiple agentic platforms and the emergence of large community marketplaces, the security properties of Agent Skills have not been systematically studied. This paper presents a systematization of the security of the Agent Skills framework. We define a threat model for the framework and decompose the full lifecycle of an Agent Skill across four phases---Creation, Distribution, Deployment, and Execution---identifying the structural attack surface each phase introduces. Building on this lifecycle analysis, we construct a threat taxonomy comprising seven categories and nineteen scenarios organized across three attack layers, grounded in both architectural analysis and real-world evidence. Each scenario is annotated with whether the exposure follows from the specification or from the latitude the specification leaves to individual runtimes, with the strength of the public evidence supporting it, and with the feasibility of its mitigation. We map seven documented security incidents onto the taxonomy. Based on these findings, we discuss defense directions for each threat category, identify open research challenges, and provide actionable recommendations for stakeholders. The most severe threats arise from structural properties of the framework itself: the absence of a data-instruction boundary, a single-approval persistent trust model, and a capability declaration mechanism to which the specification attaches no enforcement semantics. None of these is addressable through incremental mitigations alone.
Figures & tables
| Dimension | Description | ChatGPT Plugins | MCP | Agent Skills |
| Specification-Determined Properties | ||||
| Instruction Carrier | Format used to convey the capability specification to the agent | ✔ | ▲ | ✘ |
| Data/Instruction Boundary | Whether instructions and runtime data are structurally separated | ✔ | ▲ | ✘✘ |
| Capability Declaration | Whether a capability must declare the resources it accesses, and whether that declaration binds | ✔ | ▲ | ✘ |
| Trust Model | Granularity and persistence of the authority granted when a capability is enabled | ✔ | ✘ | ✘✘ |
| Implementation-Determined Properties | ||||
SKILL.md, supplementary instruction files, and executable scripts. Right: the three-level progressive disclosure process, showing how Skill metadata (), instructions (), and supplementary files () are loaded into the context window incrementally across Levels 1, 2, and 3.| ID | Scenario | Description | Ph | Or | Ev | Fe |
|---|---|---|---|---|---|---|
| Layer 1: Delivery and Trust Establishment | ||||||
| T1: Supply Chain Compromise | ||||||
| T1.1 | Typosquatting | Malicious Skill registered under a name resembling a popular legitimate Skill to deceive users into installation | Di | Ec | M | I |
| T1.2 | Ranking Manipulation | Attacker inflates download counts and ratings to position a malicious Skill above legitimate alternatives | Di | Ec | M | I |
| T1.3 | Repository Hijacking | Attacker gains control of a legitimate Skill repository through account takeover | Di | Ec | D | I |
| T1.4 | Hallucinated Package | Skill references packages that do not exist, which attackers later claim on public registries to achieve code execution | Cr/Di | Ec | D | I |
| Incident | Mapping | Key Impact |
|---|---|---|
| MedusaLocker Skill | T4.1, T2.1 | Ransomware executed via bundled script, consent gap exploited |
| ClawHavoc Campaign | T1.1, T1.2, T5.1 | At least 1,184 malicious Skills, credential theft at ecosystem scale |
| CVE-2025-59536 / CVE-2026-21852 | T6.2, T5.1 | Command execution and API key exfiltration via configuration injection |
| SafeDep PEP 723 | T4.2 | Deferred dependency attack via unpinned script dependencies |
| Mitiga Silent Egress | T5.3, T1.2 | Project codebase exfiltrated in four user interactions, audit log empty |
| Zenity Skill Supply Chain | T1.1, T1.2, T1.5, T5.1 | 1.7 million installations, developer and CI credentials harvested, copies persisted after takedown |
| Dimension | Hou et al. (MCP) ( Hou et al., 2025 ) | Xu and Yan ( Xu and Yan, 2026 ) | OWASP Skills ( OWASP GenAI Security Project, 2026 ) | Ours |
| Threat Categories | ||||
| T1 Supply chain compromise | ⚫ | ⚫ | ⚫ | ⚫ |
| T2 Consent abuse | ◗ | ◗ | ◗ | ⚫ |
| T3 Prompt injection | ⚫ | ⚫ | ⚫ | ⚫ |
| T4 Code execution | ◗ | ⚫ | ⚫ | ⚫ |
| T5 Data exfiltration | ⚫ | ⚫ | ⚫ | ⚫ |
Appendix figures & tables3 assets
Supplementary material from the paper’s appendix.
Appendix
| Mechanism | Level | Basis |
|---|---|---|
| Instruction Carrier | ||
| ChatGPT Plugins | ✔ | The capability is conveyed as an OpenAPI manifest. The document is machine-parseable and enumerates endpoints with typed parameters, so an author cannot express behavioral directives outside the schema ( OpenAI, 2023 ) . |
| MCP | ▲ | Tools, resources, and prompts are declared with structured schemas, but the human-readable description fields accompanying each tool are model-facing prose and are read by the model when selecting operations ( Hou et al., 2025 ) . |
| Agent Skills | ✘ | The instructions body of SKILL.md is unstructured Markdown interpreted directly by the model. The specification imposes no schema on its content ( Agent Skills, 2025 ; Anthropic, 2025a ) . |
| Data/Instruction Boundary | ||
| ChatGPT Plugins | ✔ | The manifest and the API response are distinct artifacts. Response payloads return to the model within a typed envelope and cannot alter the set of operations the model may invoke ( OpenAI, 2023 ) . |
| Mechanism | Level | Basis |
|---|---|---|
| Execution Locus | ||
| ChatGPT Plugins | ✔ | Execution occurs on the provider’s infrastructure. No plugin code runs on the user’s machine ( OpenAI, 2023 ) . |
| MCP | ▲ – ✘ | Servers may be reached over HTTP, in which case execution is remote, or launched over stdio, in which case the server runs as a local user process ( Hou et al., 2025 ) . |
| Agent Skills | ▲ – ✘ | Skills execute within a managed environment on the Claude API and on the user’s host under Claude Code ( Pluto Security, 2026 ) . |
| Runtime Isolation | ||
| ChatGPT Plugins | ✔ | Isolation follows from the execution locus. The user’s machine is not a target of plugin code ( OpenAI, 2023 ) . |
| Mechanism | Level | Basis |
|---|---|---|
| Marketplace Review | ||
| ChatGPT Plugins | ✔ | Publication in the plugin store required passing a review process combining automated and human checks ( CustomGPT, 2023 ) . |
| MCP | ✘ | Distribution is decentralized. Servers are installed directly from source repositories, and no review gate stands between publication and installation ( Hou et al., 2025 ) . |
| Agent Skills | ✘ | The major community marketplaces impose no mandatory review before publication ( Snyk Security Research, 2026 ) . Curated registries that scan and sign Skills have since appeared ( NVIDIA, 2026 ) , but they are additional channels rather than a requirement of the ecosystem. |
LLM Agent Security
Large language model agent security studies attacks and safeguards for systems that plan, use tools, retain memory, and act across applications.
See all 327 papers