boxy-deps-calculatornpm
Advisory published Updated
boxy-deps-calculator is a confirmed malicious npm package (MAL-2026-13038) that opens a backdoor for remote access (malicious version 35.9.5). Do not install it — remove it immediately and rotate any exposed credentials.
Malicious code in boxy-deps-calculator (npm)
What this malware does
setup.js runs at install time: it performs an HTTPS reconnaissance request (https.get to a remote host with an identifier payload) and then spawns a platform-specific shell (spawn("/bin/sh") on POSIX, spawn("cmd") on Windows) via child_process. The file is invoked as an npm lifecycle script, giving the remote-directed shell execution on installer machines with no user interaction beyond npm install. The combination of an install-time outbound HTTP callout plus unconditional shell spawn is a dropper/backdoor shape rather than any documented build behavior, and the package name (a lookalike of common dependency-related utilities) has no legitimate purpose requiring shell execution during install.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
Backdoor / remote accessFind it
Search your lockfiles and build artifacts for boxy-deps-calculator (version 35.9.5).
If you installed it — respond
boxy-deps-calculator establishes remote access, so treat any host that installed it as fully compromised. Isolate the machine, remove the package, rotate all credentials it could reach, and rebuild from a trusted image rather than cleaning in place — a backdoor may have planted additional persistence.
Did it already run?
If boxy-deps-calculator was installed, its post-install payload may already have run. Removing the package does not undo that — check outbound connections and credential use from the install window onward.
Frequently asked questions
Campaign
References
Credits
- Amazon Inspector · finder
Detect & block this
O3 blocks boxy-deps-calculator-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the C2 callback and severs the channel.