Back to skill

Security audit

AI播客生成

Security checks for vulnerabilities and agentic risk

Overview

The skill appears to perform its stated podcast-generation function and discloses that user content is sent to MagicPodcast, with no hidden persistence or destructive behavior found.

Use this only when you are comfortable sending the provided text or PDF URL to MagicPodcast for external processing. Avoid confidential, regulated, or proprietary documents unless you have approval, and treat the translation/localization wording as limited to generating podcasts in a chosen language rather than as a general translation tool.

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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (5)

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The manifest description and summary consistently describe converting PDFs, text, notes, and links into two-host podcast audio via MagicPodcast. However, L014 adds 'Use when 需要文本翻译、多语言转换、本地化处理时使用', which broadens the stated purpose into translation/localization, while the rest of the file only documents podcast creation with an optional target language for generated output.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The description says "Use when 需要文本翻译、多语言转换、本地化处理时使用," which is a broad natural-language trigger covering generic translation and localization requests rather than this skill's specific podcast-generation function. This ambiguity could cause the skill to be invoked for common translation tasks unrelated to converting content into podcasts.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The skill requests broad exec capability even though its documented purpose is just to call a remote podcast API. In an agent environment, unnecessary command-execution privileges expand the blast radius: if the skill is misused, prompt-injected, or modified later, it could execute arbitrary local commands or access local resources unrelated to podcast generation.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
94% confidence
Finding

The skill sends user-provided PDF URLs or text content to an external third-party API for processing. Because the use cases include internal documents, notes, and educational/corporate materials, this creates a real data-exfiltration/privacy risk if users provide sensitive or proprietary content; the danger is amplified by the skill's own encouragement to upload externally accessible PDFs and submit raw text to a remote service.

Content

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

md
# ...
payload="$(jq -n --arg pdfUrl "$PDF_URL" --arg language "$LANGUAGE" '{pdfUrl:$pdfUrl,language:$language}')"
# ...
curl -sS -X POST "$MAGICPODCAST_API_URL/agent/v1/podcasts/pdf" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $MAGICPODCAST_API_KEY" \
  --data-binary "$payload"

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
78% confidence
Finding

The description embeds an English directive ("Use when ...") inside otherwise Chinese-facing metadata, which can impose a language expectation inconsistently without explicit user opt-in. This is a natural-language locale/presentation policy issue because the skill does not clearly state how language is selected for instructions or descriptions presented to the user.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.