Back to skill

Security audit

Voiceover

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward voiceover helper that sends a user-provided script to text-to-speech models and does not show hidden or destructive behavior.

Before installing, consider whether the scripts you send are appropriate for third-party TTS processing, and avoid using copyrighted, private, or sensitive material unless your account and provider terms permit it.

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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (1)

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
75% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

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

md
- `settings.textNormalization` (Inworld TTS-2): `true` to expand numbers/dates/abbreviations from raw text into spoken form.
- `settings.normalize` (Fish S2.1 Pro): must be `false` for paralanguage `(cues)` and `<|phoneme|>` overrides, otherwise those tokens get stripped.
- `positivePrompt` (Qwen CustomVoice): an optional style/emotion hint, e.g. "Speak with great enthusiasm".
- Confirm exact field names against the live schema (`runware-run`). Bracket-tag and paralanguage syntax differs per model, so never carry one model's cues onto another without checking.

## Quality bar

Static analysis

No suspicious patterns detected.