Back to skill

Security audit

Sonarr

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward Sonarr helper, but users should be careful because some documented commands can change the media library, trigger downloads, or delete media-related records.

Install only if you intend to let the agent use your Sonarr API key. Review prompts carefully before allowing add, delete, blacklist, rename, rescan, or missing-episode search actions, because they can modify your media library, trigger downloads, or affect files managed by Sonarr.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (9)

External Script Fetching

High
Category
Supply Chain
Confidence
90% confidence
Finding

Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.

Content

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

Search and add a TV series

bash
# 1. Look up by title (returns TVDB results)
curl -s "$SONARR_URL/api/v3/series/lookup?term=Breaking+Bad" \
  -H "X-Api-Key: $SONARR_KEY" | python3 -c "
import sys,json
results = json.load(sys.stdin)

External Script Fetching

High
Category
Supply Chain
Confidence
90% confidence
Finding

Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.

Content

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

md
"

# 2. Get quality profiles and root folders
curl -s "$SONARR_URL/api/v3/qualityprofile" -H "X-Api-Key: $SONARR_KEY"
curl -s "$SONARR_URL/api/v3/rootfolder" -H "X-Api-Key: $SONARR_KEY"

# 3. Add the series

External Script Fetching

High
Category
Supply Chain
Confidence
90% confidence
Finding

Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.

Content

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

Trigger search for all missing episodes

bash
curl -s -X POST "$SONARR_URL/api/v3/command" \
  -H "X-Api-Key: $SONARR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"MissingEpisodeSearch"}'

Missing User Warnings

High
Category
Not specified by scanner
Confidence
90% confidence
Finding

The documentation includes DELETE operations for episode files and queue items, including blacklisting, but does not warn users that these actions can remove files or alter download behavior. For markdown files, destructive or system-affecting behavior should be explicitly disclosed to avoid unintended data loss or workflow disruption.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill documents state-changing Sonarr operations such as adding series and triggering missing-episode searches without any warning, confirmation step, or constraint on when these actions are appropriate. In an agent setting, this increases the chance of unintended library modification, download activity, and downstream interaction with indexers/download clients from a casual or ambiguous prompt.

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 35)May include surrounding context.

md
"

# 2. Get quality profiles and root folders
curl -s "$SONARR_URL/api/v3/qualityprofile" -H "X-Api-Key: $SONARR_KEY"
curl -s "$SONARR_URL/api/v3/rootfolder" -H "X-Api-Key: $SONARR_KEY"

# 3. Add the series

External Transmission

Medium
Category
Data Exfiltration
Confidence
86% confidence
Finding

This POST command instructs Sonarr to perform a MissingEpisodeSearch, which can initiate downstream automated searches and downloads via integrated services. In a skill context, exposing this action as a simple example without warning or confirmation makes unintended triggering materially more likely.

Content

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

Trigger search for all missing episodes

bash
curl -s -X POST "$SONARR_URL/api/v3/command" \
  -H "X-Api-Key: $SONARR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"MissingEpisodeSearch"}'

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
82% confidence
Finding

This markdown file documents state-changing operations including adding, updating, and deleting series, but it provides no warning that these actions modify or remove user-managed media records. Under the markdown-file criteria, descriptions should disclose behaviors that could affect user data or system state.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

The Commands section documents operational actions such as searching, rescanning folders, refreshing metadata, and renaming files, all of which can materially affect the user's library or external services. The markdown does not include any warning about these side effects, despite the potential impact on user data, disk state, or connected systems.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.