T08 · Insecure Dependencies
- Location
SKILL.md:15- Finding
Unpinned npm Package Execution Through npx
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:15-19; duplicated in.agents/skills/finloop-news-skill/SKILL.md:15-19
Vulnerability Type: Unpinned third-party package execution
Risk Level: MediumVulnerable Code
markdown ### Install through npm/npx (recommended) ```bash # Install into the local project npx finloop-news-skills install finloop-news-skilltext ### Technical Analysis The documented installation command executes the npm package `finloop-news-skills` without specifying an exact version or verifying package integrity. When the package is not already available locally, `npx` can retrieve the package currently published under that name and execute its CLI. Consequently, the code executed by users is not necessarily the same code reviewed in this audit. A later malicious release, npm account compromise, package-name takeover, or registry compromise could alter the effective installation payload. The empty repository URL in the supplied manifest also prevents users from readily validating package provenance against a canonical source repository. This is a supply-chain risk rather than evidence that the currently supplied installer is malicious. ### Attack Path 1. An attacker compromises the npm publisher account, takes control of the package, or causes a malicious later version to be published. 2. The attacker publishes modified package contents or malicious npm lifecycle behavior under `finloop-news-skills`. 3. A user follows the documented unpinned command: `npx finloop-news-skills install finloop-news-skill`. 4. `npx` resolves and downloads the attacker-controlled current package version. 5. The package CLI or applicable lifecycle scripts execute with the permissions of the user running `npx`. 6. The malicious package can access or modify resources available to that user. ### Impact Assessment Successful exploitation could result in arbitrary code execution under ...[truncated 428 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the installation command to a reviewed exact version:
bash npx finloop-news-skills@1.1.3 install finloop-news-skill - Publish npm provenance attestations and populate the manifest with the canonical repository URL and release source.
- Provide package checksums or integrity metadata through a trusted release channel.
- Avoid npm lifecycle scripts unless strictly necessary, and document any scripts that execute during installation.
- Recommend testing installation in a restricted environment without unnecessary credentials or elevated privileges.
- Keep both copies of the installation documentation synchronized so that neither reintroduces an unpinned command.
- Pin the installation command to a reviewed exact version:
