Back to skill

Security audit

scraping-youtube-videos-by-keyword

Security checks for vulnerabilities and agentic risk

Overview

The skill is a coherent Apify YouTube scraping helper, but it includes unsafe API-token handling examples that users should review before installing.

Review this skill before installing if you plan to use the REST fallback. Prefer a supported tool or header-based authentication path that keeps APIFY_TOKEN out of URLs, shell history, logs, and process listings; store the token only in a protected environment or secret store, avoid committing .env files, and rotate the token if it has already been used in URL-based commands. Also note that the skill can collect more than keyword search results, including channel, playlist, Shorts, handle, and trending-video data.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (8)

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The skill instructs users to configure an APIFY_TOKEN but provides no guidance on secure storage, least exposure, or avoiding accidental disclosure. In agent and shell-driven workflows, missing credential-handling guidance increases the chance the token is hardcoded, echoed, committed, or otherwise exposed, enabling unauthorized use of the Apify account.

Description-Behavior Mismatch

Medium
Confidence
95% confidence
Finding
The manifest description repeatedly narrows the skill to fetching YouTube videos for a keyword or search query. However, the documented interface explicitly allows non-keyword collection modes via `startUrls`, `youtubeHandles`, and `getTrending`, which materially broaden the skill beyond search-query scraping.

External Transmission

Medium
Category
Data Exfiltration
Content
**REST API fallback:**
```bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~youtube-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchKeywords": "<query>", "maxResults": 50}'
Confidence
60% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
**REST API fallback:**
```bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~youtube-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchKeywords": "<query>", "maxResults": 50}'
```
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
**REST API fallback:**
```bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~youtube-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchKeywords": "<query>", "maxResults": 50}'
```
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
**REST API fallback:**
```bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~youtube-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchKeywords": "<query>", "maxResults": 50}'
```
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Missing User Warnings

Medium
Confidence
98% confidence
Finding
Passing APIFY_TOKEN in URL query parameters is dangerous because URLs are commonly captured in shell history, proxy logs, browser history, process listings, telemetry, and server-side access logs. If exposed, the token can be reused to run actors and access datasets under the victim's Apify account.

Description-Behavior Mismatch

Low
Confidence
86% confidence
Finding
The manifest says the skill returns title, channel name, view count, like count, comment count, duration, and publish date per video. Later documentation lists a broader output schema with extra identifiers and content fields, indicating the described return data is incomplete relative to actual behavior.

Static analysis

No suspicious patterns detected.