T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:31- Finding
Unpinned Remote Repository Is Retrieved and Its Installer Is Executed
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is purpose-aligned for managing a media stack, but it asks users to install unaudited, mutable external code that can control media services and use stored API keys or SSH access.
Review the external GitHub repository before installing, prefer a pinned commit or signed release, and only configure API keys and SSH access for services you are comfortable letting an agent manage. Be especially careful with download removal, file deletion, and bulk pause or refresh commands.
SKILL.md:31Unpinned Remote Repository Is Retrieved and Its Installer Is Executed
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
media status
The setup wizard asks for API URLs and keys, saves to `~/.config/media-cli/config` (chmod 600).
## Commands
The skill exposes destructive commands such as removing media, pausing/resuming all downloads, and deleting download data, but does not prominently warn users or agents about their side effects. In an AI-agent context, concise command examples can be executed automatically or suggested without sufficient confirmation, increasing the risk of accidental library changes or data loss.
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- Talks to *arr v3 APIs (Sonarr/Radarr), v1 (Prowlarr), v2 (qBittorrent WebUI)
- Python3 used strictly for JSON parsing (standard library)
- No telemetry, no analytics, no network calls except to your own services
- Config stored at `~/.config/media-cli/config` with chmod 600
No suspicious patterns detected.