Tainted flow: 'request' from os.environ.get (line 165, credential/environment) → urllib.request.urlopen (network output)
Critical
- Category
- Data Flow
- Content
method="POST", ) try: with urllib.request.urlopen(request, timeout=timeout) as response: body = response.read().decode("utf-8") except urllib.error.HTTPError as exc: body = exc.read().decode("utf-8", errors="replace")- Confidence
- 88% confidence
- Finding
- The request destination is derived from the environment via BANA_TAOBAO_BASE_URL and then used directly for an outbound POST that includes app_id and secure_key. If an attacker can influence the environment, they can redirect the request to an arbitrary server and capture the credentials, turning this into credential exfiltration rather than ordinary product search.
