Tainted flow: 'url' from os.getenv (line 55, credential/environment) → requests.post (network output)
Critical
- Category
- Data Flow
- Content
} } response = requests.post(url, headers=headers, json=body, timeout=30) result = response.json() if result.get("code") != 2000:- Confidence
- 91% confidence
- Finding
- The request target is derived from the JF_ENDPOINT environment variable and then used to send signed control requests containing sensitive authentication material. If an attacker can influence the runtime environment, they can redirect device-operation traffic to an attacker-controlled host, enabling credential/header exfiltration and unauthorized replay or misuse of signed requests. In a device reboot/shutdown skill, this is more dangerous because the transmitted request is an authenticated operational command, not just ordinary telemetry.
