Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
Malicious package

chai-as-serializednpm

Advisory published Updated

chai-as-serialized is a confirmed malicious npm package (MAL-2026-10044) that opens a backdoor for remote access (malicious version 7.0.8). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in chai-as-serialized (npm)

MAL-2026-10044
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall chai-as-serialized

What this malware does

The package's main entry (index.js) spawns a detached node child process running lib/initializeCaller.js as a side effect of invoking the exported middleware factory. lib/initializeCaller.js constructs a fake process.env object whose fields hold base64 blobs; DEV_API_KEY decodes to https://tomato-brunhilda-40.tiiny.site/index.json and DEV_SECRET_KEY/DEV_SECRET_VALUE decode to an x-secret-key request header. The script fetches the JSON body from that anonymous host and executes it via new Function.constructor("require", response)(require), granting the remote host arbitrary code execution with require access in the installer/consumer's Node process. The package name mimics chai-as-promised and the README is copied from pino (pino badges, pino narrative, keywords fast,logger,stream,json), while the shipped code has no relation to either — the impersonation is a lure to attract installs to a remote-code-execution dropper. Base64-encoding of the C2 URL and header, disguised as environment-variable configuration, confirms hostile intent.

Malicious versions

1 flagged
7.0.8

Indicators of compromise (SHA-256)

30e48e8980927471640c6573406d988d1a4361759f14a952da36c5daa1c9fd3c
319034be45ea981b6c826e1d94195a614c2d7475f7dd6370d3ea59ba5bc47279

Detection & response playbook

Backdoor / remote access
  1. Find it

    Search your lockfiles and build artifacts for chai-as-serialized (version 7.0.8).

  2. If you installed it — respond

    chai-as-serialized 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.

  3. Did it already run?

    If chai-as-serialized 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

No. chai-as-serialized on npm has been identified as a malicious package (version 7.0.8 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

IN-MAL-2026-009129RLMA-2026-06126

References

Credits

  • Amazon Inspector · finder
  • ReversingLabs · finder

Detect & block this

O3 blocks chai-as-serialized-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the C2 callback and severs the channel.

Explore

chai-as-serialized (npm) malicious package — MAL-2026-10044 | O3 Security