Malicious code in notify-dist (npm)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (1cf89f8fbe4c3f9ae9494077688977f46c8b3f875a552054508ac5eec7b62344) notify-dist advertises itself as a pino-compatible logger/middleware (exports `module.exports.pino`, keywords fast/logger/stream/json, lib/ mirrors pino internals such as proto.js, multistream.js, redaction.js, transport.js), but the exported middleware's only side effect is to launch a remote-code loader. When a consumer requires the package and invokes the exported middleware, index.js spawns `node lib/caller.js` as a detached child with `stdio: 'ignore'` and `child.unref()` so the loader survives after the parent exits. lib/caller.js issues an HTTP GET to https://jsonkeeper.com/b/BPB86 via axios, reads the `.cookie` field of the response, and executes it as JavaScript via `new Function.constructor('require', s)(require)`, giving the fetched code full Node privileges including `require`. The loader retries up to 5 times and silences console.log to hide activity. lib/const.js additionally holds base64-encoded fields that decode to a second endpoint (https://jsonkeeper.com/b/ZK45J) and header name `x-secret-key`, serving as a rotation/backup payload URL. jsonkeeper.com is a mutable third-party JSON paste host, so the executed code is fully attacker-controlled and can change at any time. The pino-shaped API surface is a lure: consumers importing this expecting logger behavior get arbitrary remote code execution on their machine.
AI Analysis
Technical Summary
Notify-dist version 1.3.7 is a malicious npm package that pretends to be a pino-compatible logger but instead executes remote code. Upon invocation, it spawns a detached child process that performs HTTP GET requests to attacker-controlled URLs hosted on jsonkeeper.com. The fetched JavaScript code is executed with full Node.js privileges using the Function constructor, allowing arbitrary code execution. The package uses multiple endpoints for payload rotation and suppresses console logs to evade detection. This results in a remote code execution vulnerability triggered simply by requiring and invoking the package's exported middleware.
Potential Impact
Any application or developer that installs and uses notify-dist version 1.3.7 is at risk of arbitrary remote code execution. The attacker-controlled payload can execute any code with the same privileges as the Node.js process, potentially leading to full system compromise, data theft, or further malware deployment. Because the payload is fetched from a mutable third-party JSON host, the malicious code can change dynamically, increasing the risk and difficulty of detection.
Mitigation Recommendations
There is no official patch or fix available for notify-dist version 1.3.7. Users should immediately remove this package from their projects and avoid installing it. Since the package is malicious by design, replacing it with a legitimate logging library such as the official pino package is recommended. Monitor dependencies carefully to prevent inclusion of similarly malicious packages. Patch status is not yet confirmed — check the vendor advisory or trusted security sources for updates.
Malicious code in notify-dist (npm)
Description
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (1cf89f8fbe4c3f9ae9494077688977f46c8b3f875a552054508ac5eec7b62344) notify-dist advertises itself as a pino-compatible logger/middleware (exports `module.exports.pino`, keywords fast/logger/stream/json, lib/ mirrors pino internals such as proto.js, multistream.js, redaction.js, transport.js), but the exported middleware's only side effect is to launch a remote-code loader. When a consumer requires the package and invokes the exported middleware, index.js spawns `node lib/caller.js` as a detached child with `stdio: 'ignore'` and `child.unref()` so the loader survives after the parent exits. lib/caller.js issues an HTTP GET to https://jsonkeeper.com/b/BPB86 via axios, reads the `.cookie` field of the response, and executes it as JavaScript via `new Function.constructor('require', s)(require)`, giving the fetched code full Node privileges including `require`. The loader retries up to 5 times and silences console.log to hide activity. lib/const.js additionally holds base64-encoded fields that decode to a second endpoint (https://jsonkeeper.com/b/ZK45J) and header name `x-secret-key`, serving as a rotation/backup payload URL. jsonkeeper.com is a mutable third-party JSON paste host, so the executed code is fully attacker-controlled and can change at any time. The pino-shaped API surface is a lure: consumers importing this expecting logger behavior get arbitrary remote code execution on their machine.
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
Notify-dist version 1.3.7 is a malicious npm package that pretends to be a pino-compatible logger but instead executes remote code. Upon invocation, it spawns a detached child process that performs HTTP GET requests to attacker-controlled URLs hosted on jsonkeeper.com. The fetched JavaScript code is executed with full Node.js privileges using the Function constructor, allowing arbitrary code execution. The package uses multiple endpoints for payload rotation and suppresses console logs to evade detection. This results in a remote code execution vulnerability triggered simply by requiring and invoking the package's exported middleware.
Potential Impact
Any application or developer that installs and uses notify-dist version 1.3.7 is at risk of arbitrary remote code execution. The attacker-controlled payload can execute any code with the same privileges as the Node.js process, potentially leading to full system compromise, data theft, or further malware deployment. Because the payload is fetched from a mutable third-party JSON host, the malicious code can change dynamically, increasing the risk and difficulty of detection.
Mitigation Recommendations
There is no official patch or fix available for notify-dist version 1.3.7. Users should immediately remove this package from their projects and avoid installing it. Since the package is malicious by design, replacing it with a legitimate logging library such as the official pino package is recommended. Monitor dependencies carefully to prevent inclusion of similarly malicious packages. Patch status is not yet confirmed — check the vendor advisory or trusted security sources for updates.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-10154
- Osv Schema Version
- 1.7.4
- Aliases
- []
- Ecosystems
- ["npm"]
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a520edb68715ace439158c9
Added to database: 07/11/2026, 09:37:31 UTC
Last enriched: 07/11/2026, 10:04:06 UTC
Last updated: 07/29/2026, 09:16:14 UTC
Views: 68
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.