pypi · Malicious package advisory
Malwaremy-private-pkg
GHSA-v7x9-wx5x-qrpp
Malicious code in my-private-pkg (PyPI)
Details
**Severity:** Critical **Affected versions:** `= 99.1.1` ## Source: amazon-inspector (d8008c5637dfae2dfc4162f1dd5152c5e90e03b0fc8593fda5055f44e9745b22) setup.py registers a custom install command (PostInstallCommand) that runs my_private_pkg/index.py automatically on `pip install`. That script gathers installer-side identifiers — os.getlogin(), socket.gethostname(), local IP address, os.getcwd(), platform.system() and platform.machine() — and POSTs them as JSON to a hardcoded collector URL at https://webhook.site/d4d1b01b-708a-40b9-b8c8-187eeecafeed. A duplicate of the exfiltration payload is shipped as vercel_runtime_python/index.py, and vercel_runtime_python/__init__.py contains the same PostInstallCommand wiring referencing my_private_pkg/index.py; the module name mimics Vercel's Python runtime. The package name and the internal vercel_runtime_python module name are consistent with a dependency-confusion lure targeting an internal `my-private-pkg` name and Vercel's runtime namespace: the only on-install effect is a reconnaissance beacon to an attacker-controlled webhook.site endpoint identifying the host that mistakenly resolved the public name. --- Credit: [OpenSSF](https://github.com/ossf/malicious-packages) ([source](https://github.com/ossf/malicious-packages/blob/c93fda3f08313c598165839b4fb8b4d4d912f27a/osv/malicious/pypi/my-private-pkg/MAL-2026-17180.json)) **References:** - https://github.com/ossf/malicious-packages/blob/c93fda3f08313c598165839b4fb8b4d4d912f27a/osv/malicious/pypi/my-private-pkg/MAL-2026-17180.json - https://pypi.org/project/my-private-pkg/99.1.1 - https://bad-packages.kam193.eu/pypi/package/my-private-pkg - https://github.com/ossf/malicious-packages/blob/29209b258d9ff10310cb3391b2547a63e24fd107/osv/malicious/pypi/my-private-pkg/MAL-2026-17180.json - https://hyena-dashboard-314003657440.asia-northeast3.run.app/#/report/f6466201-aa5b-4136-b458-f88e7b9b4575?period=30&eco=all&tab=summary&return=%23%2Freports%3Fperiod%3D30%26eco%3Dall%26verdict%3Dmalicious - https://github.com/ossf/malicious-packages/blob/1137664b0532f45df42606aae99f0befa992fe54/osv/malicious/pypi/my-private-pkg/MAL-2026-17180.json - https://pypi.org/project/my-private-pkg/0.1.1 - https://github.com/ossf/malicious-packages/blob/9b3ccbf4bfc4af3c2e53e9b0729d217beb12d481/osv/malicious/pypi/my-private-pkg/MAL-2026-17180.json
Compromised versions (1)
- = 99.1.1
Any computer that installed or ran a compromised version should be considered fully compromised. Rotate every secret on that machine from a clean environment.