T08 · Insecure Dependencies
Error
- Location
- SKILL.md:34
- Finding
- Unpinned Package Retrieval and Execution<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, line 34 **Vulnerability Type**: Unpinned third-party dependency execution **Risk Level**: High ### Vulnerable Code ```markdown ## Connect once \`\`\` npx skills add powmcp/skills --skill substantiate-eu-ebook-accessibility-claim \`\`\` ``` ### Technical Analysis The installation instruction invokes a package through `npx` without pinning the installer package, repository source, release version, commit hash, or integrity digest. Depending on the local `npx` cache and environment, the command may download and execute the currently published version of the `skills` package. The `powmcp/skills` source is also referenced without an immutable revision. Consequently, the components executed or installed when a user follows this instruction can differ from those reviewed during this audit. This creates a supply-chain trust boundary in which compromise of the package registry entry, publisher account, upstream repository, or distribution process could introduce attacker-controlled code. The behavior is not required at this privilege level: the Skill could provide a pinned package version and immutable source revision instead. ### Attack Path 1. An attacker compromises the publisher account, package registry entry, upstream repository, or another relevant distribution component. 2. The attacker publishes a malicious version under the expected package or repository identity. 3. A user follows the documented `npx skills add ...` installation command. 4. `npx` retrieves or resolves the mutable package version. 5. The malicious package executes with the operating-system privileges of the invoking user. 6. The payload can access resources available to that user, including project files, environment variables, credentials readable by the process, and network services. ### Impact Assessment Successful exploitation can result in arbitrary code execution under the invoking user's account. The accessible ...[truncated 688 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Pin the `npx` installer to an explicitly reviewed version, for example by using a command equivalent to `npx skills@<exact-version> ...`. 2. Pin the Skill source to an immutable commit hash or signed release tag rather than the mutable `powmcp/skills` reference. 3. Publish and verify cryptographic checksums or signatures for downloaded artifacts. 4. Use lockfiles where supported and require integrity metadata for all transitive dependencies. 5. Avoid automatic execution of newly downloaded packages. Prefer a separate download-and-verify step before installation. 6. Document the expected package publisher, repository revision, checksum, and verification procedure. 7. Run installation in a sandbox or least-privileged environment without unnecessary credentials or access to sensitive projects. ]]>
