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

reqiestPyPI

Malicious code in reqiest (PyPI) Remove it immediately and rotate any exposed credentials.

MAL-2025-969
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
pip uninstall reqiest

What this malware does

Importing the module downloads and starts an infostealer attempting to exfiltrate data and establishing persistence through autorun directory.

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

Campaign: 2024-12-reqesst

Reasons (based on the campaign):

  • infostealer

  • peristence-autorun

  • typosquatting

  • exfiltration-generic

  • Downloads and executes a remote executable.

  • clones-real-package

  • dependency-confusion

  • exfiltration-browser-data

  • exfiltration-crypto

Malicious versions

2 flagged
2.32.22.32.3

Indicators of compromise (SHA-256)

fb7e67ffcb0752f64c069c30ae3c56c976ca00cd1537c82c3c0e481d246138b0
198b2afa2e11355a32d3633f59be1fdae6f45cef2b6bb6c7623fc5711d03ab6f
ae04fab0eca7fc7fee7494d9651df8a18dbe919cd8c0fa56522711b9f845aa25
0ab04506008fe98ae76409508391150d7c4510c6eb4c811242a24dad1a7ec05a
509af45d62461201a8ec2bbc9979523b7c3245d7f4905988bf86d71fd4301536
e5a5b034cc102af3bf2185a5d4d1fc0ae9ea1a964f84e89a67e4519c0cfd7315

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 reqiest (2 malicious versions). O3 Security's supply-chain scanner checks every dependency against known-malicious package intelligence at install time and in CI, flagging reqiest across your stack and pipelines.

  2. If you installed it — respond

    reqiest 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 reqiest 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 reqiest 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. reqiest on PyPI has been identified as a malicious package (versions 2.32.2, 2.32.3 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

RLMA-2025-005102024-12-reqesstRLUA-2026-00698

References

Credits

  • Kamil Mańkowski (kam193)
  • ReversingLabs · finder

Detect & block this

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

reqiest (PyPI) malicious package — MAL-2025-969 | O3 Security