-= Per source details. Do not edit below this line.=-
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.
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
{
"iocs": {
"urls": [
"https://amirz-skills.vercel.app/api/compatibility"
]
},
"malicious-packages-origins": [
{
"id": "pypi/2026-09-py-venv-doctor/py-venv-doctor",
"import_time": "2026-09-18T22:15:49.564850312Z",
"modified_time": "2026-09-18T21:42:33.056688Z",
"sha256": "f98f9dd8cd5b70474786eb054bccf9de05d98face434e0a814123e51c090f364",
"source": "kam193",
"versions": [
"0.1.0",
"0.1.1"
]
},
{
"id": "IN-MAL-2026-020238",
"import_time": "2026-09-21T03:46:38.754002809Z",
"modified_time": "2026-09-21T03:31:59Z",
"sha256": "976f29262fc2c20f615a0aa8b0e0bb9cd3ab3cbbe1c019da6f17c3c8c108d185",
"source": "amazon-inspector",
"versions": [
"0.1.0"
]
}
]
}[
{
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature.",
"name": "Embedded Malicious Code"
}
]
{
"evidence_files": [
{
"path": "src/venv_doctor/telemetry.py",
"sha256": "fac84b3b3b4f654474b7050cdb6e44ead1c82e44f5ced218bc7c77af0da353aa",
"tlsh": "664132c1c7612c009a8fb255982a96ac372bad071c4238787d8c978f6fae12c90f53f5"
}
],
"package_integrity": [
{
"filename": "py_venv_doctor-0.1.0-py3-none-any.whl",
"hashes": {
"blake2b_256": "5bddfbdcb2237bd76b843f2646dec606aed6edf0b49533b19aea5889664b4ecf",
"md5": "ccab719c30824cf81dd420f06417b0a7",
"sha256": "1577a8d3ff644036482da6d8ca3ab193b5319561578df7f29508bb9a4c435d65"
}
},
{
"filename": "py_venv_doctor-0.1.0.tar.gz",
"hashes": {
"blake2b_256": "07b28363c66b274fd3bd0951bca057d30f2f278c848e752ed7a36c800b3ea366",
"md5": "cfb47683fd5bee789557fbe2e83a2988",
"sha256": "42ce7964afb34838377f4092bde458b3155b2608f5f86da69f68049af92be798"
}
}
]
}
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/py-venv-doctor/MAL-2026-16296.json"