Tainted flow: 'url' from os.getenv (line 271, credential/environment) → requests.post (network output)
Critical
- Category
- Data Flow
- Content
} if body is not None: kwargs["json"] = body return requests.post(url, **kwargs) def _raise_for_status(resp: requests.Response) -> None:- Confidence
- 90% confidence
- Finding
- The code allows the destination URL to be derived from TOKENAPI_BASE_URL and then sends authenticated requests with a Bearer token to that URL. If an attacker can influence the environment or configuration, they can redirect requests to an attacker-controlled host, causing exfiltration of the API key and submitted payloads; the default use of plain HTTP for localhost also weakens transport guarantees.
