T08 · Insecure Dependencies
- Location
README.md:50- Finding
Unpinned Package Execution in the Recommended Installation Command
- Content
View full analysis
Vulnerability Details
File Location:
README.md:50
Vulnerability Type: Unpinned third-party package execution
Risk Level: MediumVulnerable Code Snippet:
bash npx skills add AntreasAntoniou/mailbutler-agent-skillTechnical Analysis
The documented installation command invokes
npxwithout specifying an audited version of theskillspackage. Depending on the local environment and cache state,npxmay retrieve the current package release from the configured npm registry and execute its code with the privileges of the installing user.Because the package version and integrity are not pinned, the code executed by this instruction can change after the Skill itself has been reviewed. A compromised package publisher, npm account, registry, or newly published malicious version could therefore turn the documented installation process into a supply-chain execution channel.
The target Skill reference is also not pinned to a release or commit in the command, reducing installation reproducibility and making it harder for users to verify that the installed content matches an audited revision.
Attack Path
- An attacker compromises the npm package, its publisher account, or another component of the package distribution path used for
skills. - The attacker publishes a malicious version under the package name resolved by
npx. - A user follows the installation command from
README.md. npxretrieves the mutable package version from the configured registry.- The package executes malicious installation logic with the current user's privileges.
- The malicious code may access files and credentials available to that user, alter the installed Skill, or execute additional local commands.
Impact Assessment
Successful exploitation could provide arbitrary code execution under the account running the installation command. The accessible scope would include files, environment variables, ...[truncated 485 chars]
- An attacker compromises the npm package, its publisher account, or another component of the package distribution path used for
- Remediation
View remediation
Remediation Suggestions
- Pin the installer package to a specific audited version, for example by using an explicit
skills@<version>reference supported by the installation tooling. - Publish and verify the expected package integrity hash or signed provenance before execution.
- Pin the Skill source to a signed release tag or immutable commit rather than relying on a mutable repository reference.
- Document the expected npm package publisher, registry, version, and verification procedure so users can detect package substitution.
- Offer a manual installation method that downloads a fixed release archive, verifies its checksum or signature, and installs it without executing an unreviewed package.
- Advise users not to run the installation command with administrator or root privileges.
- Add automated release checks ensuring the documented installer and Skill revision remain pinned and reproducible.
- Pin the installer package to a specific audited version, for example by using an explicit
