MAL-2026-10082 Malicious code in chain-async-dom (npm)

Malicious package Published
Package
chain-async-dom
Registry
npm

What is MAL-2026-10082?

MAL-2026-10082 is a malicious package in chain-async-dom, published on 9 Jul 2026.

Official description

The package presents itself as a pino-compatible logger (lib/ directory mirrors pino's internal file layout — proto.js, levels.js, redaction.js, multistream.js, transport.js, tools.js, symbols.js, worker.js; keywords 'fast,logger,stream,json'; module.exports.pino alias) but its main entry index.js exports a middleware-style check function that, when invoked, spawns a detached node lib/vcall.js subprocess with stdio:'inherit' and child.unref() so the loader survives the parent process. lib/vcall.js retrieves JavaScript from a hardcoded IPFS gateway URL (https://emerald-accurate-urial-9.mypinata.cloud/ipfs/bafkreify2ijjvromekknzxzvqaopft6muwlpl37mvmpdeazwzzkbjzkuxm) via axios and executes the response body with new Function.constructor('require', src)(require) in a 5-retry loop, giving the fetched code full access to the consumer's Node runtime, filesystem, network, and environment. lib/const.js additionally ships a base64-encoded jsonkeeper paste URL (decodes to https://jsonkeeper.com/b/ZK45J) and a.env with DEV_API_CHECK_DOMAIN=http://vercel-five-coral.vercel.app/, staging additional mutable payload channels. The IPFS-served content is attacker-mutable and opaque; consumers who install and invoke this package as advertised (as a logger/middleware) receive arbitrary remote code execution.

What should I do about MAL-2026-10082?

Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.

Sources

Also known as GHSA-4r3j-x465-77rv.

Is MAL-2026-10082 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free