Back to skill

Security audit

TwelveLabs Video Intelligence

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward TwelveLabs API guide for user-directed video search and analysis, with normal privacy and dependency-installation cautions.

Install this in an isolated Python environment, consider pinning `twelvelabs` to a reviewed version, and only upload videos or images you are comfortable sending to TwelveLabs and storing in your account indexes/assets.

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
SKILL.md:14
Finding

Unpinned Third-Party Dependency Installation

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 14–17 and 31–33
Vulnerability Type: Unpinned Python dependency
Risk Level: Medium

The skill declares and recommends installing the twelvelabs package without constraining it to the reviewed version:

yaml
install:
  - kind: pip
    package: twelvelabs
    label: Install TwelveLabs Python SDK (pip)
bash
python3 -m pip install twelvelabs

Technical Analysis

Although SKILL.md states that its examples target SDK version 1.2.1, the installation configuration and command do not pin that version or verify package hashes. Package resolution therefore selects whichever release the configured Python package index considers current at installation time.

This makes the installed code mutable after the skill has been reviewed. If the package publisher, distribution account, package index, or dependency chain is compromised, installation could retrieve code that differs from the audited version. No malicious package or active compromise was identified in the project itself; the finding concerns avoidable supply-chain exposure.

Attack Path

  1. An attacker compromises a future twelvelabs release, its publishing credentials, the configured package index, or a transitive dependency.
  2. A user follows the skill configuration or runs python3 -m pip install twelvelabs.
  3. The package manager resolves and downloads the compromised release because no exact version or hashes are enforced.
  4. Attacker-controlled code executes during package installation or when the SDK is imported and used.
  5. That code operates with the user's privileges and may access the TwelveLabs API key, local video files, images, or other data available to the process.

Impact Assessment

Successful exploitation could execute arbitrary code with the privileges of the user installing or running the skill. Potentially exposed resources include TWELVE_LABS_API_KEY, videos and images supplied for processing ...[truncated 187 chars]

Remediation
View remediation

Remediation Suggestions

  • Pin the dependency to the reviewed release in both metadata and setup documentation, for example:
    yaml
    package: twelvelabs==1.2.1
    
    bash
    python3 -m pip install "twelvelabs==1.2.1"
    
  • Use a reviewed lock file that pins all transitive dependencies.
  • Require cryptographic hashes during installation, such as a generated requirements file used with pip install --require-hashes.
  • Install from the intended authenticated package index and avoid untrusted mirrors or additional indexes.
  • Perform dependency vulnerability and provenance checks before updating the pinned version.
  • Run installation and skill execution in a least-privileged virtual environment or isolated container, exposing only the files and credentials required for the task.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • 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

Static analysis

No suspicious patterns detected.