You're offline — showing cached data

MC-3439

[LegalMind] Command injection via filenames in audio ffmpeg processing
2026-06-13 06:15:48 SAST
Home Board MC-3439

[LegalMind] Command injection via filenames in audio ffmpeg processing

child_process.exec() (shell execution) is used with string-interpolated file paths that include user-controlled file extensions derived from document.fileName. In documentConten...
State Done Next Action Closed Owner Luci Runtime Closed Age 29d ago
MC-3439
Ticket is done; runtime is closed. · profile claude_opus_1m_medium · cwd /home/lucienne/workspace · uptime 29d 3h · last activity 29d 1h ago

Description

MC-3439
child_process.exec() (shell execution) is used with string-interpolated file paths that include user-controlled file extensions derived from document.fileName. In documentContent.ts, the ext variable comes from fileName.split(".").pop() and is interpolated into an ffmpeg command inside double quotes. In batchAnalysis.ts, the fileExt fallback from the filename is similarly used. A filename like test.m4\"; touch /tmp/pwned; echo \"a breaks out of the quoted argument. The sanitizeFileName function in uploads.ts only strips control characters (0x00-0x1f), not shell metacharacters like \", $, or backticks. Should use execFile() with argument arrays instead of exec() with string interpolation. File: server/routes/documentContent.ts:396 Complexity: medium Found by: nightly code review (3a243848 Merge pull request #401 from conrelma/fix/mc-3430-bundle-extra-page-end)

Activity

done
Luci is working...
Live
No activity yet
Help