MAL-2026-13699
Malicious code in chai-as-bench (npm)
Details
--- _-= Per source details. Do not edit below this line.=-_
## Source: amazon-inspector (487af469d8de2a3caa5e798df3a5d56e59b795c1ddc106abd1d38ed855b6fb17) The package presents itself as a chai plugin (name resembles chai-as-promised, manifest description references chai assertions), but ships no chai-related functionality. index.js unconditionally loads lib/config.js on require(), and lib/config.js is a ~4 MB obfuscator.io payload with a 23,890-entry rotating string array, hex-obfuscated identifiers, and control-flow flattening. The remaining lib/ files (proto.js, multistream.js, transport.js) plus LICENSE are copied verbatim from the unrelated pino logger project as camouflage, and index.js itself only exports a no-op Express-style middleware ((_req,_res,next)=>next()). README contains placeholder yourusername GitHub URLs and generic author metadata (james@abscond.org). Heavy obfuscation of a multi-megabyte payload that runs on every require(), inside a package whose advertised purpose does not require any such code and whose surrounding files are stolen from an unrelated project, is the standard loader/stealer shape for an npm supply-chain plant targeting developers who mistype chai-as-promised.
Are you affected?
Enter the version of the package you're using.
Affected packages
No fixed version published yet for chai-as-bench (npm). Pin to a known-safe version or switch to an alternative.