T08 · Insecure Dependencies
Warning
- Location
- README.md:31
- Finding
- Unpinned Remote Packages Are Executed During Installation<![CDATA[ ## Vulnerability Details **File Location**: `README.md:31-37` **Vulnerability Type**: Unpinned third-party package execution **Risk Level**: Medium ### Vulnerable Code ```bash npx add https://github.com/wpank/ai/tree/main/skills/writing/clear-writing ``` ```bash npx clawhub@latest install clear-writing ``` ### Technical Analysis Both installation methods use `npx` to download and execute code obtained from remote sources. The first command implicitly resolves and executes the npm package named `add`, without pinning its version. It also installs the Skill from a mutable GitHub branch path rather than an immutable commit. The second command explicitly requests the mutable `latest` version of `clawhub`. Consequently, the code executed at installation time may differ from the code that was originally reviewed. The commands provide no version lock, integrity hash, signature verification, or immutable source reference. Although the audit found no evidence that the current packages or repository are malicious, this installation pattern creates a supply-chain trust boundary that is unnecessary for a documentation-only Skill. ### Attack Path 1. An attacker compromises the npm account, package publication process, GitHub account, repository, or another relevant upstream distribution channel. 2. The attacker publishes a malicious version of `add` or `clawhub`, or modifies content referenced by the mutable GitHub path. 3. A user follows the installation instructions in `README.md`. 4. `npx` downloads the currently resolved package version and executes its CLI or lifecycle behavior. 5. The malicious package runs with the permissions of the user performing the installation. 6. The package can access files and credentials available to that user, modify local configuration, install additional payloads, or make outbound network requests. ### Impact Assessment Successful exploitation could provide arbitrary code execution under the installing user's accou ...[truncated 524 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Pin every npm CLI dependency to a reviewed version instead of relying on implicit resolution or `@latest`: ```bash npx --yes clawhub@<reviewed-version> install clear-writing ``` 2. Replace mutable GitHub branch paths with an immutable commit reference or a versioned release artifact. 3. Publish checksums or cryptographic signatures for release artifacts and document how users should verify them before installation. 4. Prefer installation from a reviewed local archive for this documentation-only Skill, avoiding execution of downloaded package code where possible. 5. Clearly warn users that `npx` downloads and executes third-party code. 6. In automated environments, use a lockfile, an approved internal package mirror, and package allowlisting. 7. Run installation in a sandbox or container with minimal filesystem access, no unnecessary credentials, and restricted outbound network access. ]]>
