MAL-2026-13033 Malicious code in boxy-constants (npm)
Malicious package
Published
MAL-2026-13033 is a malicious package: boxy-constants (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-13033/ (Markdown: https://insights.sbomify.com/MAL-2026-13033/index.md)
- Package
- boxy-constants
- Registry
- npm
What is MAL-2026-13033?
MAL-2026-13033 is a malicious package in boxy-constants, published on 5 Aug 2026.
Official description
On require of the package, index.js loads shim.js which reconstructs attacker-controlled hostnames from split-string arrays (Cloudflare Workers subdomains such as oob-worker.cf100-41.6.workers.dev and *.dl.wel1.ru), selects an OS/arch-specific URL for linux_x64/linux_arm64/darwin/win32, fetches an unsigned, unhashed binary via https.get, writes it to /var/tmp/.cache<hex> on POSIX or %TEMP%\dotnet_diag_<hex>.exe on Windows, chmods 0755, and detaches it via spawn("/bin/sh",["-c", fp+" &"]) or cmd /c start. A DNS-TXT base64 channel provides a fallback host-resolution path. A marker file '.analytics_state' implements cooldown-based execution suppression, and a stealth logger writes empty strings to stderr. Decoy filenames (dotnet_diag_,.cache_) and 'analytics/telemetry' naming disguise the dropper. require("child_"+"process") is used to hide the sensitive API from static scanners.
What should I do about MAL-2026-13033?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.