Back to skill

Security audit

youtube-transcript-native-node

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed YouTube caption extractor that uses yt-dlp, with a limited privacy caveat around forwarding full video URLs.

Install only if you are comfortable using a local yt-dlp binary to contact YouTube for the supplied video. Avoid private/client-sensitive videos and strip tracking, token, or other sensitive query parameters from YouTube URLs before using JSON or downstream logging.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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)

T09 · Insecure Skill Coding Practices

Warning
Location
scripts/fetch.mjs:517
Finding

Unnecessary Query Parameters in Valid YouTube URLs Are Forwarded to a Networked Process

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 81)May include surrounding context.

md
Script: `scripts/fetch.mjs`

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 158)May include surrounding context.

md
Script: `scripts/fetch.mjs`

Credential Access

High
Category
Privilege Escalation
Confidence
60% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · scripts/self-test.mjs (reported line 22)May include surrounding context.

js
function runFetch(args, env = process.env) {
  const fixtureScript = env.YOUTUBE_TRANSCRIPT_SELFTEST_FIXTURE_ARG || "";
  const childEnv = { ...env };
  delete childEnv.YOUTUBE_TRANSCRIPT_SELFTEST_FIXTURE_ARG;
  const fetchArgs = fixtureScript ? ["--self-test-fixture", fixtureScript, ...args] : args;
  return spawnSync(process.execPath, ["scripts/fetch.mjs", ...fetchArgs], {

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
88% confidence
Finding

The skill explicitly describes capabilities to access the network via yt-dlp and to expose selected environment state to a child process, but it does not declare an explicit tool/permission scope such as permissions or allowed-tools. That creates a governance gap: callers or reviewers may not get enforceable policy boundaries for network and environment access, increasing the chance of unintended invocation in sensitive contexts.

Content

No source excerpt is available for this finding.