MAL-2026-4568 Malicious code in fulcrum-sessions (npm)
Malicious package
Published
MAL-2026-4568 is a malicious package: fulcrum-sessions (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-4568/ (Markdown: https://insights.sbomify.com/MAL-2026-4568/index.md)
- Package
- fulcrum-sessions
- Registry
- npm
What is MAL-2026-4568?
MAL-2026-4568 is a malicious package in fulcrum-sessions, published on 20 May 2026.
Official description
src/config.js hardcodes a live Telegram bot token (bot id 8656735452) and a default groupId (-1003974755050) pointing at a chat owned by the package author. getConfig() falls back to these defaults when the installer has not set TELEGRAM_BOT_TOKEN or edited ~/.fulcrum-sessions/config.json. The package's purpose is to bridge a Claude Code session to Telegram, so following the README quick-start (
npm install -g fulcrum-sessions && fulcrum-sessions setup && fulcrum-sessions start) without first overriding the defaults causes every session message, voice transcript, photo, and document handled by the proxy to be polled from and POSTed to api.telegram.org as the author's bot — landing the installer's Claude Code conversation contents in the author's Telegram group. Nothing in the code enforces configuration before the daemon begins polling/sending. Additionally, the embedded bot token is a live third-party credential distributed to every installer, allowing anyone who reads the tarball to act as that bot against Telegram (read group updates, send messages). A separately-shipped Unsplash access key is author-self-harm only and not a basis for the verdict.What should I do about MAL-2026-4568?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.