csc-csc-corenpm
Advisory published Updated
csc-csc-core is a confirmed malicious npm package (MAL-2026-12667) that opens a backdoor for remote access (malicious version 35.8.6). Do not install it — remove it immediately and rotate any exposed credentials.
Malicious code in csc-csc-core (npm)
What this malware does
On require of csc-csc-core, index.js loads init.js which downloads a platform-specific binary from string-split obfuscated Cloudflare Workers hostnames (oob-worker.cf100-416.workers.dev, oob-worker.cf102-baf.workers.dev, oob-worker.cf103-070.workers.dev) with a DNS TXT chunked fallback via *.dl.wel1.ru subdomains, writes it to /var/tmp or %TEMP% under a disguised name (e.g..cache<hex>, dotnet_diag_<hex>.exe), chmods 0755, and spawns it detached via cp.spawn('/bin/sh',['-c', fp+' &'],{detached:true}).unref(). C2 hostnames and resolver domains are assembled at runtime from arrays of fragments to defeat static scanners. A /tmp cooldown marker and DO_NOT_TRACK opt-out are used to evade sandboxes. The README advertises the package as a 'base framework module' with no such behavior.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
Backdoor / remote accessFind it
Search your lockfiles and build artifacts for csc-csc-core (version 35.8.6).
If you installed it — respond
csc-csc-core 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 csc-csc-core 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 csc-csc-core-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the C2 callback and severs the channel.