Trust Assessment
openai-whisper-api received a trust score of 58/100, placing it in the Caution category. This skill has some security considerations that users should review before deployment.
SkillShield's automated analysis identified 3 findings: 2 critical, 0 high, 1 medium, and 0 low severity. Key findings include Sensitive environment variable access: $OPENAI_API_KEY, Command Injection via unvalidated argument assignment, Command Injection in `mkdir` path construction.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. The LLM Behavioral Safety layer scored lowest at 40/100, indicating areas for improvement.
Last analyzed on February 18, 2026 (commit b62bd290). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings3
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| CRITICAL | Command Injection via unvalidated argument assignment The script directly assigns user-controlled command-line arguments to several variables (`in`, `model`, `out`, `language`, `prompt`) without sanitization. If these arguments contain shell command substitutions (e.g., `$(id)`), the embedded commands will be executed during the assignment process. This allows an attacker to execute arbitrary commands. For example, `transcribe.sh "$(touch /tmp/pwned)"` would create a file named `pwned` in `/tmp`. Implement strict validation for all user-provided arguments to ensure they do not contain shell metacharacters or command substitutions. For file paths, ensure they are canonicalized and do not contain `..` for directory traversal. Consider using a more robust argument parsing library or a different language for scripts handling untrusted input. | LLM | scripts/transcribe.sh:15 | |
| CRITICAL | Command Injection in `mkdir` path construction The script constructs a directory path using `mkdir -p "$(dirname "$out")"`. If the `$out` variable, which is user-controlled via the `--out` flag, contains shell command substitutions (e.g., `$(id)`), the embedded command will be executed when `dirname` is called. This provides another vector for arbitrary command execution. For example, `transcribe.sh audio.m4a --out "$(touch /tmp/pwned_mkdir)"/output.txt` would create a file named `pwned_mkdir` in `/tmp`. Sanitize the `$out` variable to ensure it's a valid file path and does not contain shell metacharacters or command substitutions before it's used in `dirname`. A safer approach would be to validate the path components or use a function that safely handles path creation. | LLM | scripts/transcribe.sh:60 | |
| MEDIUM | Sensitive environment variable access: $OPENAI_API_KEY Access to sensitive environment variable '$OPENAI_API_KEY' detected in shell context. Verify this environment variable access is necessary and the value is not exfiltrated. | Static | skills/openai-whisper-api/scripts/transcribe.sh:59 |
Scan History
Embed Code
[](https://skillshield.io/report/407c53476dce3b14)
Powered by SkillShield