T03 · Remote Payload Retrieval and Execution
- Location
references/setup-guide.md:359- Finding
Remote Installer Executed Directly with Root Privileges
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is a coherent media-stack control tool, but it handles powerful service keys, browser storage, package installs, and Docker/SSH commands in ways that deserve careful review before installation.
Install only if you are comfortable giving the agent operational control of your media stack. Use least-privilege service keys where possible, avoid running the sudo curl installer, avoid unpinned pip installs unless you trust those packages, do not paste secrets into the browser UI on a shared origin, prefer HTTPS or a trusted management LAN, and review Docker/SSH environment values before using companion-service commands.
references/setup-guide.md:359Remote Installer Executed Directly with Root Privileges
scripts/trackers.sh:150Unpinned Traktarr and Retraktarr Packages Installed from the Active Python Package Index
scripts/recyclarr.sh:13Remote Shell Command Injection in SSH Docker Wrappers
scripts/trakt.sh:1482Media-Service and Trakt Credentials Written and Displayed in Plaintext
ui/index.html:629Browser Stores API Keys Persistently and Sends Them in Plaintext URLs
scripts/trakt.sh:1182LAN API Keys and Viewing History Transmitted over Plaintext HTTP
The setup instructions state that the script 'auto-discovers services, extracts API keys, verifies connections, and outputs your config' without a corresponding warning about credential harvesting, where the keys come from, how they are stored, or who can read the generated output. That is dangerous because API keys and tokens for Sonarr, Radarr, Plex, Tautulli, and related services often grant broad administrative control, and automatic extraction lowers the barrier to over-privileged access or accidental credential exposure.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
This finding identifies undeclared Docker/SSH container inspection and restart capabilities, which are materially privileged compared with ordinary media-management tasks. Remote container access can reveal environment secrets, service configuration, and allow operational disruption if restart actions are triggered on the wrong host.
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
- `GET /series/lookup?term=<query>` - Search for series
- `POST /series` - Add series
- `PUT /series/{id}` - Update series
- `DELETE /series/{id}` - Delete series
### Episodes
- `GET /episode` - All episodes
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
### Queue
- `GET /queue` - Download queue
- `GET /queue/{id}` - Queue item details
- `DELETE /queue/{id}?removeFromClient=true` - Remove from queue
### History
- `GET /history?pageSize=20&sortKey=date&sortDirection=descending` - History
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
### Queue
- `GET /queue` - Download queue
- `GET /queue/{id}` - Queue item details
- `DELETE /queue/{id}?removeFromClient=true` - Remove from queue
### History
- `GET /history?pageSize=20&sortKey=date&sortDirection=descending` - History
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
- `GET /movie/lookup/tmdb?tmdbId=<id>` - Lookup by TMDB ID
- `POST /movie` - Add movie
- `PUT /movie/{id}` - Update movie
- `DELETE /movie/{id}` - Delete movie
### Queue
- `GET /queue` - Download queue
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
- `GET /artist/{id}` - Single artist
- `GET /search?term=<query>` - Search
- `POST /artist` - Add artist
- `DELETE /artist/{id}` - Delete artist
### Albums
- `GET /album` - All albums
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
### Queue
- `GET /queue` - Download queue
- `DELETE /queue/{id}` - Remove from queue
### Quality Profiles
- `GET /qualityprofile` - All quality profiles
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
### Queue
- `GET /queue` - Download queue
- `DELETE /queue/{id}` - Remove from queue
### Quality Profiles
- `GET /qualityprofile` - All quality profiles
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
- `GET /author/{id}` - Single author
- `GET /author/lookup?term=<query>` - Search authors
- `POST /author` - Add author
- `DELETE /author/{id}` - Delete author
### Books
- `GET /book` - All books
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
- `GET /indexer/{id}` - Single indexer
- `POST /indexer` - Add indexer
- `PUT /indexer/{id}` - Update indexer
- `DELETE /indexer/{id}` - Delete indexer
- `POST /indexer/test` - Test indexer
- `POST /indexer/testall` - Test all indexers
No suspicious patterns detected.