# MAL-2026-6752: Malicious code in confighub (PyPI)


- **Type:** Malicious package
- **Package:** `confighub` (PyPI)
- **Published:** 3 Jul 2026

## What is MAL-2026-6752?

MAL-2026-6752 is a malicious package in confighub, published on 3 Jul 2026. 

### Official description

confighub 7.0.1 declares install_requires=['procwire'] and imports procwire at package load in __init__.py under a version gate that silently swallows ImportError (try: import procwire as _pw except ImportError: pass). procwire is not referenced anywhere in confighub's own code (loader.py, manager.py) and is not mentioned in the README or API documentation. confighub's own code is benign, but installing confighub forces resolution and import of an undocumented sibling package whose behavior determines the actual installer-side risk. If procwire is attacker-controlled or malicious, confighub acts as the delivery vector; if procwire is a benign helper, this is only a documentation/hygiene issue. Human review of procwire itself is required to determine whether this is a dependency-based dropper or an undisclosed but benign split.

This package depends on malicious 'procwire', which starts malicious actions during installation.

---

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

Campaign: 2026-07-procwire

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.

 - obfuscation

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

 - malware

 - steganography

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

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-6752 is a malicious package: confighub (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-6752/ (Markdown: https://insights.sbomify.com/MAL-2026-6752/index.md)
```

## Sources

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

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