Tainted flow: 'request' from os.environ.get (line 67, credential/environment) → urllib.request.urlopen (network output)
Critical
- Category
- Data Flow
- Content
method="POST", ) try: with urllib.request.urlopen(request, timeout=60) as response: result = parse_payload(response.read(), response.headers.get("content-type", "")) return result, response.headers.get("mcp-session-id") or session_id except urllib.error.HTTPError as error:- Confidence
- 88% confidence
- Finding
- The script posts authentication material from environment variables to MCP_URL, and MCP_URL can be overridden via AI_HIVE_MCP_URL. If an attacker can influence the environment or how the skill is launched, API keys or bearer tokens could be sent to an arbitrary remote endpoint, causing credential exfiltration and unauthorized remote tool access.
