T09 · Insecure Skill Coding Practices
- Location
scripts/video_ingest.py:258- Finding
Local File Contents May Be Disclosed to the Configured Codex Backend
- Content
View full analysis
tuple[Path, str, dict[str, Any]]: meta = { 'title': path.stem, 'source_path': str(path), 'platform': 'local', 'id': hashlib.sha1(str(path).encode('utf-8')).hexdigest()[:12], } json_dump(item_dir / 'source.info.json', meta) suffix = path.suffix.lower() if suffix in SUB_EXTS: transcript_path = item_dir / 'transcript.txt' transcript_path.write_text(strip_subtitle_to_text(path), encoding='utf-8') return transcript_path, f'subtitles:{path.name}', meta if suffix in TEXT_EXTS: transcript_path = item_dir / 'transcript.txt' shutil.copy2(path, transcript_path) return transcript_path, f'text:{path.name}', meta if suffix in MEDIA_EXTS: transcript_path, backend = transcribe_media(path, item_dir, language) return transcript_path, backend, meta ``` ```python def summarize_transcript(transcript_path: Path, length: str) -> str: proc = run([ SUMMARIZE, str(transcript_path), '--plain', '--cli', 'codex', '--force-summary', '--length', length, '--timeout', '5m', ], capture=True) return proc.stdout.strip() + '\n' ``` ```python transcript_text = read_text(transcript_path) if not transcript_text.strip(): raise RuntimeError('transcript is empty') summary_text = summarize_transcript(transcript_path, args.length) ``` ### Technical Analysis The Skill accepts arbitrary local text, Markdown, subtitle, audio, and video files. Text files are copied directly into `transcript.txt`, while subtitle and media files are converted or tran ...[truncated 2009 chars]- Remediation
View remediation
