checkout-typesnpm
checkout-types is a confirmed malicious npm package (MAL-2026-12599) that opens a backdoor for remote access (malicious version 35.6.8). Do not install it — remove it immediately and rotate any exposed credentials.
Malicious code in checkout-types (npm)
What this malware does
On require of checkout-types, index.js loads vendor.js which runs setup() at top level. The code reconstructs C2 hostnames from split string arrays (oob-worker.cf103-070.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf99-9b3.workers.dev) with a DNS TXT chunked-base64 fallback via sdk.dl.wel1.ru, ext.dl.wel1.ru, pkg.dl.wel1.ru, and net.dl.wel1.ru. A platform-specific binary is downloaded, written to a temp path disguised as dotnet_diag<rand>.exe on Windows or.cache_<rand> on Unix, chmod 0755, and spawned detached via cp.spawn("/bin/sh", ["-c", fp + " &"], {detached:true}) or cmd on Windows. Split-string obfuscation of destinations, DNS covert-channel fallback, cover-story file names, and detached spawn on module load result in arbitrary attacker-controlled code execution on the installer's host at require time.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
Backdoor / remote accessFind it
Scan your lockfiles (package-lock.json, pnpm-lock.yaml, yarn.lock, requirements.txt, poetry.lock, etc.) and build artifacts for checkout-types (version 35.6.8). O3 Security's supply-chain scanner checks every dependency against known-malicious package intelligence at install time and in CI, flagging checkout-types across your stack and pipelines.
If you installed it — respond
checkout-types 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 checkout-types was ever installed, its post-install/runtime payload may have already executed. O3's L7 egress monitoring and runtime eBPF sensors detect the credential exfiltration or command-and-control callback after install and block the malicious outbound channel, so you catch and contain the actual compromise — not just the presence of the package.
How O3 protects you
O3 blocks checkout-types before install through its supply-chain scanner, and if it has already run, detects and severs the exfiltration or C2 callback at runtime through L7 egress monitoring and eBPF.
Frequently asked questions
Campaign
References
Credits
- Amazon Inspector · finder
Detect & block this
O3 blocks checkout-types-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the C2 callback and severs the channel.