T01 · Skill Instruction Hijacking
- Location
scripts/run_youtube_batch_end_to_end.py:43- Finding
Untrusted YouTube Metadata Is Forwarded as an Agent Message
- Content
View full analysis
str | None: if event == "video_started": title = payload.get("title") or payload.get("url") or "video" index = payload.get("index") total = payload.get("total") prefix = f"[{index}/{total}] " if index and total else "" return f"{prefix}Started: {title}" if event == "video_summary_done": title = payload.get("title") or payload.get("url") or "video" return f"Summary ready: {title}" if event == "batch_complete": success_count = payload.get("success_count") total = payload.get("total") failure_count = payload.get("failure_count") return f"Batch complete: {success_count}/{total} succeeded, {failure_count} failed" if event == "video_failed": title = payload.get("title") or payload.get("url") or "video" phase = payload.get("phase") or "unknown phase" error = str(payload.get("error") or "unknown error").strip() if len(error) > 220: error = error[:217] + "..." return f"Failed: {title} ({phase})\n{error}" return None def forward_progress_update(event: str, **payload: Any) -> None: session_key = payload.get("sessionKey") or get_launch_session_key() message = build_forward_message(event, payload) if not session_key or not message: return cmd = [ "openclaw", "agent", "--session-id", session_key, "--message", message, ] result = subprocess.run(cmd, text=True, capture_output=True) ``` ### Technical Analysis The video title and some failure details originate from remote, untrusted sources. The title is inserted directly i ...[truncated 1763 chars]- Remediation
View remediation
