subprocess module call
Medium
- Category
- Dangerous Code Execution
- Content
except: pass e = t.replace("'","''") log(f"Play vol={cv} text={t[:20]}") subprocess.run( ["powershell","-ExecutionPolicy","Bypass","-NoProfile","-c", "Add-Type -AssemblyName System.Speech; " "$s=New-Object System.Speech.Synthesis.SpeechSynthesizer; "- Confidence
- 92% confidence
- Finding
- The code launches PowerShell for each queued message and builds the PowerShell command by concatenating untrusted text into a script string. Although single quotes are doubled, this still exposes a larger-than-necessary interpreter surface and relies on brittle escaping instead of passing data through a safer API. In this skill's context, any process able to send WM_COPYDATA messages to the window can trigger repeated PowerShell-driven speech events, increasing abuse potential.
