T08 · Insecure Dependencies
- Location
SKILL.md:194- Finding
Unpinned Global Installation of a Third-Party npm Package
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 194-198
Vulnerability Type: Unpinned third-party dependency and unsafe global installation
Risk Level: Mediumbash ## Installation npm install -g agent-browser agent-browser install # Download Chromium agent-browser install --with-deps # Linux: + system depsTechnical Analysis
The installation instructions globally install the latest available version of the third-party
agent-browsernpm package without pinning a reviewed version or verifying an integrity digest. Consequently, the installed code may differ from the code that existed when this skill was audited.npm package installation can execute package lifecycle scripts with the privileges of the invoking user. The subsequent
agent-browser installcommands also execute the newly installed package and download additional browser components. The--with-depsoption may install system dependencies and could require elevated privileges, further increasing the consequences of a compromised package release, transitive dependency, npm account, or downloaded artifact.The project does not itself contain an embedded malicious payload, obfuscated code, or demonstrated exfiltration mechanism. This finding concerns the avoidable supply-chain exposure introduced by its installation guidance.
Attack Path
- An attacker compromises the npm package, its publisher account, a transitive dependency, or an associated downloadable artifact.
- The attacker publishes a malicious release that becomes the version selected by the unpinned
npm install -g agent-browsercommand. - A user follows the installation instructions and globally installs the compromised release.
- Malicious logic executes through npm lifecycle hooks, invocation of the installed CLI, or the browser-component installation process.
- If the installation is performed with elevated privileges, partic ...[truncated 740 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin
agent-browserto an exact, reviewed version rather than resolving the latest release. - Use a project-local dependency with a committed lockfile instead of a global installation.
- Verify package provenance, npm publisher identity, integrity hashes, and release signatures where available.
- Disable npm lifecycle scripts during installation when they are unnecessary, and separately review any scripts that must be enabled.
- Pin and verify downloaded Chromium artifacts or rely on a trusted package-management channel with integrity enforcement.
- Run installation and browser automation in a sandboxed container or disposable environment with least-privilege permissions.
- Avoid running npm or the CLI as root. If operating-system dependencies are required, install a documented and reviewed package list through the system package manager rather than granting broad elevation to a third-party CLI.
- Document the expected upstream repository and package publisher so users can detect package substitution or ownership changes.
- Pin
