Back to skill

Security audit

MiniMax Music Generation

Security checks across malware telemetry and agentic risk

Overview

This is a disclosed MiniMax music-generation skill that sends user prompts or lyrics to MiniMax and saves generated lyrics and audio locally.

Install only if you are comfortable sending prompts, lyrics, titles, and any reference-audio URLs to MiniMax using your API key. Avoid secrets, regulated data, or proprietary lyrics unless your MiniMax account and data-handling terms allow it; monitor API usage/costs; and delete generated local lyric/audio files when no longer needed.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Taint TrackingDirect Taint Flow, Variable-Mediated Taint Flow, Credential Exfiltration Chain
  • 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 (11)

Tainted flow: 'audio_url' from os.getenv (line 177, credential/environment) → requests.get (network output)

Critical
Category
Data Flow
Content
filename = f"{safe_title}_{timestamp}.mp3"
    filepath = os.path.join(save_dir, filename)

    response = requests.get(audio_url, timeout=60)
    with open(filepath, 'wb') as f:
        f.write(response.content)
Confidence
93% confidence
Finding
response = requests.get(audio_url, timeout=60)

Lp3

Medium
Category
MCP Least Privilege
Confidence
95% confidence
Finding
The skill performs network access, reads an API key from the environment, and writes files locally, but does not declare permissions. This creates a transparency and consent gap: a host system or user may treat the skill as lower-risk than it is, while it can still transmit user content to a third party and persist generated data on disk.

Missing User Warnings

Medium
Confidence
94% confidence
Finding
The skill states that lyrics and audio are automatically saved to local paths, but does not clearly warn users that generated content will persist on disk. This can expose sensitive prompts, private lyrics, or copyrighted material to other local users, backups, or later unintended reuse.

Missing User Warnings

Medium
Confidence
96% confidence
Finding
The skill description omits a clear privacy warning even though prompts and lyrics are sent to external MiniMax endpoints. Users may provide confidential or proprietary text believing processing is local, when it is actually transmitted to a third-party service.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The documentation shows user-provided prompts and lyrics being sent to a third-party API along with an API key, but it does not clearly disclose that potentially sensitive user content will leave the local environment. In an agent skill context, this can lead to unintended data exfiltration of user inputs or copyrighted/private lyrics because integrators may copy the example without adding consent, notice, or data-handling safeguards.

External Transmission

Medium
Category
Data Exfiltration
Content
API_KEY = os.getenv("MINIMAX_API_KEY")

response = requests.post(
    "https://api.minimaxi.com/v1/lyrics_generation",
    headers={
        "Authorization": f"Bearer {API_KEY}",
Confidence
89% confidence
Finding
requests.post( "https://

External Transmission

Medium
Category
Data Exfiltration
Content
### 示例 2: 续写歌词

```python
response = requests.post(
    "https://api.minimaxi.com/v1/lyrics_generation",
    headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"},
    json={
Confidence
90% confidence
Finding
requests.post( "https://

External Transmission

Medium
Category
Data Exfiltration
Content
### 示例 3: 指定标题

```python
response = requests.post(
    "https://api.minimaxi.com/v1/lyrics_generation",
    headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"},
    json={
Confidence
87% confidence
Finding
requests.post( "https://

External Transmission

Medium
Category
Data Exfiltration
Content
API_KEY = os.getenv("MINIMAX_API_KEY")

response = requests.post(
    "https://api.minimaxi.com/v1/lyrics_generation",
    headers={
        "Authorization": f"Bearer {API_KEY}",
Confidence
89% confidence
Finding
requests.post( "https://api.minimaxi.com/v1/lyrics_generation", headers={ "Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json" }, json=

External Transmission

Medium
Category
Data Exfiltration
Content
### 示例 2: 续写歌词

```python
response = requests.post(
    "https://api.minimaxi.com/v1/lyrics_generation",
    headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"},
    json={
Confidence
90% confidence
Finding
requests.post( "https://api.minimaxi.com/v1/lyrics_generation", headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}, json=

External Transmission

Medium
Category
Data Exfiltration
Content
### 示例 3: 指定标题

```python
response = requests.post(
    "https://api.minimaxi.com/v1/lyrics_generation",
    headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"},
    json={
Confidence
87% confidence
Finding
requests.post( "https://api.minimaxi.com/v1/lyrics_generation", headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}, json=

VirusTotal

66/66 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.