You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
security(transcriber): fix arbitrary file read vulnerability in RecordingCreate API #9214
CRITICAL - Path injection vulnerability allows arbitrary file system access
Context
Post-MVA-2186 security review flagged critical path injection in transcriber API.
Vulnerability
POST /api/transcriber/recordings accepts client-provided file_path parameter which is passed directly to FFmpeg and speech providers without validation:
classRecordingCreate(BaseModel):
filename: strfile_path: str# ← client-controlled, no validation# Passed directly to system commands:awaitself.ffmpeg_service.extract_audio(
input_path=recording.file_path, # ← attacker-controlledoutput_path=tmp_wav_path
)
Activity
security(transcriber): fix arbitrary file read vulnerability in Recor…
fix(lint): auto-format transcriber files with black (#9214)
security(transcriber): fix CodeQL path-injection alerts in upload_sec…
security(transcriber): add CodeQL suppressions for false-positive pat…
security(transcriber): fix arbitrary file read vulnerability in Recor…
fix(lint): auto-format transcriber files with black (#9214)
security(transcriber): fix CodeQL path-injection alerts in upload_sec…
security(transcriber): add CodeQL suppressions for false-positive pat…
fix(security): Add CodeQL exclusion for validated path injection guar…
fix(security): correct CodeQL query-filters syntax (MVA-2683)
security(transcriber): fix arbitrary file read vulnerability in Recor…
fix(lint): auto-format transcriber files with black (#9214)
security(transcriber): fix CodeQL path-injection alerts in upload_sec…
security(transcriber): add CodeQL suppressions for false-positive pat…
fix(security): Add CodeQL exclusion for validated path injection guar…
fix(security): correct CodeQL query-filters syntax (MVA-2683)
security(transcriber): fix arbitrary file read vulnerability (#9214)
github-actions commentedon Jun 3, 2026
PR #9306 (merged to
Dev_new_gui) references this issue with a close keyword.If this issue is fully resolved, close it manually. If work remains, no action is needed.
mrveiss commentedon Jun 12, 2026
Closed — fix merged to Dev_new_gui as
6d3b004d8(PR #9306); verified still present at current HEAD (791ae16f7):file_pathremoved fromRecordingCreate— model now accepts onlyproject_id(transcriber/models.py:32)UploadFilein transcriber/routes/recordings.py:48) with extension whitelisttranscriber/upload_security.py— per-user upload dirs, UUID secure filenames,Path.resolve()canonicalization, traversal guard, symlink rejection (lines 30–154)-protocol_whitelist+-allowed_extensions(media/audio/ffmpeg_service.py:105-108)(Issue stayed open only because close-keywords don't auto-fire on Dev_new_gui merges.)
fix(media): stop ffmpeg rejecting every real audio extraction (#14550)
fix(media): stop ffmpeg rejecting every real audio extraction (#14550)
fix(media): stop ffmpeg rejecting every real audio extraction (#14550)