Back to skill

Security audit

vision-fallback

Security checks across malware telemetry and agentic risk

Overview

This skill does what it claims: it sends images and optional context to a configured vision API so an agent can interpret images when its primary model cannot.

Before installing, confirm you are comfortable sending images and any supplied OCR or prior model output to the configured provider. Use OPENAI or a trusted VISION_BASE_URL if Volcengine Ark in mainland China is not appropriate for your data, and avoid using this skill on screenshots or documents containing secrets unless that disclosure is acceptable.

SkillSpector

By NVIDIA
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 (5)

Lp3

Medium
Category
MCP Least Privilege
Confidence
88% confidence
Finding
The skill invokes shell scripts and relies on environment variables for API credentials, but it does not declare corresponding permissions. This creates a trust and review gap: an agent or operator may approve the skill without realizing it can execute commands and access secrets, which increases the chance of unintended secret exposure or unsafe command execution.

Vague Triggers

Medium
Confidence
81% confidence
Finding
The trigger language is broad enough to route essentially any image-understanding task through this external API skill, including cases where the image may contain sensitive user data. Because the workflow sends image content and optional OCR/model output to a third-party endpoint, an overbroad trigger can cause unnecessary data egress and bypass more privacy-preserving alternatives or user confirmation.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The documentation explicitly states that local images, OCR text, failure reasons, and primary model output may be sent to third-party vision providers, but it does not require an explicit user notice or consent flow before disclosure. In this skill context, those inputs can easily contain sensitive personal, business, or credential-bearing data, so silent transmission to external APIs creates a real privacy and data-handling risk even if the behavior is intentional.

External Transmission

Medium
Category
Data Exfiltration
Content
| Provider | Endpoint |
|----------|----------|
| `ark` (default) | `https://ark.cn-beijing.volces.com/api/plan/v3/chat/completions` |
| `openai` | `https://api.openai.com/v1/chat/completions` |

Override with `VISION_BASE_URL` (the skill appends `/chat/completions`).
Confidence
88% confidence
Finding
https://api.openai.com/

External Transmission

Medium
Category
Data Exfiltration
Content
# --- POST ---
# SECURITY: $VF_API_KEY is the resolved key from resolve-config.sh.
# It is never logged or echoed - only used in the Authorization header.
curl -sS "$VF_ENDPOINT" \
  -H "Authorization: Bearer $VF_API_KEY" \
  -H "Content-Type: application/json" \
  -d "$PAYLOAD"
Confidence
90% confidence
Finding
curl -sS "$VF_ENDPOINT" \ -H "Authorization: Bearer $VF_API_KEY" \ -H "Content-Type: application/json" \ -d

VirusTotal

64/64 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.