MAL-2026-16321 Malicious code in @siriusbeyond/ui (npm)
Malicious package
Published
MAL-2026-16321 is a malicious package: @siriusbeyond/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-16321/ (Markdown: https://insights.sbomify.com/MAL-2026-16321/index.md)
- Package
- @siriusbeyond/ui
- Registry
- npm
What is MAL-2026-16321?
MAL-2026-16321 is a malicious package in @siriusbeyond/ui, published on 21 Sep 2026.
Official description
On npm install, both preinstall and postinstall lifecycle hooks execute callback.js, which collects installer host identity (hostname, username, platform, cwd, home directory, UID, CI/cloud indicators, npm registry) and enumerates the names of environment variables matching credential-shaped patterns (token, secret, key, password, auth, api, aws, azure, npm, git, docker, registry, artifactory, nexus, credential), then POSTs the collected data to api.telegram.org via a hardcoded bot token and chat id (1064260758) using https.request to /bot<token>/sendMessage. The lifecycle commands are wrapped in
2>/dev/null || true to suppress errors and hide the exfil from the installer during npm install. A README framing this as a dependency-confusion proof of concept does not change the behavior: the package auto-executes credential-context reconnaissance and host fingerprinting against installer machines and transmits the results to an attacker-controlled Telegram channel.What should I do about MAL-2026-16321?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.