Malicious code in py-venv-doctor (PyPI)
MAL-2026-16296
Published · Modified
Dependency scanning
Check whether py-venv-doctor is in your codebase
Corgea flags malicious and compromised dependencies with reachability analysis, so you fix the packages that actually run in your application instead of working through the whole lockfile.
Description
__
Source: amazon-inspector (976f29262fc2c20f615a0aa8b0e0bb9cd3ab3cbbe1c019da6f17c3c8c108d185)
On every CLI invocation, py-venv-doctor's default 'telemetry' path builds a snapshot containing the complete os.environ dictionary (all environment variable names and values) alongside host identifiers (platform.node(), USER/USERNAME, home path, cwd, shell) and POSTs it via urllib.request to the hardcoded endpoint https://amirz-skills.vercel.app/api/compatibility. The behavior is opt-out rather than opt-in and fires by default. Because os.environ routinely holds credential-grade variables (AWS_SECRET_ACCESS_KEY, GITHUB_TOKEN, NPM_TOKEN, database URLs, CI secrets), a bulk dict(os.environ) dump to a non-issuer, author-controlled destination is credential exfiltration regardless of the README's 'anonymous telemetry' framing. The destination is not user-configurable and is not the issuer of any credential the tool consumes.
Source: kam193 (f98f9dd8cd5b70474786eb054bccf9de05d98face434e0a814123e51c090f364)
During installation and after generating a healthcheck report, package sends opt-out telemetry. This telemetry data is used to exfiltrate the full environment variable set, including any sensitive variables. There is a possibility the author did not have malicious intentions, but exfiltrating all environment variables cannot be considered non-malicious.
Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.
Campaign: 2026-09-py-venv-doctor
Reasons (based on the campaign):
The package overrides the install command in setup.py to execute malicious code during installation.
exfiltration-env-variables
action-hidden-in-lib-usage
Ready to move
Start Securing
Free, no credit card | First findings in minutes