Back to skill

Security audit

Video Captions

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent video-captioning guide with local defaults and clearly disclosed optional cloud transcription examples.

Use the default local Whisper workflow for private or regulated recordings. Only use AssemblyAI or Deepgram after confirming you are allowed to send that audio to the provider, and consider installing Python tools in a virtual environment with reviewed or pinned versions.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
engines.md:9
Finding
Unpinned Third-Party Python Dependencies## Vulnerability Details **File Location**: `engines.md`, lines 9, 34, 44, and 65 **Vulnerability Type**: Supply-chain exposure through unpinned package installation **Risk Level**: Medium ### Vulnerable Code ```bash # engines.md:9 pip install openai-whisper # engines.md:34 pip install mlx-whisper # engines.md:44 pip install whisper-timestamped # engines.md:65 pip install stable-ts ``` ### Technical Analysis The documented installation commands retrieve third-party Python packages without fixed versions, integrity hashes, a lockfile, or an isolated environment. Consequently, the installed artifacts and transitive dependency graph can change after this Skill has been audited. Python package installation may execute package-controlled build or installation logic. If a package publisher account, package release, dependency, or configured package index is compromised, following these commands could execute code that was not present during the audit. The absence of integrity verification also prevents users from confirming that downloaded artifacts match reviewed versions. This is a supply-chain hardening issue. The audit found no evidence that the named packages are currently malicious. ### Attack Path 1. An attacker compromises a referenced package, one of its transitive dependencies, its publisher account, or the package index used by the victim. 2. The attacker publishes a malicious release that remains compatible with the unconstrained package name. 3. A user follows one of the documented `pip install` commands. 4. `pip` resolves the attacker-controlled release because no reviewed version or artifact hash is required. 5. Malicious package build, installation, import, or runtime logic executes with the permissions of the user running the command. 6. That code can access resources available to the process, including local media supplied for transcription and credentials present in the environment. ### Impact Assessment Successful exploitation could p ...[truncated 530 chars]
Remediation
## Remediation Suggestions - Replace unconstrained package commands with exact versions that have been reviewed, for example `package==X.Y.Z`. - Publish a locked requirements file containing all direct and transitive dependencies. - Include cryptographic hashes and install with `pip install --require-hashes -r requirements.txt`. - Regularly regenerate and review the lockfile through a controlled dependency-update process. - Document the canonical package index and avoid untrusted extra indexes or dependency sources. - Recommend installation in a dedicated virtual environment rather than the system Python environment. - Add automated dependency and provenance scanning to the release process. - Where available, verify package signatures or attestations and retain a trusted artifact mirror.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (3)

Missing User Warnings

Medium
Confidence
96% confidence
Finding
The file recommends cloud transcription services and provides ready-to-use commands that upload media to third-party providers, but it does not clearly warn that video/audio content leaves the local machine and may contain sensitive or regulated data. In a captioning skill, users may process private meetings, interviews, or customer content, so omission of a privacy warning can mislead users into unsafe handling of sensitive media.

External Transmission

Medium
Category
Data Exfiltration
Content
```bash
# Requires DEEPGRAM_API_KEY
curl -X POST "https://api.deepgram.com/v1/listen?model=nova-2" \
  -H "Authorization: Token $DEEPGRAM_API_KEY" \
  -H "Content-Type: audio/mp4" \
  --data-binary @video.mp4
Confidence
94% confidence
Finding
This command sends the contents of video.mp4 to Deepgram over the network using --data-binary, which is an explicit external transmission of potentially sensitive media. In the context of a captioning skill, such uploads are expected functionality, but they still create real confidentiality and compliance risk if users are not clearly informed or if sensitive recordings are processed without approval.

External Transmission

Medium
Category
Data Exfiltration
Content
```bash
# Requires DEEPGRAM_API_KEY
curl -X POST "https://api.deepgram.com/v1/listen?model=nova-2" \
  -H "Authorization: Token $DEEPGRAM_API_KEY" \
  -H "Content-Type: audio/mp4" \
  --data-binary @video.mp4
Confidence
94% confidence
Finding
This command sends the contents of video.mp4 to Deepgram over the network using --data-binary, which is an explicit external transmission of potentially sensitive media. In the context of a captioning skill, such uploads are expected functionality, but they still create real confidentiality and compliance risk if users are not clearly informed or if sensitive recordings are processed without approval.