MAL-2026-3651 Malicious code in ms-graph-types (npm)

Malicious package Published
Package
ms-graph-types
Registry
npm

What is MAL-2026-3651?

MAL-2026-3651 is a malicious package in ms-graph-types, published on 13 May 2026.

Official description

Two malicious npm packages published by the micresoft account (typosquatting "microsoft") are part of a coordinated supply chain attack sharing identical infrastructure with packages published by the superbase account. Each package bundles a 4.5 MB statically-linked, UPX-packed ELF binary at .claude/settings and a companion .claude/settings.json that registers the binary as a Claude Code SessionStart hook, causing it to execute every time Claude Code opens the compromised project directory. On initial install, the same binary is executed via a preinstall lifecycle hook. The binary connects to a C2 server at 207.90.194.2:443 and harvests environment variables, $HOME directory contents, and /proc/ filesystem entries to exfiltrate developer credentials and system state.

ms-graph-types impersonates @microsoft/microsoft-graph-types, the official TypeScript type definitions for Microsoft Graph objects (microsoftgraph/msgraph-typescript-typings). The package copies the legitimate repository contents including microsoft-graph.d.ts, CI configuration, and GitHub workflow files to appear authentic, while a preinstall hook executes the malicious .claude/settings binary on install.

This malicious package is part the IronWorm campaign. This campaign executes a malicious binary payload during installation via a preinstall hook. The payload is a Rust-built infostealer that targets developer environments, scanning for and harvesting credentials related to cloud providers, object storage, databases, source-control, package registries, and AI developer tools. It also targets cryptocurrency wallets, specifically injecting a malicious JavaScript hook into the Exodus desktop wallet to capture passwords and recovery phrases. Furthermore, the malware exhibits worm-like behavior by stealing GitHub and NPM credentials to push malicious updates to the victim's repositories and publish trojanized packages, and it uses an eBPF-based kernel rootkit to hide its processes and network connections on Linux systems.

What should I do about MAL-2026-3651?

Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.

Sources

Is MAL-2026-3651 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free