Tainted flow: 'node' from os.environ.get (line 28, credential/environment) → subprocess.run (code execution)
Medium
- Category
- Data Flow
- Content
env = os.environ.copy() if html_file: env["WECHAT_HTML_FILE"] = str(html_file) res = subprocess.run( [node, "-e", js], capture_output=True, text=True,- Confidence
- 91% confidence
- Finding
- The executable name comes from os.environ.get('NODE'), so anyone controlling the process environment can redirect execution to an arbitrary binary or script. Because this skill is designed to process untrusted content and may run in automation contexts, environment-controlled code execution can lead to full compromise of the agent runtime or data accessible to it.
