Back to skill

Security audit

Inworld TTS

Security checks across malware telemetry and agentic risk

Overview

This is a straightforward Inworld.ai text-to-speech helper, but anything converted to speech is sent to Inworld’s API.

Install only if you are comfortable sending the text you choose to convert to Inworld.ai using your API key. Avoid passing secrets, private customer data, or regulated content unless your policies allow it, store the API key carefully, and skip the optional global symlink unless you need command-line access from anywhere.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

Lp3

Medium
Category
MCP Least Privilege
Confidence
93% confidence
Finding
The skill documentation clearly instructs users to execute shell commands and a local script, but the skill declares no permissions to reflect that capability. This creates a transparency and review gap: consumers or platforms may underestimate what the skill can do, and shell-capable skills can lead to command execution risks when paired with unsafe scripts or user-controlled inputs.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The script transmits arbitrary user-supplied text to a third-party API, but it does not provide any explicit warning, consent gate, or indication at execution time that the content will leave the local environment. In a skill context, users may pass sensitive prompts, secrets, or personal data expecting local processing, so the undisclosed network transmission creates a real data exposure risk even though it is central to the feature.

External Transmission

Medium
Category
Data Exfiltration
Content
)

if [[ "$STREAM" == "true" ]]; then
  curl -s --request POST \
    --url "https://api.inworld.ai/tts/v1/voice:stream" \
    --header "Authorization: Basic $INWORLD_API_KEY" \
    --header "Content-Type: application/json" \
Confidence
89% confidence
Finding
curl -s --request POST \ --url "https://api.inworld.ai/tts/v1/voice:stream" \ --header "Authorization: Basic $INWORLD_API_KEY" \ --header "Content-Type: application/json" \ --data

External Transmission

Medium
Category
Data Exfiltration
Content
| jq -r --unbuffered '(.result.audioContent? // .audioContent? // empty)' \
    | base64 -d > "$OUTPUT"
else
  curl -s --request POST \
    --url "https://api.inworld.ai/tts/v1/voice" \
    --header "Authorization: Basic $INWORLD_API_KEY" \
    --header "Content-Type: application/json" \
Confidence
89% confidence
Finding
curl -s --request POST \ --url "https://api.inworld.ai/tts/v1/voice" \ --header "Authorization: Basic $INWORLD_API_KEY" \ --header "Content-Type: application/json" \ --data

VirusTotal

66/66 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.