T08 · Insecure Dependencies
- Location
SKILL.md:18- Finding
Unpinned Third-Party Package Installed Globally and Executed with Desktop-Control Permissions
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 18–44
Vulnerability Type: Unpinned and globally installed third-party dependency
Risk Level: MediumVulnerable Code
sh npm i -g open-computer-useOn macOS, the installed package is subsequently executed and granted Accessibility and Screen Recording permissions:
sh open-computer-useIt can also modify MCP or plugin configuration for multiple agent runtimes:
sh open-computer-use install-codex-mcpjson { "mcpServers": { "open-computer-use": { "command": "open-computer-use", "args": ["mcp"] } } }sh open-computer-use install-codex-plugin open-computer-use install-claude-mcp open-computer-use install-gemini-mcp open-computer-use install-opencode-mcpTechnical Analysis
The skill directs users to install the latest available version of
open-computer-useglobally from npm without pinning a reviewed version or requiring integrity or signature verification. A global npm installation executes package lifecycle scripts with the privileges of the invoking user and makes the resulting executable available system-wide.The installed executable is then intended to receive macOS Accessibility and Screen Recording permissions and to operate local desktop applications. Installer subcommands can also update MCP or plugin configuration for several agent runtimes. Consequently, the trust placed in the mutable npm package is substantially greater than that of a typical isolated application dependency.
No evidence in the audited file demonstrates that the named package is currently malicious. The issue is the unsafe dependency acquisition model: a future compromised account, malicious release, registry substitution, or unexpected package update could cause reviewed instructions to install materially different code.
Attack Path
- An attacker compromises the ...[truncated 1563 chars]
- Remediation
View remediation
Remediation Suggestions
-
Pin the installation command to a specific reviewed release, such as:
sh npm install --global open-computer-use@<audited-version> -
Publish expected package integrity hashes or signed release attestations and document how users must verify them before installation.
-
Prefer a project-local, lockfile-backed installation over a global installation where supported, reducing cross-project exposure and improving reproducibility.
-
Document all files and configuration entries changed by each MCP or plugin installer command.
-
Provide a review or dry-run mode that displays proposed configuration changes before applying them.
-
Advise users to inspect package provenance, publisher identity, release signatures, and lifecycle scripts before installation.
-
Recommend granting Accessibility and Screen Recording permissions only to a verified binary and revoking those permissions when computer-control functionality is no longer required.
-
Run the service under the least-privileged account and isolate it from sensitive files or applications wherever practical.
-
