Back to skill

Security audit

guaikei-douyin-fetch-parse-deliver-comments

Security checks across malware telemetry and agentic risk

Overview

The skill largely performs Douyin public-data collection, but broad auto-triggering, automatic local result logs, download-capable output fields, and misleading token-error messaging need human review.

Review before installing. Use this only when you explicitly want Douyin public-data collection through guaikei.com, understand that a GUAIKEI_API_TOKEN is sent to that service, and are comfortable with full search/post/comment results being saved locally. Avoid using it for ambiguous general web searches unless the trigger rules are narrowed, and treat the documented no-contact-runtime claim as unreliable until the token/auth error paths are fixed.

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 (9)

Lp3

Medium
Category
MCP Least Privilege
Confidence
88% confidence
Finding
The skill explicitly depends on an environment variable (`GUAIKEI_API_TOKEN`) and Node execution, but the metadata shown in this file does not declare corresponding permissions/capabilities. That mismatch can cause the agent or reviewer to underestimate what the skill can access, weakening sandboxing and informed consent around secret handling.

Description-Behavior Mismatch

Medium
Confidence
93% confidence
Finding
The schema explicitly describes `video_url` as containing both playback and download addresses, which conflicts with the skill's stated scope excluding download use cases. In an agent setting, schemas influence downstream tool use and may encourage callers or orchestration layers to surface or rely on download-capable URLs, enabling functionality the manifest says should not be supported.

Description-Behavior Mismatch

Medium
Confidence
83% confidence
Finding
The CLI persists fetched comment data to a local JSON file after already printing the results, creating an additional storage side effect that may not be expected from a fetch/display command. Because comment content can contain personal data or sensitive user-generated text, local persistence increases exposure through leftover files, broader host access, and accidental retention beyond the user's immediate session.

Vague Triggers

Medium
Confidence
84% confidence
Finding
The description instructs activation even when the user does not mention Douyin, using very broad phrases like '帮我搜下' or '网上谁在讲这个'. This can cause the skill to intercept generic research requests and route user intent to a third-party scraping workflow without clear user intent or platform specificity.

Vague Triggers

Medium
Confidence
86% confidence
Finding
The generalized trigger guidance broadens activation to 'short video content research, competitor analysis, topic planning' even if Douyin is never mentioned. In agent environments, this increases the chance of unintended tool invocation, over-collection of external data, and user confusion about why a Douyin-specific scraper was selected.

Vague Triggers

Medium
Confidence
91% confidence
Finding
The skill maps very broad, everyday phrases like '搜索 / 搜一下 / 找' to execution of scraping commands. In an agent setting, this can cause unintended tool activation on ambiguous user requests, leading to unanticipated collection of Douyin data or use of a paid tokenized API without sufficiently explicit user intent.

Vague Triggers

Medium
Confidence
90% confidence
Finding
The intent-priority rules use broad keywords such as '热搜', '搜索', '找', '视频', and '博主', which overlap with normal conversation and can misclassify user intent. Because this skill performs external data retrieval and logging, accidental activation has privacy, compliance, and cost implications beyond a harmless UX issue.

Missing User Warnings

Medium
Confidence
87% confidence
Finding
The README advertises automatic export of scraped data to local JSON logs but does not prominently warn about privacy, retention, or access-control implications of storing comments, account data, and search outputs on disk. If users process sensitive or regulated content, these logs can become an untracked local data store that is easier to leak, over-retain, or mishandle.

Missing User Warnings

Low
Confidence
80% confidence
Finding
The code writes full comment results to a local JSON file without an explicit user-facing notice at the write site, which can surprise users and create silent data retention. While this overlaps with SDI-1, the specific issue is lack of transparency and consent around storing potentially sensitive comment data on disk.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Static analysis

No suspicious patterns detected.