NIST deprecates RSA-2048 from 2030. Find every one of them before attackers do.
Part of a larger attack: 2026-06-easyaillm published 18 malicious packages. See the full campaign →
Malicious package

easyllmaiPyPI

Advisory published Updated

easyllmai is a confirmed malicious PyPI package (MAL-2026-5766) that steals credentials and exfiltrates sensitive data (malicious versions 2.1, 2.21). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in easyllmai (PyPI)

MAL-2026-5766
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
pip uninstall easyllmai

What this malware does

During pip install, setup.py performs an unauthenticated HTTP fetch of https://pastebin.com/raw/yBcUM1QB, takes the first line of the response, and passes it directly to os.system(f'cmd /c "{cmd_pastebin}"'). The remote content is hosted on an anonymous, mutable, attacker-controlled paste with no pinning, no hash check, and no signature verification. Whoever controls the paste obtains arbitrary command execution on every installer's machine at install time. This is a canonical install-time dropper pattern: lifecycle-time outbound fetch from an unverified source piped straight into the OS shell.

During installation, the code attempts to download and start a malicious executable.

Likely related to 2025-08-raknet-testing-package.

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

Campaign: 2026-06-easyaillm

Reasons (based on the campaign):

  • Downloads and executes a remote executable.

  • obfuscation

  • malware

  • tool:mshta

Malicious versions

2 flagged
2.12.21

Indicators of compromise (SHA-256)

b7ac8db348471011dee14fad41b2d0a487f08463c10c678625fe8184e8088e0a
e20bbc5f03184dd5e7f4b4ea3a6b937c84194ce0ef0bf851d761b02a9614bc06
4589bbb71e0bb3589a162bf2102bba5e8bf7124d3988235647d1e3c1d01821d0
981f5ad88772daa291287d5e6901fc9575d51ee790bc337e79fae1352a0b3458
02726dfbbdccf0f508d67c5f01c3f7229914b2004b43d746893bff2ee55ce6a4
514a092cfe1fa955f76069856c32d21a30c0d917d0bf7cea2340a4d147e6a4e3

Detection & response playbook

Credential / info stealer
  1. Find it

    Search your lockfiles and build artifacts for easyllmai (2 malicious versions).

  2. If you installed it — respond

    easyllmai 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 easyllmai was installed, its post-install payload may already have run. Removing the package does not undo that — check outbound connections and credential use from the install window onward.

Frequently asked questions

No. easyllmai on PyPI has been identified as a malicious package (versions 2.1, 2.21 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

2026-06-easyaillmIN-MAL-2026-006663IN-MAL-2026-006662

References

Credits

  • Amazon Inspector · finder
  • Kamil Mańkowski (kam193) · reporter

Detect & block this

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

Explore

easyllmai (PyPI) malicious package — MAL-2026-5766 | O3 Security