T08 · Insecure Dependencies
- Location
README.md:94- Finding
Unpinned Third-Party Installer and Mutable Skill Source
- Content
View full analysis
Vulnerability Details
File Location:
README.md:94
Vulnerability Type: Unpinned third-party dependency execution
Risk Level: MediumVulnerable Code
bash npx skills add JoseArroyave/agent-skills --skill gemini-tavily-searchTechnical Analysis
The documented installation command invokes the third-party
skillspackage throughnpxwithout specifying a reviewed package version or integrity hash. Depending on the local environment,npxcan retrieve and execute the currently published package from the configured npm registry.The referenced
JoseArroyave/agent-skillssource is also not pinned to an immutable commit or verified release artifact. Consequently, both the installer and the installed source can change after this project has been audited. This creates a time-of-review versus time-of-installation discrepancy and exposes users to upstream account compromise, malicious package releases, registry compromise, or unauthorized repository changes.No evidence was found that the currently reviewed scripts contain a malicious payload. The issue is the installation process's reliance on mutable, externally controlled components.
Attack Path
- An attacker compromises the npm package, its maintainer account, the configured package registry, or the referenced upstream repository.
- The attacker publishes a modified installer release or replaces the repository content selected by the unpinned reference.
- A user follows the documented installation command.
npxdownloads and executes the mutable installer package, which then retrieves or installs the mutable Skill content.- Attacker-controlled installer code executes with the privileges of the user running the command, or malicious files are placed into the user's Agent Skill environment.
- The malicious installation may access files and credentials available to that user or affect later Agent runs.
Impact Assessment
Su ...[truncated 492 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the
skillsnpm package to a specific reviewed version rather than allowingnpxto resolve the latest available release. - Pin
JoseArroyave/agent-skillsto an immutable commit hash or a cryptographically signed release tag. - Publish and verify a checksum or signature for the expected Skill artifact before installation.
- Use
npx --no-installwhen the installer is expected to be installed and reviewed locally, preventing implicit network retrieval. - Prefer downloading a versioned release artifact, verifying its signature or checksum, inspecting its contents, and then installing it locally.
- Document that installation should be performed as an unprivileged user in an isolated environment with only the minimum required filesystem and credential access.
- Add automated dependency provenance and integrity verification to the release process.
- Pin the
