T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:32
- Finding
- Unpinned and Unreviewable Third-Party npm Package## Vulnerability Details **File Location**: `SKILL.md:32-38` **Vulnerability Type**: Supply-chain risk through an unpinned third-party dependency **Risk Level**: Medium ### Vulnerable Code ```markdown ### Via ClawHub ``` https://clawhub.ai/raghulpasupathi/crisis-detector ``` ### Via npm ```bash npm install @raghulpasupathi/crisis-detector ``` ``` ### Technical Analysis The Skill directs users to install `@raghulpasupathi/crisis-detector` without specifying an exact version, lockfile, package integrity hash, or verified source commit. The audited project contains only `SKILL.md`; therefore, the package implementation and its npm lifecycle scripts cannot be reviewed from the supplied artifact. npm installation can execute package-controlled lifecycle scripts, while an unpinned install can resolve to a package release published after this Skill was audited. Consequently, the code ultimately installed and executed may differ from the behavior documented in the Skill. This finding establishes an unsafe dependency-consumption pattern. It does not establish that the named package is currently malicious. ### Attack Path 1. A user follows the documented installation command. 2. npm resolves the package version allowed by the current registry state rather than an audited, immutable artifact. 3. A compromised maintainer account, registry compromise, or malicious future release introduces hostile package code or lifecycle scripts. 4. npm executes applicable lifecycle scripts during installation, or the application executes the package when it imports `CrisisDetector`. 5. The hostile code runs with the permissions and environmental access of the installing or hosting process. ### Impact Assessment If the dependency or its distribution channel is compromised, code could execute with the privileges of the npm installer or application service. Depending on the deployment environment, the affected scope could include app ...[truncated 294 chars]
- Remediation
- ## Remediation Suggestions - Pin the dependency to an exact reviewed version rather than resolving the latest registry release. - Commit a lockfile containing package integrity values and require immutable, reproducible installation. - Publish or vendor the implementation source needed to audit the package behavior. - Link the documented release to a signed source tag and build provenance. - Review all direct and transitive dependencies with software-composition analysis. - Inspect npm lifecycle scripts before installation. - Use `npm ci` with a reviewed lockfile in automated deployments. - Disable installation scripts with `--ignore-scripts` unless a reviewed script is demonstrably required. - Run the package in a least-privileged, isolated service without unnecessary filesystem, credential, or network access.
