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

titan-osintPyPI

Malicious code in titan-osint (PyPI) Remove it immediately and rotate any exposed credentials.

MAL-2024-11728
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
pip uninstall titan-osint

What this malware does

osint packages promise to be OSINT tool, however, when providing the username to search for, the package attempts to exfiltrate Discord tokens from the user.

The original package suggests being a library for Discord exfiltration, what is suspicious on its own, but in addition, the entry point located in main.py exfiltrate local Discord tokens to a hardcoded webhook.

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

Campaign: 2024-09-discord-token-lib

Reasons (based on the campaign):

  • exfiltration-generic

  • action-hidden-in-lib-usage

Malicious versions

2 flagged
0.10.2

Indicators of compromise (SHA-256)

fa971829ad3bf6f2730f343105e2b1aa7706d68f3df664a8d73c2a3f11882e7a
4246b3e19ea6a2e1acc7e8f75e363ff5475b8b34e43561b004f81a565a7ec6e7
e8dccaf6be8892f2b8871e634607d1dafc9fbb2b5855156959c454b07ab184aa
10bc801a9a58b442386e114fea3df4d20cf65b4d5fd50ba295733a48c541f941
0fe23cf37732af08f700e571024146c292c6eab3f7a85a831466e9787a1270a0

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

  2. If you installed it — respond

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

Campaign

RLMA-2024-111872024-09-discord-token-libRLUA-2026-00825

References

Credits

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

Detect & block this

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

titan-osint (PyPI) malicious package — MAL-2024-11728 | O3 Security