T08 · Insecure Dependencies
Warning
- Location
- README.md:62
- Finding
- Unpinned Package Download and Execution Through npx<![CDATA[ ## Vulnerability Details **File Location**: `README.md:62` **Vulnerability Type**: Unpinned third-party package execution **Risk Level**: Medium ### Vulnerable Code ```bash npx skills add feishu-voice-skill ``` ### Technical Analysis The installation documentation invokes the `skills` package through `npx` without specifying a version or integrity value. If the package is not already installed locally, `npx` can retrieve its current release from the configured package registry and execute its CLI code. Because the resolved package is mutable and its provenance is not verified by this project, the code executed by this command may differ from the code reviewed when the Skill was published. A registry compromise, maintainer-account compromise, or package takeover could therefore turn this documented installation command into a supply-chain execution vector. The command does not explicitly use administrative privileges. Consequently, any downloaded code would ordinarily execute with the permissions of the user running `npx`, rather than automatically obtaining root access. ### Attack Path 1. An attacker compromises the package registry entry, maintainer account, or release process for the unpinned `skills` package. 2. The attacker publishes a malicious version as the version selected by default. 3. A user follows the README and runs `npx skills add feishu-voice-skill`. 4. `npx` downloads and executes the attacker-controlled package version. 5. The malicious package can access files, credentials, environment variables, and network resources available to the invoking user. ### Impact Assessment Successful exploitation can provide arbitrary code execution under the invoking user's account. The accessible scope may include the user's files, ClawHub or npm credentials, environment variables, and other resources available to that account. If a user independently runs the documented command from a privileged shell, the downloaded code would inherit t ...[truncated 93 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions - Pin the CLI to a reviewed version, for example `npx skills@<reviewed-version> add feishu-voice-skill`. - Verify and document the expected package publisher and registry. - Use package-lock or equivalent integrity metadata where the installation workflow supports it. - Prefer a locally installed, reviewed CLI invoked with `npx --no-install` so that installation and execution are separate trust decisions. - Document that the command must not be run with `sudo` or from an unnecessarily privileged account. - Establish an update process in which new CLI versions are reviewed before the documented version is changed. ]]>
