Tainted flow: 'req' from os.environ.get (line 72, credential/environment) → urllib.request.urlopen (network output)
Critical
- Category
- Data Flow
- Content
method="POST", ) try: with urlopen(req, timeout=150) as response: return json.loads(response.read().decode("utf-8")) except HTTPError as e: body = e.read().decode("utf-8") if e.fp else ""- Confidence
- 96% confidence
- Finding
- The request sent via urlopen includes multiple values taken directly from environment variables, including the API key and session-related headers, and the destination base URL is also environment-controllable through LINKFOX_TOOL_GATEWAY. This creates a real exfiltration path: in a hostile or multi-tenant execution environment, an attacker can redirect requests to an arbitrary server and receive credentials and query data.
