Back to skill

Security audit

guaikei-douyin-public-data-fetcher

Security checks across malware telemetry and agentic risk

Overview

The skill mostly matches its public Douyin research purpose, but it has broad activation rules, automatic local data retention, and a few documentation/runtime mismatches users should review before installing.

Install only if you are comfortable sending Douyin keywords, URLs, and your GUAIKEI_API_TOKEN to guaikei.com, and with fetched results being saved locally under logs by default. Use it for explicit Douyin public-data research, avoid ambiguous generic searches, and review or delete generated log files when they contain comments, profile identifiers, or other personal public data.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (10)

Tp4

High
Category
MCP Tool Poisoning
Confidence
82% confidence
Finding
The skill claims one behavior but also states that outputs are automatically written to a local `logs/` directory, which expands data handling beyond simple transient API fetching. That mismatch can mislead operators about retention of potentially sensitive research data, and the overstated 'user search' and 'comment analysis' capabilities increase the risk of unsafe reliance on incomplete or misunderstood functionality.

Description-Behavior Mismatch

Medium
Confidence
95% confidence
Finding
The schema explicitly documents `video_url` as both a playback address and a download address, which conflicts with the skill metadata stating it does not support downloading videos. This creates a capability/expectation mismatch that can enable downstream agents or users to use the skill for prohibited download workflows, increasing compliance and abuse risk even though the data is public-facing.

Description-Behavior Mismatch

Medium
Confidence
95% confidence
Finding
The schema explicitly documents `play_addr` as both a playback URL and a video download address, which conflicts with the skill metadata stating it does not support downloading videos. In this context, that discrepancy can enable downstream agents or integrators to expose or automate download behavior that the declared scope is supposed to forbid, creating policy/compliance and misuse risk.

Description-Behavior Mismatch

Medium
Confidence
88% confidence
Finding
The code writes fetched post results to a local JSON file via log.taskWrite after completing the request. This creates persistent local copies of potentially sensitive research data without clear disclosure in a fetch-oriented skill, increasing exposure through unintended retention, later access by other local users/processes, or accumulation of scraped data beyond user expectations.

Vague Triggers

Medium
Confidence
76% confidence
Finding
The generalized trigger allows the skill to activate for broad 'short-video research' requests even when the user did not mention Douyin, increasing the chance of unintended tool invocation and unnecessary transmission of user queries to an external API. Over-broad routing is dangerous because it can cause data disclosure to third-party services and produce results from the wrong platform or context without explicit user consent.

Vague Triggers

Medium
Confidence
88% confidence
Finding
The natural-language mapping includes very generic phrases such as '搜索 / 搜一下 / 找' that can match ordinary user requests with minimal Douyin-specific context. In an agent environment, this can cause unintended invocation of a data-fetching skill, leading to unnecessary external API calls, unexpected data collection, or handling of user requests in the wrong tool context.

Vague Triggers

Medium
Confidence
91% confidence
Finding
The competitor-monitoring triggers include broad phrases like viewing a creator's homepage, account, or works, which can apply to many benign browsing requests unrelated to Douyin scraping. This increases the chance the agent invokes bulk collection functionality without clear user intent, potentially causing over-collection of public profile/content data and surprising the user.

Missing User Warnings

Medium
Confidence
84% confidence
Finding
The README advertises automatic JSON log/export generation but does not prominently warn that fetched public content, comments, and analysis outputs are persisted to local files by default. Users may unknowingly store potentially sensitive or regulated data on disk, increasing risks of unintended retention, local exposure, or later redistribution.

Missing User Warnings

Medium
Confidence
89% confidence
Finding
The CLI persists fetched comment data to a local JSON file automatically after successful execution, but there is no explicit user consent, warning, or option to disable persistence. Even though the source is public Douyin data, comments can still contain personal data, usernames, or sensitive discourse, and silently storing them increases the risk of unintended retention, local disclosure, or mishandling on shared systems.

Missing User Warnings

Medium
Confidence
91% confidence
Finding
Fetched post results are silently written to a local JSON file without an explicit user-facing warning in this file. In a skill meant for public data retrieval, undisclosed persistence changes the privacy and security posture because users may assume transient processing while the tool actually leaves durable artifacts on disk that can be accessed later.

VirusTotal

58/58 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.