T08 · Insecure Dependencies
- Location
SKILL.md:14- Finding
Unpinned Third-Party Package Execution and Global Skill Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:14
Vulnerability Type: Unpinned third-party dependency and mutable repository installation
Risk Level: MediumVulnerable Code
bash npx skills add nexscope-ai/Amazon-Skills --skill amazon-listing-optimization -gTechnical Analysis
The documented installation command invokes
npxwithout specifying an exact version of theskillspackage. Depending on the local environment and npm behavior,npxmay download and execute the package version currently resolved by the registry.The command also identifies the GitHub repository by its mutable owner/repository name rather than an immutable, reviewed commit hash. The
-goption requests a global installation. Therefore, the code executed bynpxand the Skill content installed from the repository can differ from the artifact reviewed during this audit.This is a supply-chain weakness rather than evidence that the current package contains malicious code. Exploitation requires compromise or malicious modification of an upstream npm package, publishing account, repository, or resolved dependency.
Attack Path
- An attacker compromises an upstream npm publishing account, the package-resolution path, or the referenced GitHub repository.
- The attacker publishes or commits modified installer or Skill content under the same mutable package or repository identity.
- A user follows the installation command from
SKILL.md. npxresolves and executes the unpinned package, which retrieves the repository's current content.- The malicious installer executes with the invoking user's privileges or installs altered Skill content globally.
- The globally installed content can subsequently influence Skill invocations until it is detected and removed.
Impact Assessment
Successful exploitation could allow arbitrary code execution with the privileges of the user running the installation command. The attacker could access files an ...[truncated 462 chars]
- Remediation
View remediation
Remediation Suggestions
-
Pin the npm installer to an exact, reviewed version rather than relying on registry resolution:
bash npx --yes skills@<exact-reviewed-version> add ... -
Pin the Skill repository source to an immutable, reviewed commit hash or signed release artifact if the installer supports that syntax.
-
Verify package integrity through npm lockfile integrity metadata, checksums, provenance attestations, or signed release verification.
-
Prefer a project-local installation over
-gunless global availability is necessary. -
Document the exact expected package version, repository commit, and artifact checksum so users can verify what will be installed.
-
Run installation without administrator privileges and in a restricted environment where practical.
-
Establish an update process that reviews new versions before changing the pinned dependency or repository revision.
-
