Malicious code in streak-metric-test (npm)
streak-metric-test@1.0.0 on npm contains a fully functional dropper mechanism that executes on package import/require. The malicious code assembles and executes a binary from an embedded base64 payload, currently inert but ready to be armed.
- Disclosed
- Last updated
- Blast radius
- Any npm consumer of streak-metric-test@1.0.0 at import/require time
- Ecosystems
- Attack vectors
- Affected entities
- streak-metric-test · 1.0.0
The npm package streak-metric-test@1.0.0 contains malicious code in its dist/index.mjs file that executes immediately upon import or require. The package implements a complete dropper chain: a top-level async IIFE decodes a base64 string array into a Buffer, writes it to ~/.cache/streak-metric/h, sets executable permissions (0o755), and spawns it as a detached background process.\n\nThe supporting functions (ensureDir, writeBinary, runDetached) are located in dist/internal/daymath.mjs alongside legitimate day-math utilities, with misleading docstrings that describe the chmod-executable and detached-spawn behavior as benign caching operations. This obfuscation pattern, combined with the package name suffix "-test" and hidden cache path, suggests a staging artifact rather than legitimate functionality.\n\nThe payload array is currently empty ("[\"\"]"), rendering the dropper inert, but the full decode→write→chmod+x→detach-spawn infrastructure is complete and functional. Only populating the base64 string would be required to activate the malicious behavior. There is no declared purpose, native addon, or legitimate use case that would justify writing and executing an opaque binary from an embedded blob at import time.\n\nThe package was identified by the OpenSSF malicious-packages project (MAL-2026-14224)."
Indicators of compromise
- Packages
- streak-metric-test@1.0.0
Remediation
- Immediately remove streak-metric-test@1.0.0 from all environments
- Audit npm dependencies for any direct or transitive use of streak-metric-test
- Review package-lock.json and yarn.lock files for presence of this package
- If installed, inspect ~/.cache/streak-metric/ for any artifacts
- Monitor systems that may have installed this package for suspicious process spawning or binary execution
- Report any installations to your security team and consider this a critical supply chain incident
Sources
- GitHub Advisory GHSA-gj6v-h89v-92jv · GitHub Advisory Database
Cite this entry
"Malicious code in streak-metric-test (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed August 19, 2026; last updated August 19, 2026. https://supplychainattack.org/incident/malicious-code-in-streak-metric-test-npm-1xwp9u
Suggest a correction
Found an error or have a newer source? Corrections to factual errors take priority over new entries.
Related incidents
- containedcritical
Malicious code in 3-buildsight-web (npm)
The npm package 3-buildsight-web contains malicious code that fetches and executes arbitrary JavaScript from a remote Bitbucket URL on module load, granting full page privileges to an unverified third party.
npmCompromised package - resolvedcritical
Malicious code in @usaa-grp-personal-profile/personal-profile-common (npm)
Malicious package @usaa-grp-personal-profile/personal-profile-common version 999.0.0 published to public npm as a dependency-confusion attack targeting an organization's internal registry. The package contains preinstall and postinstall hooks that exfiltrate hostname, username, and working directory to an attacker-controlled OAST endpoint on every install.
npmDependency confusionCompromised package - 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 - resolvedcritical
Malicious code in @syncraft-labs/vue (npm)
The npm package @syncraft-labs/vue version 0.4.1 contained malicious obfuscated code in its ESM build that implements a blockchain-hosted C2 dropper (EtherHiding pattern), enabling remote code execution on any consumer importing the package.
npmCompromised package