Back to skill

Security audit

ElevenLabs Voice Pipeline

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a coherent ElevenLabs voice-generation guide, but it includes operational voice-cloning workflows without clear consent, impersonation, or biometric-data handling safeguards.

Review this skill before installing if you plan to use cloning or Telegram delivery. Only clone voices with explicit permission from the speaker, avoid sensitive text or audio unless external processing is acceptable, keep API keys in environment variables, use a virtual environment, and pin dependency versions where possible.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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 (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:53
Finding

Unpinned Third-Party Dependency Installation

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, line 53
Vulnerability Type: Supply-chain risk from mutable, unverified dependencies
Risk Level: Medium

Vulnerable Code

bash
# Install dependencies
pip install aiohttp pydub python-telegram-bot

Technical Analysis

The installation command retrieves three third-party packages without pinning their versions or verifying their cryptographic hashes. Consequently, the installed code can differ from the code that existed when this Skill was audited. Python package installation can execute package build and installation logic with the privileges of the invoking user.

This does not prove that any named package is malicious. The vulnerability is the absence of controls ensuring that users receive reviewed, immutable dependency artifacts. A compromised publisher account, malicious future release, or affected transitive dependency could introduce arbitrary code.

The pre-scan warning concerning a curl | bash installation flow is not substantiated by the audited file. Lines 49–50 pipe an ElevenLabs JSON API response into python3 -m json.tool for formatting rather than into a shell.

Attack Path

  1. An attacker compromises a dependency publisher, release process, package index account, or relevant transitive dependency.
  2. The attacker publishes a malicious version that satisfies pip's unconstrained resolution.
  3. A user follows the documented pip install command.
  4. Pip downloads the mutable release and executes any applicable build or installation logic.
  5. Malicious code runs under the invoking user's account and may subsequently execute whenever the dependency is imported.

Impact Assessment

Exploitation could provide arbitrary code execution with the privileges of the user running pip or the application. Accessible resources may include project files, user-writable files, network access, Telegram bot data, and process environment varia ...[truncated 232 chars]

Remediation
View remediation

Remediation Suggestions

  1. Move dependencies into a reviewed requirements or lock file and pin exact versions, including transitive dependencies.
  2. Record approved artifact hashes and install with:
    bash
    python3 -m pip install --require-hashes -r requirements.txt
    
  3. Generate and review the lock file using a reproducible dependency-management process.
  4. Use an isolated virtual environment and avoid installing packages as root or with sudo.
  5. Regularly scan locked dependencies for known vulnerabilities and review dependency updates before changing pins.
  6. Where practical, use a trusted internal package mirror containing only approved artifacts.
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 (7)

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

Установка и проверка:

bash
# Проверка API ключа
curl -s -H "xi-api-key: $ELEVENLABS_API_KEY" \
  https://api.elevenlabs.io/v1/voices | python3 -m json.tool

# Установка зависимостей

Ae4

Medium
Category
analysis-evasion
Confidence
80% confidence
Finding

Suspicious Unicode normalization or mixed-script content

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 28)May include surrounding context.

md
# Конфигурация
ELEVENLABS_API_KEY = os.environ.get("ELEVENLABS_API_KEY", "")
ELEVENLABS_BASE_URL = "https://api.elevenlabs.io/v1"

HEADERS = {
    "Accept": "audio/mpeg",

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 50)May include surrounding context.

md
# Конфигурация
ELEVENLABS_API_KEY = os.environ.get("ELEVENLABS_API_KEY", "")
ELEVENLABS_BASE_URL = "https://api.elevenlabs.io/v1"

HEADERS = {
    "Accept": "audio/mpeg",

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill documents instant and professional voice cloning workflows but does not provide explicit safety guidance about consent, impersonation, or handling biometric voice data. This is dangerous because users may clone voices without authorization or process sensitive audio samples, creating privacy, fraud, and reputational risks that are amplified by the operational examples.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

Natural-language instructions, headings, and user-facing guidance are presented only in Russian, which effectively imposes a specific language on users. The file does not offer an opt-in language choice or explain that the skill is intentionally limited to a Russian-speaking audience or region-specific use case.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

The Telegram integration sends generated audio to a third-party messaging platform without clearly warning that user text and synthesized content may leave the local environment and be retained or processed externally. This creates privacy and compliance risk, especially if users synthesize sensitive or personal content and assume the operation is local-only.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.