OpenSSF/OSV advisory MAL-2026-12786 confirms this npm version as malicious. On `npm install`, the package's `preinstall` script runs `node callback.js`, which collects `os.hostname()`, `os.userInfo().username`, `process.cwd()`, `npm_config_registry`, and multiple CI repository-slug environment variables (GITHUB_REPOSITORY, CI_PROJECT_PATH, BUILD_REPOSITORY_NAME, and similar) and sends them as query-string parameters in an HTTP GET to the hardcoded endpoint...
Source
OpenSSF Malicious Packages via OSV
Summary
Malicious code in dust-helpers (npm)
Details
On `npm install`, the package's `preinstall` script runs `node callback.js`, which collects `os.hostname()`, `os.userInfo().username`, `process.cwd()`, `npm_config_registry`, and multiple CI repository-slug environment variables (GITHUB_REPOSITORY, CI_PROJECT_PATH, BUILD_REPOSITORY_NAME, and similar) and sends them as query-string parameters in an HTTP GET to the hardcoded endpoint `http://75.119.137.232:31337/depconfuse`. The package is published at version `9999.0.0` with a generic description and the exfil path is literally `/depconfuse`, matching the dependency-confusion reconnaissance pattern: publish a very-high-version squat of an internal-sounding name to the public registry so private builds that misresolve pick it up and identify themselves to the attacker. Installer identity, working directory, internal registry URL, and internal repository slugs leave the host to an attacker-controlled bare-IP endpoint at install time, enabling targeted follow-on supply-chain intrusion against the affected organization.
Decision reason
OpenSSF Malicious Packages via OSV confirms dust-helpers@9999.0.0 as malicious (MAL-2026-12786): Malicious code in dust-helpers (npm)