Tainted flow: 'url' from os.getenv (line 80, credential/environment) → requests.post (network output)
Critical
- Category
- Data Flow
- Content
if channel is not None: body["Channel"] = str(channel) response = requests.post(url, headers=headers, json=body, timeout=30) result = response.json() if result.get("code") != 2000:- Confidence
- 95% confidence
- Finding
- The request destination is derived from the JF_ENDPOINT environment variable and then used to construct the HTTPS URL for authenticated API calls. If an attacker can influence that environment variable, the script will send signed requests and device identifiers to an attacker-controlled host, enabling credential misuse, request replay opportunities, or unauthorized device-management traffic.
