MAL-2026-17508 Malicious code in hardhat-plus (npm)
Malicious package
Published
MAL-2026-17508 is a malicious package: hardhat-plus (npm). Every version was published to cause harm.
Task:
1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.
2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.
3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.
4. If the package is not used anywhere, say so and change nothing.
Reference: https://insights.sbomify.com/MAL-2026-17508/ (Markdown: https://insights.sbomify.com/MAL-2026-17508/index.md)
- Package
- hardhat-plus
- Registry
- npm
What is MAL-2026-17508?
MAL-2026-17508 is a malicious package in hardhat-plus, published on 4 Oct 2026.
Official description
[email protected] is published under a name resembling the Ethereum development tool 'hardhat' but ships README, type definitions, and docs copied verbatim from the unrelated pino logger project (README.md references npmjs.com/package/pino; index.d.ts references github.com/pinojs/pino.git; package.json description is unrelated boilerplate). The package's main entry index.js requires./lib/config, which is a single ~4.5MB heavily obfuscated file using obfuscator.io transforms: hex-named identifiers, a self-mutating shuffled string-array (while(!![]){…f'push'}), control-flow flattening, dispatched decode helpers, and pervasive \xNN escape literals. This opaque code runs unconditionally the moment the package is imported. There is no legitimate source, minification story, or documented purpose that accounts for a multi-megabyte obfuscated blob being loaded as a 'config' module in a package that presents itself as either a Hardhat plugin or a pino logger. The combination of name-based impersonation, mismatched cover-story documentation, and an obfuscated payload auto-executed on import is the standard delivery shape for supply-chain malware.
What should I do about MAL-2026-17508?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.