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

license-utils-kitPyPI

Malicious code in license-utils-kit (PyPI) Remove it immediately and rotate any exposed credentials.

MAL-2026-2084
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
pip uninstall license-utils-kit

What this malware does

Malicious clone of legitimate "license" package. When using the find_by_key function, the malicious code from strongly obfuscated files is loaded. It then at least collects data from cryptowallets and password managers and exfiltrate them to a hardcoded remote location.

Prior version 0.1b2, the malicious code was hosted externally and downloaded when triggered.

Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.

Campaign: 2026-03-license-utils-kit

Reasons (based on the campaign):

  • infostealer

  • obfuscation

  • crypto-related

  • action-hidden-in-lib-usage

  • exfiltration-credentials

  • clones-real-package

Malicious versions

9 flagged
0.1a00.1a10.1b10.1b20.1b30.1b40.1rc10.1rc20.1rc3

Indicators of compromise (SHA-256)

62f1d552063d20e655d715a6f7309c0af7776c3e23d3ae6d3f9c95148a751d93
eb0116c55754c947c819c966f213a99864511536a414619cf3154b89be59f9e8
e88284f81b2f177fd9c635d7620c4ca79aace81726b0c8450a4e9783479bc693
4676290f79051bbfdd0e995eb6d3705071f602decb130857322d66700dc3927d
55f50e7ea85ed70e908ffc32d0b2bd56b8e79350a4e26718053af77c6124900c
6821809cb241c12a1033fdbc4b055007c7563a9d083957a237507e2d5ba857c9

Detection & response playbook

Credential / info stealer
  1. Find it

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

  2. If you installed it — respond

    license-utils-kit is built to steal secrets, so assume every credential the build or runtime could read is compromised. Remove it from your project and lockfile, then rotate ALL exposed secrets — npm/registry tokens, cloud keys, CI/CD secrets, SSH keys, and any .env values — from a known-clean machine. Audit logs for unauthorized use of those credentials.

  3. Did it already run?

    If license-utils-kit 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 license-utils-kit 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. license-utils-kit on PyPI has been identified as a malicious package (versions 0.1a0, 0.1a1, 0.1b1, 0.1b2, 0.1b3, 0.1b4, 0.1rc1, 0.1rc2, and 1 more flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

2026-03-license-utils-kit

References

Credits

  • Kamil Mańkowski (kam193) · reporter

Detect & block this

O3 blocks license-utils-kit-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the credential exfiltration and severs the channel.

license-utils-kit (PyPI) malicious package — MAL-2026-2084 | O3 Security