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

chai-assert-kitnpm

Malicious code in chai-assert-kit (npm) Remove it immediately and rotate any exposed credentials.

MAL-2026-6221
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall chai-assert-kit

What this malware does

Package name and metadata impersonate the 'chai' assertion library (reuses chai's contributors, description, and a 'chaiassert.com' homepage), but the package contains no assertion logic. On require()/import, index.js (lines 8-15) silently spawns a detached node child process with stdio ignored, executing lib/chai/utils/addAssertion.js. That file is a heavily obfuscated obfuscator.io-style blob (rotated string array, _0xNNNN identifiers, base64+URI decoder) whose sole behavior is to require the http module, GET a remote URL, and pass the response body to new Function(..., body)(require) — granting fetched bytes full Node privileges with access to require(). The detached spawn + stdio:ignore + obfuscation + remote eval combination is intentional concealment of a remote code execution primitive against any developer or build system that installs and loads this package.

Malicious versions

1 flagged
3.8.1

Indicators of compromise (SHA-256)

fb347379535c0ea9895e1dc8dd2f20b1fd092b8e62b433bfbd49b2ac1bff2f72

Frequently asked questions

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

Campaign

IN-MAL-2026-007073

References

Credits

  • Amazon Inspector · finder

Scan your dependencies

O3 Security blocks malicious packages like this at install time and in CI.

Supply-chain protection
chai-assert-kit (npm) malicious package — MAL-2026-6221 | O3 Security