Tainted flow: 'request' from os.environ.get (line 299, credential/environment) → urllib.request.urlopen (network output)
Critical
- Category
- Data Flow
- Content
method="POST", ) try: with urllib.request.urlopen(request, timeout=45) as response: parsed = json.loads(response.read().decode("utf-8")) raw_content = "".join(part.get("text", "") for part in parsed.get("content", []) if isinstance(part, dict)) review = json.loads(_extract_json_object(raw_content))- Confidence
- 88% confidence
- Finding
- This code sends content and metadata to an externally configurable endpoint using `ZENMUX_ANTHROPIC_BASE_URL` from the environment. In an agent/skill environment, environment variables may be deployment-controlled rather than trusted by the code author, so a malicious or mistaken base URL can exfiltrate analyzed content, source URLs, and derived analysis to an unintended service. The issue is not classic 'env harvesting' but unsafe use of an unvalidated externally configured destination for outbound sensitive data.
