Tainted flow: 'url' from os.getenv (line 113, credential/environment) → requests.post (network output)
Critical
- Category
- Data Flow
- Content
"response_format": "b64_json" } response = requests.post(url, headers=headers, json=payload, timeout=120) response.raise_for_status() data = response.json()- Confidence
- 94% confidence
- Finding
- The request destination is derived from a configurable base URL that can come from an environment variable or caller input, and the code sends the bearer API key to that endpoint. If an attacker can influence configuration, this becomes SSRF plus credential exfiltration to an attacker-controlled host.
