Malicious code in @redman89405/my-module (npm)
Exact source revision recorded 24 Oct 2026 13:17:17 UTC. It does not establish the source's current position. Latest evidence.
osv · MAL-2026-17336
Published--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (ee7d38498dcd2e2a3afc4ed3b3a5136cb88e11693ef59fc7676bf35cd89b932c) The package ships `code.png` alongside `index.js` and exports a function `imageToCode` that reads a length-prefixed byte stream from the first pixel row of the PNG and passes the decoded string to `Function(...)()`, an eval-equivalent sink. The executable content is hidden inside an image asset rather than present as readable source, so the code that will run cannot be seen by inspecting the npm tarball. The API is exported alongside trivial `hello`/`add` helpers with no documented purpose for image-based code loading, and the author retains the ability to change the payload in future publishes without any visible source diff. The code path relies on browser-only globals (Image, canvas) so it does not fire on Node `require`; harm requires a consumer application to call `imageToCode` in a browser context, at which point arbitrary author-supplied JavaScript executes in that page. ## Source: ghsa-malware (58f8e0d965e65d298a38295487ebe0c363ea7da343649827903915cc655f3730) Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.
- Source published
- 30 Sep 2026 05:43:21 UTC
- Source modified
- 8 Oct 2026 06:45:19 UTC
- Observed here
- 24 Oct 2026 13:17:17 UTC
- Source terms
- OSV · upstream source license applies
Original source record · Cite this exact observation · Complete original publisher JSON
This view projects the publisher's source fields for reading; the original JSON retains additional fields and CVE enrichment containers. Attribution: osv · OSV · upstream source license applies. Source text is retained; field grouping and change labels are provided by ChangeIntel.