subprocess module call
Medium
- Category
- Dangerous Code Execution
- Content
) tts_track = workdir / "tts_track.mp3" subprocess.run( [FFMPEG, "-y"] + inputs + [ "-filter_complex", ";".join(filter_parts), "-map", "[aout]",- Confidence
- 83% confidence
- Finding
- The ffmpeg filter_complex string is assembled from subtitle-derived timestamps and paths, then handed to ffmpeg's parser without robust escaping. While not shell injection, complex ffmpeg filter expressions are their own interpreted language, so malformed or hostile values can cause parse failures, unintended graph behavior, or denial of service in a pipeline that processes untrusted media/transcript content.
