Back to skill

Security audit

Doubao ASR Flash

Security checks for vulnerabilities and agentic risk

Overview

The skill largely matches its transcription purpose, but it unnecessarily sends the user's API key as a user identifier while uploading audio to a third-party cloud service.

Install only if you are comfortable sending selected audio/video content to Volcengine for cloud transcription and with the service's billing terms. Avoid using it for sensitive recordings unless you explicitly approve that upload. Before use, prefer passing a non-secret --uid or modifying the script so it does not place the API key in user.uid.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (4)

Lp3

Medium
Category
MCP Least Privilege
Confidence
87% confidence
Finding
The skill documentation instructs use of network access, shell execution, environment variables, and file read/write behavior, but no explicit permissions are declared. That mismatch can prevent users or a hosting platform from understanding the actual trust boundary, especially because the skill uploads local audio/video or remote URL content to a third-party API and may write outputs or config files. In this context the capabilities are expected for ASR, but the undeclared scope still increases risk through under-disclosure rather than overtly malicious behavior.

Vague Triggers

Medium
Confidence
80% confidence
Finding
The activation guidance is broad enough to trigger the skill for many generic requests involving transcription, dictation, subtitles, or meeting notes, without clearly limiting when remote upload, local file handling, or ffmpeg conversion should occur. Over-broad routing can cause the agent to invoke a higher-privilege skill unnecessarily, exposing local files or sending user content to an external API when a safer or more privacy-preserving path might exist. The skill context makes this somewhat more sensitive because the handled content is often private audio or video.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The script sends full audio content to a third-party remote service and may also send a URL for remote retrieval, but it does not present an explicit privacy warning or consent checkpoint at transmission time. In an ASR skill, this is contextually expected behavior, but the data can still contain sensitive speech, meetings, or personal information, so undisclosed external transmission is a real privacy risk.

Missing User Warnings

High
Confidence
99% confidence
Finding
The payload defaults 'user.uid' to the API key itself, causing a secret credential to be transmitted in the request body and potentially copied into downstream logs, traces, or analytics systems beyond the header already required for authentication. This unnecessarily expands secret exposure and violates key-separation principles.

Static analysis

No suspicious patterns detected.