Malicious code in chromeos-webdriver-cli (npm)
The npm package chromeos-webdriver-cli contained malicious code in its postinstall script that exfiltrated system metadata (hostname, platform, architecture, Node version) to a third-party server without user consent. The attack pattern is consistent with dependency-confusion or typosquatting reconnaissance.
- Disclosed
- Last updated
- Blast radius
- All npm users who installed chromeos-webdriver-cli during the malicious period.
- Ecosystems
- Attack vectors
- Affected entities
- chromeos-webdriver-clinpm package with malicious postinstall script
The npm package chromeos-webdriver-cli was found to contain malicious code in its postinstall script. When installed via npm install, the script automatically executed and issued an HTTPS POST request to https://kvpq6u62.instances.poc.jchunt.top/chromeos-webdriver-cli, a hardcoded non-first-party host.
The exfiltrated data included system and environment metadata: OS hostname, platform, architecture, Node version, package name, and timestamp. This information was sent without explicit user consent or configuration.
The subdomain pattern (random token under instances.poc.jchunt.top) is consistent with a dependency-confusion or typosquatting canary beacon used to identify and profile internal environments. The attack demonstrates reconnaissance capability targeting developers and build systems.
The incident was identified and credited to the OpenSSF malicious-packages project (MAL-2026-14232).
Indicators of compromise
- Packages
- chromeos-webdriver-cli
- Domains
- kvpq6u62.instances.poc.jchunt.top
Remediation
- Immediately uninstall chromeos-webdriver-cli from all systems and projects
- Audit npm install logs and package-lock.json files to identify when the malicious package was installed
- Assume any system that installed this package may have had its hostname and environment metadata exfiltrated; review access logs and network traffic for suspicious outbound connections to the identified domain
- Use npm audit to check for other malicious packages
- Consider implementing postinstall script restrictions or using npm ci with --ignore-scripts in CI/CD pipelines
- Monitor for any unauthorized access or lateral movement from affected systems
Sources
- GitHub Advisory GHSA-fpp2-m9c8-jrjh · GitHub Advisory Database
Cite this entry
"Malicious code in chromeos-webdriver-cli (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed August 19, 2026; last updated August 19, 2026. https://supplychainattack.org/incident/malicious-code-in-chromeos-webdriver-cli-npm-w633ug
Suggest a correction
Found an error or have a newer source? Corrections to factual errors take priority over new entries.
Related incidents
- resolvedcritical
Malicious code in create-coin (npm)
create-coin@20.1.1 on npm contained malicious postinstall code that collected sensitive environment variables, credentials, and host reconnaissance data. The package impersonated an esbuild platform build and exfiltrated data to a hardcoded endpoint.
npmCompromised packageTyposquatting - containedcritical
Malicious code in chai-as-testkit (npm)
The npm package chai-as-testkit is a typosquat/impersonation attack delivering obfuscated malicious code that executes on import. The package falsely claims to be a vulnerability management tool but ships pino library files under a different author, with a synthetic stub that loads a 4MB+ obfuscated bundle containing attacker-controlled code.
npmTyposquattingCompromised package - resolvedcritical
Malicious code in @next-fonts/font (npm)
@next-fonts/font is a typosquat package on npm that executes arbitrary attacker-controlled code via a blockchain-mediated C2 channel when its Inter() function is called. The malicious payload is base64-encoded and executed through Node.js spawn or eval, with no legitimate font functionality.
npmTyposquattingCompromised package - resolvedcritical
Malicious code in chai-as-soul (npm)
chai-as-soul@2.3.5 is a typosquat of the pino logging library containing malicious code that exfiltrates environment variables (including AWS/GCP/CI tokens) and executes arbitrary remote code on installation.
npmTyposquattingCompromised package