Back to skill

Security audit

Seerr Media Requests

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly aligned with managing Seerr media requests, but it can automatically create download requests from broad search-like prompts without first asking the user to confirm the exact item.

Install only if you are comfortable giving the agent a Seerr API key that can submit media requests. Prefer HTTPS for any non-local Seerr URL, use a limited API key if available, and require the agent to show the exact title, year, TMDB ID, media type, and seasons before it sends any request.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (2)

T09 · Insecure Skill Coding Practices

Error
Location
SKILL.md:17
Finding

Seerr API Key May Be Transmitted Over Plaintext HTTP

Content
View full analysis
:5055` for remote) ``` ```bash curl -s -H "X-Api-Key: $SEERR_API_KEY" \ "$SEERR_URL/api/v1/search?query=PERCENT_ENCODED_QUERY&page=1&language=en" ``` The same API-key header and configurable base URL are also used by the state-changing request examples on lines 37-53 and the status calls on lines 59-61. ### Technical Analysis The documented configuration explicitly permits a remote Seerr server to use an unencrypted `http://` URL. All Seerr requests transmit the reusable `SEERR_API_KEY` in the `X-Api-Key` HTTP header. When plain HTTP is used, neither the credential nor the request and response content receives transport confidentiality or server authentication. An attacker with a suitable network position can inspect the traffic, capture the API key, modify responses, or redirect requests. The Skill does not require HTTPS, reject insecure remote URLs, or provide equivalent transport-security safeguards. ### Attack Path 1. A user follows the documented configuration and sets `SEERR_URL` to a remote `http://:5055` endpoint. 2. The Skill searches, checks status, or creates a media request. 3. The HTTP request carries `SEERR_API_KEY` in the plaintext `X-Api-Key` header. 4. An attacker controlling or monitoring a relevant network segment captures the request. 5. The attacker extracts the reusable API key. 6. The attacker submits independent requests to the Seerr API using the permissions associated with that key. This path requires network visibility or an equivalent ability to intercept plaintext traffic between the agent and Seerr. ### Impact Assessment A successful attacker can obtain the Seerr API key and exerci ...[truncated 533 chars]
Remediation
View remediation

other

Warning
Location
SKILL.md:73
Finding

Search Operations Automatically Trigger Unconfirmed Media Requests

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (3)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The trigger description is broad enough that the skill may activate for generic requests to 'find' or 'queue' media, increasing the chance of unintended invocation. In this skill, unintended invocation matters because the documented workflow can proceed from search directly to requesting downloads, turning a simple discovery request into an external side effect.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 29)May include surrounding context.

Search

bash
curl -s -H "X-Api-Key: $SEERR_API_KEY" \
  "$SEERR_URL/api/v1/search?query=PERCENT_ENCODED_QUERY&page=1&language=en"

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The workflow explicitly says to 'auto-request if not available,' which authorizes a state-changing external action without an explicit confirmation step from the user. That is dangerous because a user asking to search or browse could unintentionally trigger downloads/queueing on connected Radarr/Sonarr infrastructure.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.