Tainted flow: 'EMBEDDINGS_URL' from os.environ.get (line 42, credential/environment) → subprocess.run (code execution)
Medium
- Category
- Data Flow
- Content
if _embeddings_available is not None: return _embeddings_available try: result = subprocess.run( ["curl", "-s", "-m", "2", "-X", "POST", EMBEDDINGS_URL, "-H", "Content-Type: application/json", "-d", json.dumps({"input": "test"})],- Confidence
- 90% confidence
- Finding
- The embeddings destination is taken from an environment variable and used to send HTTP requests, allowing deployment-time redirection to an arbitrary host. In a skill that processes reflective notes and transcript-derived content, this creates a data exfiltration channel and can silently leak sensitive internal text outside the expected local boundary.
