MAL-2026-6356 Malicious code in safe-json-38bd (npm)
Malicious package
Published
MAL-2026-6356 is a malicious package: safe-json-38bd (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-6356/ (Markdown: https://insights.sbomify.com/MAL-2026-6356/index.md)
- Package
- safe-json-38bd
- Registry
- npm
What is MAL-2026-6356?
MAL-2026-6356 is a malicious package in safe-json-38bd, published on 23 Jun 2026.
Official description
package.json declares a postinstall hook ("postinstall": "node run.js") that executes run.js automatically on
npm install. run.js imports os, fs, http, https, and child_process and gathers host identity and environment data: os.hostname(), os.userInfo(), os.platform(), process.env.USER, process.cwd(), plus filesystem reads via fs.readFileSync / fs.existsSync. The collected data is base64-encoded (Buffer.from(…).toString('base64')) and POSTed out via HTTP/HTTPS at multiple call sites in the same script. The package name has no documented purpose that would justify install-time host reconnaissance, base64 wrapping, or outbound POSTs. Combined fingerprints (lifecycle-hook auto-execute + host-identity collection + base64 encoding + outbound HTTP POST) match a credential / system-intel exfiltration dropper.What should I do about MAL-2026-6356?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.