T08 · Insecure Dependencies
- Location
SKILL.md:14- Finding
Unpinned Global Installation of an Externally Hosted CLI Package
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:14-18
Vulnerability Type: Uncontrolled third-party dependency installation
Risk Level: MediumVulnerable Code Snippet:
bash # Install npm install -g cineprompt # Auth (Pro subscription required for API) cineprompt auth cp_your_key_hereTechnical Analysis
The installation instructions retrieve the current
cinepromptpackage from the npm registry and install it globally without specifying an exact version or integrity hash. The source code for that installed package is not included in the audited project, so its effective behavior cannot be verified from this repository.A global npm installation may execute package lifecycle scripts during installation and makes the resulting executable available across the user's environment. Because the dependency is not pinned, a future package release, compromised maintainer account, or registry compromise could cause users to execute code materially different from the code that was originally reviewed.
This finding does not establish that the current npm package is malicious. The risk arises from trusting mutable, unaudited third-party content and installing it globally.
Attack Path
- An attacker compromises the npm package, its publisher account, or a future release process.
- The attacker publishes a modified release under the expected package name.
- A user follows the Skill instructions and runs
npm install -g cineprompt. - npm downloads the latest release rather than a reviewed and pinned version.
- Malicious lifecycle or CLI code executes with the permissions of the user running npm.
- The globally installed command remains available for subsequent invocations.
Impact Assessment
Successful exploitation could provide code execution under the installing user's account. Potentially affected resources include files accessible to that account, environment variables, applicat ...[truncated 356 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the CLI to an exact reviewed version, for example:
bash npm install --global cineprompt@X.Y.Z - Publish and verify the package integrity hash and provenance for the recommended release.
- Provide a link to the source revision corresponding exactly to the published npm artifact.
- Prefer a project-local installation over a global installation:
bash npm install --save-exact cineprompt@X.Y.Z - Commit a lockfile where applicable and use
npm ciin automated environments. - Disable lifecycle scripts where they are unnecessary and operationally compatible:
bash npm install --ignore-scripts --save-exact cineprompt@X.Y.Z - Document that users should not run the installation with elevated privileges.
- Pin the CLI to an exact reviewed version, for example:
