Back to skill

Security audit

find skill 4

Security checks for vulnerabilities and agentic risk

Overview

The skill’s goal is legitimate, but it repeatedly tells agents to run unpinned remote install commands and can install third-party skills globally while skipping prompts.

Review carefully before installing. Prefer a pinned, locally vetted Skills CLI, avoid `-g` and `-y` unless you intentionally want persistent global installation, inspect any third-party skill source before adding it, and only install from sources you trust.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (2)

T08 · Insecure Dependencies

Error
Location
SKILL.md:25
Finding

Unpinned Skills CLI Is Downloaded and Executed at Runtime

Content
View full analysis
` - Install a skill from GitHub or other sources - `npx skills check` - Check for skill updates - `npx skills update` - Update all installed skills **Browse skills at:** https://skills.sh/ ``` The runtime invocation is also recommended during the search workflow in lines 54–62: ```bash npx skills find [query] ``` ### Technical Analysis The skill instructs the agent to invoke the `skills` npm package through `npx` without pinning an exact, previously audited version. Depending on the local npm environment, `npx` may retrieve the package from a remote registry and immediately execute its code. The document does not specify an integrity hash, lockfile, immutable package revision, trusted registry configuration, or verified publisher identity. Consequently, the package executed in the future may differ from the package that existed when this skill was reviewed. A compromised package release, registry account, dependency, or package-resolution configuration could therefore introduce attacker-controlled executable code. Repository popularity, installation counts, and publisher reputation do not provide cryptographic verification of the artifact that is ultimately executed. ### Attack Path 1. An attacker compromises the `skills` npm package, one of its dependencies, its publisher account, or a registry used by the environment. 2. The attacker publishes a malicious version or manipulates package resolution so that the package name resolves to attacker-controlled content. 3. A user asks the agent to find a skill. 4. Following `SKILL.md`, the agent runs `npx skills find [query]`. 5. `npx` downloads and executes the unresolved current package version. 6. T ...[truncated 675 chars]
Remediation
View remediation

T08 · Insecure Dependencies

Error
Location
SKILL.md:87
Finding

Unattended Global Installation of Unpinned Third-Party Skills

Content
View full analysis
-g -y ``` The `-g` flag installs globally (user-level) and `-y` skips confirmation prompts. ``` ### Technical Analysis The prescribed command installs a third-party skill globally at the user level. The `-y` option suppresses the package manager's confirmation prompt, while `-g` extends the installed component's availability beyond the current project. The source reference uses a mutable repository and skill identifier rather than an immutable commit and verified artifact digest. Although the document advises checking install counts, repository ownership, and GitHub stars, these are reputation heuristics rather than security controls. They do not establish that the content being installed is safe or that it has not changed since review. No mandatory inspection of the downloaded files, scripts, dependencies, or skill instructions occurs before global activation. A malicious or compromised source could consequently introduce hostile instructions or executable content into later agent operations. ### Attack Path 1. An attacker publishes a malicious skill or compromises a repository that previously had a trustworthy reputation. 2. The skill appears legitimate based on installation count, repository ownership, or star count. 3. The agent recommends the compromised skill in response to a user request. 4. After the user agrees to proceed, the agent runs `npx skills add -g -y`. 5. The mutable remote source is retrieved without pinning it to an audited commit or verifying an artifact digest. 6. Confirmation is skipped, and the content is installed globally for the user. 7. Malicious instructions, s ...[truncated 879 chars]
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (16)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill description is broadly scoped around common phrases like 'how do I do X' and 'can you do X', which overlap with many benign requests. This can cause the skill to activate unexpectedly and steer ordinary conversations toward package discovery and installation workflows, increasing exposure to the risky commands and supply-chain behaviors described elsewhere in the file.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The 'When to Use This Skill' section uses ambiguous activation conditions without clear boundaries, making unintended invocation likely. In context, that matters because accidental activation can push users toward executing external package-manager commands and considering third-party installs when they may have only wanted direct assistance.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
93% confidence
Finding

The skill repeatedly instructs the agent or user to run npx skills without pinning a package version, which allows execution of whatever package version is current at runtime. Because npx can fetch and execute remote code, a compromised package release, dependency takeover, or malicious upstream update could lead to arbitrary code execution during search, install, update, or check operations.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
93% confidence
Finding

Using npx skills add <package> without pinning the CLI version means the command may execute newly published or tampered remote code. In a skill whose purpose is discovering and installing other skills, this creates a supply-chain risk at the very first step and can expose the host environment to arbitrary command execution.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
93% confidence
Finding

The unpinned npx skills check command still requires resolving and executing the remote CLI package, so it carries the same code-execution risk as install commands. Even a seemingly read-only operation can run arbitrary package lifecycle or application code if the upstream package is compromised.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
93% confidence
Finding

npx skills update is especially risky when unpinned because it combines remote CLI execution with updating installed components, broadening supply-chain exposure. An attacker controlling the CLI package or its dependencies could trigger arbitrary code execution and potentially introduce or modify installed skills.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
93% confidence
Finding

The generic instruction to browse/install from 'GitHub or other sources' via an unpinned npx command increases both package-manager and source trust risks. The combination of remote code execution through npx and broad external source installation materially raises the chance of malicious code being run on the user's machine.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
93% confidence
Finding

The search example npx skills find [query] invokes the unpinned CLI and therefore inherits the same supply-chain execution risk. Because this skill is designed to be broadly triggered for many user requests, the unsafe command pattern could be invoked frequently and normalize execution of mutable remote code.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding

This example search command is another instance of unpinned remote package execution via npx. The contextual risk is higher here because the skill encourages routine use in response to ordinary user questions, which can turn a supply-chain hazard into a common operational path.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding

The pr review search example still executes an unpinned remote CLI package, exposing the environment to arbitrary code if the package or dependency chain is compromised. Repetition throughout the document reinforces unsafe operational guidance rather than containing the risk to a single incidental mention.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding

The changelog search example is also a true instance of the same remote execution weakness: unpinned npx resolves and runs the latest available package code. In an installation-discovery skill, these examples directly shape agent behavior, so the risk is operationally meaningful rather than theoretical.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
94% confidence
Finding

The installation command shown to users uses unpinned npx, meaning both the installer and the target skill acquisition path depend on mutable upstream content. This is dangerous because it can lead to arbitrary code execution during installation and compounds trust in both the CLI package and the referenced skill source.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill explicitly recommends global installation (-g) with skipped confirmations (-y) but does not warn about persistence, trust, or system impact. This lowers the barrier to making system-wide changes from third-party sources and can cause silent installation of unreviewed code, especially hazardous in an agent-mediated workflow where the user may not fully appreciate the implications.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
96% confidence
Finding

npx skills add <owner/repo@skill> -g -y is particularly dangerous because it combines unpinned remote CLI execution with global installation and suppressed confirmation prompts. This can silently make persistent system-wide changes and removes an important user friction point that might otherwise prevent unsafe installs.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
93% confidence
Finding

The recommendation to use npx skills init remains an unpinned remote package execution path. Even though this is framed as a developer convenience command, it still runs upstream code and therefore exposes the environment to the same supply-chain compromise risks.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
93% confidence
Finding

This final unpinned npx skills reference continues the pattern of directing execution of mutable remote code. Because the file consistently promotes this behavior, the aggregate risk is elevated: users and agents are repeatedly encouraged to trust and execute latest-package content without controls.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.