MAL-2026-14167 Malicious code in chalk-lib (npm)
Malicious package
Published
MAL-2026-14167 is a malicious package: chalk-lib (npm). Every version was published to cause harm.
Task:
1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.
2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.
3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.
4. If the package is not used anywhere, say so and change nothing.
Reference: https://insights.sbomify.com/MAL-2026-14167/ (Markdown: https://insights.sbomify.com/MAL-2026-14167/index.md)
- Package
- chalk-lib
- Registry
- npm
What is MAL-2026-14167?
MAL-2026-14167 is a malicious package in chalk-lib, published on 18 Aug 2026.
Official description
chalk-lib is a typosquat of the popular chalk package with an empty library body (index.js exports {}) whose entire effect is the postinstall lifecycle script. On npm install, scripts/postinstall.js XOR-decodes (key 'stf2026') a hardcoded URL pointing at github.com/bebraz1/qPzM50V1AKG0rVlH/releases/download/null/main.exe, downloads the executable to %TEMP%/main.exe on Windows, and spawns it detached with stdio:'ignore' and windowsHide:true. When the environment is WSL or Linux with the Windows host reachable (WSL_DISTRO_NAME / /proc/version / /proc/sys/kernel/osrelease containing 'microsoft'), a second code path XOR-decodes a PowerShell bridge command and script and exec()s it to fetch and run the same binary on the Windows host, extending the attack across the WSL boundary. In parallel, postinstall POSTs a JSON body containing the installer's platform label to a hardcoded bare-IP endpoint at 193.70.34.101:20099/vote over plain HTTP; the IP is assembled by joining the octet array ['193','70','34','101'] to evade static string matching. URLs, the PowerShell command, and the bridge script are all stored as integer arrays and reconstructed via an XOR unpackSegment() routine.
What should I do about MAL-2026-14167?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.