VDB
GCVE-110-OSM-2026-12871
GCVE-110-OSM-2026-12871
Advisory PublishedCVSS 8.8/10
py-0requests is a homoglyph typosquat of the PyPI package `requests` (letter `o` replaced with digit `0`). On `import py_0requests`, top-level code in the package's `__init__.py` scrapes `os.environ` for keys prefixed with SECRET, API, TOKEN, or KEY and sends the collected dictionary over a TCP socket to a host/port read from `TS_HOST`/`TS_PORT` (defaulting to 127.0.0.1:9999). The same import path spawns a Python subprocess that opens a TCP connection to the same destination, sends a `SHELL` marker, and holds the socket open, providing a reverse-shell handshake to whichever operator controls the destination. The package's CLI banner self-identifies as `targeting requests` and ships no HTTP-client API.
During import, the code exfiltrates potentially sensitive env variables. In all analyzed versions the exfiltration target was a localhost, suggesting it was just a test.
Category: PROBABLY_PENTEST - Packages looking like typical pentest packages, but also anything that looks like testing, exploring pre-prepared kits, research & co, with clearly low-harm possibilities.
Campaign: 2026-09-0requests
Reasons (based on the campaign):
- exfiltration-env-variables
- typosquatting
ENTRY
py_0requests/cli.py (console-script: 'py_0requests=py_0requests.cli:main')
ADDITIONAL FINDINGS
- Shell Command Execution in py_0requests/__init__.py: "subprocess.Popen("
PAYLOAD FILES
py_0requests/__init__.py
Weaknesses (CWE)
CWE-506Embedded Malicious Code
Risk Scores
CVSS 3.1
8.8/10
High · CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Affected Products
| Vendor | Product | Versions | Platforms |
|---|---|---|---|
| unknown | py-0requests | all (affected) | — |
Aliases
Browse GCVE Records
3,164 records in the GCVE database · Updated October 4, 2026
No matching records found.
Explore Further
Investigate this vulnerability in the interactive console or download the raw GCVE record.