Back to skill

Security audit

guaikei-douyin-search-collect-export-videos

Security checks across malware telemetry and agentic risk

Overview

This Douyin data-collection skill is mostly coherent, but it needs Review because its trigger scope, persisted outputs, and some runtime behavior are broader than the user may expect.

Install only if you intend to use a third-party guaikei.com API for public Douyin data collection. Avoid using it for generic short-video searches unless you explicitly want Douyin results, treat the API token as sensitive, and periodically review or delete the generated logs because they can contain research topics, account targets, video URLs, comments, and returned media links.

Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (10)

Lp3

Medium
Category
MCP Least Privilege
Confidence
80% confidence
Finding
The skill explicitly requires an environment variable token (`GUAIKEI_API_TOKEN`) but does not declare corresponding permissions/capabilities in a structured way. This creates a transparency and review gap: operators may invoke the skill without understanding that it consumes sensitive secrets, and secret-handling expectations are left to prose instead of enforceable metadata.

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding
The documented behavior does not fully match the actual operational surface: it sends user queries to an external third-party service, writes results to local `logs/`, and appears not to implement the claimed 'user search' capability. Behavior mismatches are dangerous because users may disclose sensitive research targets or URLs under incomplete consent, and local logging can retain potentially sensitive query history beyond the user's expectations.

Description-Behavior Mismatch

Medium
Confidence
93% confidence
Finding
The schema explicitly documents `play_addr` as both a playback URL and a video download URL, which conflicts with the skill's stated scope that it does not support downloading videos. In a data-collection skill focused on public Douyin content, exposing a download field can enable downstream clients or agents to retrieve copyrighted media directly, expanding capability beyond declared intent and increasing policy/compliance risk.

Description-Behavior Mismatch

Medium
Confidence
90% confidence
Finding
The CLI writes the full fetched comment dataset to a local JSON file after printing it, but this persistence is not apparent from the skill description or likely user expectation. Even if the source data is public, comments can contain personal data or sensitive content, and silent local retention increases privacy, data handling, and multi-tenant leakage risk on shared systems.

Description-Behavior Mismatch

Medium
Confidence
86% confidence
Finding
The CLI writes full search results to a local file named with the keyword and query parameters, creating undisclosed persistent storage beyond the manifest’s stated retrieval/analysis behavior. Even if the data is public, persisted logs can expose user research interests, collected datasets, and potentially sensitive operational context to other local users or later processes.

Vague Triggers

Medium
Confidence
88% confidence
Finding
The skill says it should trigger even when the user did not explicitly mention 'Douyin', based on broad 'short-video research' intent. Overbroad routing is risky because it can cause unrelated user requests to be sent to an external data-collection workflow, exposing prompts, keywords, or URLs to third-party processing without sufficiently specific user intent.

Vague Triggers

Medium
Confidence
90% confidence
Finding
The separate '泛化触发' rule is ambiguous and lacks clear boundaries, increasing the chance of accidental activation for ordinary content-research requests. In this skill's context, accidental activation is more concerning because execution involves external requests and local log generation, so a misfire can leak user intent and create unintended data retention.

Vague Triggers

Medium
Confidence
91% confidence
Finding
The trigger phrases are broad enough that ordinary requests like '搜一下' or '找...视频' can activate this skill even when the user did not explicitly intend Douyin data collection. In an agent setting, this can cause unintended third-party data retrieval, external API use, and local data generation without sufficiently clear user consent or platform scoping.

Vague Triggers

Medium
Confidence
94% confidence
Finding
The intent rules prioritize generic terms such as '搜索', '热点', '评论', and '账号/博主' with limited scope constraints, which increases the chance of misrouting unrelated user requests into this data-collection skill. Because the skill performs external retrieval and writes structured outputs to disk, false activation can expose users to unintended data processing and token-backed API consumption.

Missing User Warnings

Medium
Confidence
88% confidence
Finding
The README advertises automatic JSON log export but does not prominently warn that collected public data and query context will be persisted locally under the skill directory. In practice, users may not realize searches, account targets, comments, and derived datasets remain on disk, creating privacy, retention, and secondary exposure risks on shared or managed systems.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Static analysis

No suspicious patterns detected.