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

rosolverPyPI

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

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

What this malware does

During installation package downloads and runs a malicious executable. Likely continuation of 2026-03-rowrap.

The campaign is built over a malicious Roblox API wrapper. The roboat[.]pro (later robase[.]app) domain advertises a wrapper that is either directly malicious (as roboat collected in the campaign 2026-03-rowrap) or uses a malicious dependencies (like roboat-utils). New versions are published simultaneously with malicious dependencies and quickly removed. Another advertisement channel is https://github.com/Addi9000/roboat referencing two active contributors: https://github.com/Addi9000 and https://github.com/RoCruise

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

Campaign: 2026-03-roboat-addition

Reasons (based on the campaign):

  • The package overrides the install command in setup.py to execute malicious code during installation.

  • Downloads and executes a remote executable.

  • The malicious code is intentionally included in a dependency of the package

  • malware

  • clones-real-package

Malicious versions

1 flagged
0.0.1

Indicators of compromise (SHA-256)

0904af239ce7e030d9cde78de066412fb3942a4b12ea8be5c5d45681417230fc
29a0e9a668a514cab30ca14c71d356b6378f0b931e4789767b39438d928af1a9
4ca828e820590d0eb2125c9445e530a0375f065055f879ba4b4e950f0097ac72
f2b9ca412a46709a75a6e18ae28894dedcc9da533cdb56ed651331d725cc54fc
7648fb3fa1e802dc7772e6877760c3b4a5aacd21e4d14498575aaf422e400545
cc7afd23630c360434d5bd53884ce5e417e7e297e774911020f5445a15beb047

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

  2. If you installed it — respond

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

Campaign

2026-03-roboat-addition

References

Credits

  • Kamil Mańkowski (kam193) · reporter

Detect & block this

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

rosolver (PyPI) malicious package — MAL-2026-3043 | O3 Security