MAL-2026-12192
Dashboard / Malicious Package / MAL-2026-12192
MAL-2026-12192
Summary: Malicious code in scrollbar-hide-plugin (npm)
Details: Source: amazon-inspector (4f19e1731b591552a096b108703702b9663c1bbb8cf9c2ff6fc048f8582e8607) The package's main entry (dist/index.js) appends an obfuscated payload — wrapped in eval(atob(...)) with require targets and URLs hidden in \uXXXX escapes — to an otherwise legitimate Tailwind scrollbar-hide plugin. When the package is required or imported, the payload queries Ethereum RPCs for transactions from a hardcoded address (0xa322e5f3d311d3080e6f0121063e9adc2490ef1a), decodes attacker IPv4 addresses from the transaction `to` field bytes, and fetches XOR-encoded JavaScript from those IPs on port 443 (paths `/0x/cls` and `/0x/ls`). The fetched code is then executed both via `eval` in-process and via `spawn('node', ['-e',...], {detached:true}).unref()` as a detached child process. The C2 destinations are resolved dynamically from on-chain data, so the operator can rotate infrastructure without republishing the package. The name resembles the legitimate tailwind-scrollbar-hide package (reslear/tailwind-scrollbar-hide), consistent with a name-squat trojan.
Affected packages
Package
Name: scrollbar-hide-plugin
Purl: pkg:npm/scrollbar-hide-plugin
Affected ranges
Type: N/A
Events:
