MAL-2026-6473 Malicious code in colorpicker-ui (npm)
Malicious package
Published
MAL-2026-6473 is a malicious package: colorpicker-ui (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-6473/ (Markdown: https://insights.sbomify.com/MAL-2026-6473/index.md)
- Package
- colorpicker-ui
- Registry
- npm
What is MAL-2026-6473?
MAL-2026-6473 is a malicious package in colorpicker-ui, published on 25 Jun 2026.
Official description
Package presents itself as a minimal React color-picker but ships a postinstall hook (
"postinstall": "node setup.js") that performs targeted credential theft and code-injection staging on npm install. setup.js reads classic installer secrets — /var/run/secrets/kubernetes.io/serviceaccount/token (Kubernetes service-account token granting cluster API access), the AWS Instance Metadata Service at http://169.254.169.254/latest/meta-data/ (cloud instance credentials), /etc/passwd, /etc/resolv.conf, /etc/hosts, the full process.env, and runs id / uname -a plus a recursive listing of /app. The harvested data is wrapped as export default "..."; and written to multiple attacker-chosen paths including /app/sandbox-data/workspace/frontend/_rce.ts, ../frontend/_rce.ts, and /tmp/rce.json. The _rce.ts filename and the targeting of adjacent frontend workspace directories are designed to land the file inside AI coding-agent / sandbox workspaces that auto-import files from the workspace tree, converting the postinstall into arbitrary code execution in the next agent run while also exfiltrating the secrets to whatever process consumes the file. The advertised color-picker API in index.js (ColorPicker, hexToHsl, hslToHex) is functional but exists solely as cover; a color-picker library has no need to read kubernetes tokens, IMDS, or /etc/passwd at install. The log message 'generating default theme cache' printed by setup.js is deliberately misleading.What should I do about MAL-2026-6473?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.