Back to skill

Security audit

douyin-public-data-fetcher-guaikei

Security checks across malware telemetry and agentic risk

Overview

This skill appears to fetch the Douyin data it advertises, but it needs Review because it can bulk-collect public user/comment data and saves full results locally by default with weak user control and some disclosure mismatches.

Install only if you are comfortable sending Douyin search terms, profile/video URLs, and the GUAIKEI_API_TOKEN to guaikei.com, and with complete fetched results being saved under the skill's local logs directory. Review or delete those logs after use, avoid sensitive research targets unless retention is acceptable, and prefer explicit Douyin-specific user requests before running it.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • 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
Findings (10)

Lp3

Medium
Category
MCP Least Privilege
Confidence
76% confidence
Finding
The skill explicitly uses an environment variable for authentication (`GUAIKEI_API_TOKEN`) but the metadata does not declare corresponding permissions/capabilities. This creates a transparency and review gap: operators may not realize the skill depends on secret material, which weakens least-privilege review and can lead to unsafe deployment assumptions.

Tp4

High
Category
MCP Tool Poisoning
Confidence
88% confidence
Finding
The skill claims minimal file access and says it does not read or write user private files, yet it also states that logs are automatically saved to a local `logs/` directory. If request/response payloads, URLs, comments, or user queries are written there, public-data collection can silently become local data retention, increasing privacy, compliance, and secret-spillage risk if tokens or sensitive results are ever logged.

Description-Behavior Mismatch

Medium
Confidence
87% confidence
Finding
The CLI writes fetched comment results to a local JSON file, which is broader data handling than the user-facing description suggests and may persist potentially sensitive or regulated content without explicit user consent. Because comments can contain personal data, usernames, or other sensitive text, local persistence increases exposure through unintended retention, later reuse, or access by other local users/processes.

Description-Behavior Mismatch

Medium
Confidence
91% confidence
Finding
The code writes the full fetched results to a local JSON file after completing the query, even though the skill is described as a fetch/search tool rather than a persistence tool. This creates a data-retention side effect that may store scraped content or identifiers on disk without clear user consent, increasing exposure if the host is shared, monitored, or later compromised.

Vague Triggers

Medium
Confidence
83% confidence
Finding
The instruction to use this skill even when the user does not mention Douyin broadens invocation beyond clear user intent. That can cause unintended routing of generic research requests to an external data-fetching tool, resulting in unnecessary third-party queries, over-collection, or confusion about which platform's data is being accessed.

Vague Triggers

Medium
Confidence
84% confidence
Finding
The invocation guidance repeats that the skill should be used even without explicit mention of Douyin, making the trigger logic ambiguous and overly aggressive. In practice this can misroute unrelated short-video or general content-research requests, causing unintended external calls and collection from the wrong platform.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The README states later that output is automatically saved under a local logs directory, including search results, creator post data, and video comments, but the quick-start and overview sections do not prominently warn users about this default data export behavior. Because the skill processes scraped public-platform data and comment content, users may unintentionally store potentially sensitive or regulated data locally, increasing privacy, retention, and accidental disclosure risk.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The changelog explicitly adds support for bulk collection of an author's published works and retrieval of video comments, but provides no accompanying constraints, privacy notice, or guidance on lawful and proportionate use. In the context of a data-fetching skill aimed at content research and competitor analysis, this omission can facilitate misuse for large-scale profiling, surveillance, or platform-abusive scraping.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
This file silently saves fetched results to a local JSON file without a user-facing warning or confirmation. Because the skill processes public-platform data at user request, undisclosed local persistence is more dangerous in this context: users may reasonably expect a transient query, not creation of local artifacts containing potentially sensitive research targets, comments, or account data.

Missing User Warnings

Medium
Confidence
86% confidence
Finding
The CLI persists the full search output to a local file, and the filename also embeds the user-provided keyword. Search terms and returned Douyin data may contain sensitive research topics, user identifiers, or other collected public-profile data, creating unintended local data retention and exposure to other local users, backups, or log collectors. In this skill context, the risk is somewhat elevated because the tool is explicitly used for content research, competitor analysis, and comment/public-opinion collection, which can produce sensitive operational or profiling data even if the source content is public.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Static analysis

No suspicious patterns detected.