T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:14
- Finding
- Mutable and Unpinned Installation Dependencies<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 14–25 **Vulnerability Type**: Supply-chain exposure through mutable package and repository references **Risk Level**: Medium ### Vulnerable Code ```bash # Install all skills from repo npx skills add https://github.com/barneyjm/camino-skills # Or install specific skills npx skills add https://github.com/barneyjm/camino-skills --skill camino-fitness-finder ``` ```bash npx clawhub@latest install camino-fitness-finder # or: pnpm dlx clawhub@latest install camino-fitness-finder # or: bunx clawhub@latest install camino-fitness-finder ``` ### Technical Analysis The documented installation commands execute package-manager tooling and retrieve Skill content from mutable external sources. The `@latest` tag can resolve to a different package release each time it is used, while the GitHub URL does not identify a reviewed commit hash or signed release. Consequently, the code executed or installed by these commands may differ from the files covered by this audit. The recommendation to install all available companion Skills also broadens the dependency and attack surface beyond the audited fitness-finder Skill. This is not evidence that the current upstream packages are malicious. The vulnerability is the absence of immutable version pinning and integrity verification, which prevents users from reliably reproducing the reviewed installation. ### Attack Path 1. An attacker compromises the package publisher account, package registry entry, GitHub repository, or an upstream maintainer account. 2. The attacker publishes a malicious version under the mutable `latest` tag or modifies the repository's default branch. 3. A user follows one of the documented `npx`, `pnpm dlx`, `bunx`, or GitHub installation commands. 4. The package runner retrieves the altered installer or Skill content. 5. Malicious installation logic executes with the privileges of the invoking user or installs code that runs when the ...[truncated 499 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Replace `@latest` with a reviewed, explicit package version. 2. Pin the GitHub dependency to a full immutable commit hash rather than the default branch. 3. Publish and document package integrity hashes or signed release verification procedures. 4. Prefer lockfiles and package-manager integrity metadata where supported. 5. Recommend installation of only the required Skill by default rather than the entire companion suite. 6. Document the exact versions and commits covered by the security review. 7. Periodically review pinned dependencies and update them through a controlled process that includes code review and integrity validation. ]]>
