MAL-2026-10176 Malicious code in uncaxss (npm)
Malicious package
Published
MAL-2026-10176 is a malicious package: uncaxss (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-10176/ (Markdown: https://insights.sbomify.com/MAL-2026-10176/index.md)
- Package
- uncaxss
- Registry
- npm
What is MAL-2026-10176?
MAL-2026-10176 is a malicious package in uncaxss, published on 10 Jul 2026.
Official description
Package ships an obfuscated dist/index.js that is invoked from the postinstall lifecycle hook (
node dist/index.js). At install time, the script performs an HTTPS GET to https://onch.cc/test1.txt (and https://onch.cc/test2.txt), base64-decodes the response body, and executes it via new Function('require', decoded)(), granting the fetched code full Node.js capabilities (including require) on the installer's machine. The dropper is gated by process.env.P == 1, allowing the attacker to keep the payload dormant on incidental installers and detonate selectively (e.g., on CI runners where P is set). The fetching logic is obfuscated using javascript-obfuscator (hex identifiers, rotating string array, decoder wrapper), and the package's own build script ("obfuscate": "javascript-obfuscator./dist/index.js...") confirms obfuscation is applied deliberately before publish. The remote host onch.cc is unrelated to any documented package purpose (the package has no README), and the fetched content is opaque, mutable, and unpinned. This is a classic install-time RCE dropper with attacker-controlled remote code execution on npm install.What should I do about MAL-2026-10176?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.