T08 · Insecure Dependencies
- Location
references/agent-browser-overview.md:15- Finding
Unpinned Third-Party Package Retrieval and Execution Through npx
- Content
View full analysis
Vulnerability Details
File Location:
references/agent-browser-overview.md, lines 15–17
Vulnerability Type: Unpinned third-party dependency execution
Risk Level: MediumVulnerable Code:
markdown - Linux dependencies (if needed): - `agent-browser install --with-deps` - or `npx playwright install-deps chromium`Technical Analysis
The documented fallback command invokes
playwrightthroughnpxwithout specifying an exact, audited version. If the package is not already available locally,npxmay resolve, download, and execute package code from the configured package registry.The project provides no lockfile, integrity hash, verified artifact source, or exact approved Playwright version for this operation. Consequently, the code executed by this instruction can change after the Skill has been reviewed. This creates supply-chain exposure to a compromised registry account, package replacement, malicious registry configuration, or an unexpectedly unsafe future release.
The command is particularly sensitive because
install-depsis intended to install browser-related operating-system dependencies. Depending on the host configuration and how the command is invoked, it may cause substantial system changes or request elevated privileges.Attack Path
- A user follows the Linux setup instructions in the Skill.
- The user runs
npx playwright install-deps chromium. npxfails to find an approved local package and resolvesplaywrightthrough the configured registry without an exact version constraint.- The registry supplies a compromised, substituted, or unexpectedly changed package version.
- Package lifecycle logic or the resolved CLI executes with the invoking user's privileges.
- Malicious package code can access data available to that user, modify the environment, or abuse any elevated privileges granted during dependency installation.
Successful exploitation depends on compromise or manipulation of the p ...[truncated 781 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the unversioned command with an exact, previously audited Playwright version.
- Manage Playwright through a project manifest and committed lockfile containing package integrity metadata.
- Install dependencies from the verified official registry and enforce the expected registry configuration.
- Invoke the lockfile-resolved local binary rather than allowing
npxto select an arbitrary current package version. - Use reproducible installation controls such as
npm ciand disable unnecessary package lifecycle scripts where operationally feasible. - Verify package provenance or signatures when supported, and review dependency changes before upgrading.
- Perform browser and operating-system dependency installation inside an isolated container or disposable environment without credentials.
- Do not run the package retrieval step with elevated privileges. If system packages require elevation, separate and review the exact operating-system package installation operation.
