T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:4
- Finding
- Unpinned Globally Installed AgentKVM Dependency## Vulnerability Details **File Location**: `SKILL.md`, lines 4 and 11 **Vulnerability Type**: Unpinned third-party package installed globally **Risk Level**: Medium ### Vulnerable Code ```yaml compatibility: Requires agentkvm CLI (npm install -g agentkvm), Node.js >= 18, ffmpeg, and NanoKVM-USB hardware connected via USB. ``` ```markdown - **AgentKVM CLI** — `npm install -g agentkvm` ``` ### Technical Analysis The Skill directs users or agents to install the latest available `agentkvm` npm package globally without specifying a reviewed version, lockfile, package integrity hash, or provenance-verification procedure. Consequently, the installed implementation can change after this Skill has been reviewed. Npm installation can also execute package lifecycle scripts with the privileges of the account performing the installation. Global installation increases the package's availability and potential effect across projects. This is a supply-chain weakness rather than evidence that the current `agentkvm` package is malicious. ### Attack Path 1. An attacker compromises the package publisher account, package distribution channel, or a future package release. 2. The attacker publishes a modified `agentkvm` version containing malicious installation or runtime behavior. 3. A user follows the documented `npm install -g agentkvm` instruction. 4. Npm retrieves the current compromised version and may execute its lifecycle scripts. 5. The malicious package runs with the installing user's privileges and can abuse the device-control workflow when subsequently invoked. ### Impact Assessment Successful exploitation could permit arbitrary code execution under the installing user's account. Depending on that account's permissions, the package could access local files, environment variables, configuration data, attached hardware, screenshots, and keyboard or mouse control capabilities. Global installation may expose the compromise ...[truncated 47 chars]
- Remediation
- ## Remediation Suggestions - Pin `agentkvm` to an explicitly reviewed version instead of installing the latest release. - Record and verify package provenance and integrity before installation. - Prefer a project-local dependency governed by a committed lockfile over a global installation. - Use npm's lockfile integrity data and a trusted internal registry or allowlist where appropriate. - Disable lifecycle scripts during installation when operationally feasible, then explicitly run only reviewed setup steps. - Document the expected package publisher, registry, version, and verification procedure. - Run the CLI using a dedicated, least-privileged account with access restricted to required devices and files.
