# MAL-2026-6280: Malicious code in ip-rotat (PyPI)


- **Type:** Malicious package
- **Package:** `ip-rotat` (PyPI)
- **Published:** 23 Jun 2026

## What is MAL-2026-6280?

MAL-2026-6280 is a malicious package in ip-rotat, published on 23 Jun 2026. 

### Official description

On `pip install` or `pip download`, setup.py registers overridden `install` and `egg_info` cmdclass entries that execute `ps -elf` to capture the host's process listing and iterate the entire `os.environ` mapping into a URL-encoded body, then POST the combined payload via curl to `http://gjampdwmdjmppwedtkpbbdkq05f6iiz6r.oast.fun` over plaintext HTTP. Bulk env scraping at install time leaks any CI/CD secrets present in the environment (AWS keys, GitHub/npm/PyPI tokens, etc.) along with a system-wide process listing. The package ships no actual ip-rotation functionality — setup.py contains only the exfiltration payload, the package name `ip_rotat` is a one-character truncation of common `ip-rotator`-style libraries, and the README references the `this_is_fine_wuzzi` install-time-code-execution PoC. The combination of name confusion, zero advertised functionality, and an automatic install-time exfil hook is a supply-chain attack against any installer.

During installation, the package exfiltrates env variables

---

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

Campaign: 2026-06-ip-rotat

Reasons (based on the campaign):

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

 - exfiltration-env-variables

 - typosquatting

## What should I do about MAL-2026-6280?

Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.

## Fix prompt for AI coding agents

```text
MAL-2026-6280 is a malicious package: ip-rotat (PyPI). Every version was published to cause harm.

Task:
1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.
2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.
3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.
4. If the package is not used anywhere, say so and change nothing.

Reference: https://insights.sbomify.com/MAL-2026-6280/ (Markdown: https://insights.sbomify.com/MAL-2026-6280/index.md)
```

## Sources

- OSV: https://osv.dev/vulnerability/MAL-2026-6280

---
From sbomify Insights: https://insights.sbomify.com/MAL-2026-6280/
Summaries are generated and may contain mistakes; the official description above is the record.
