Back to skill

Security audit

kuai-shou-competitor-research

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent Kuaishou public-data research tool, but users should expect it to call a third-party API and save result logs locally.

Install only if you are comfortable sending Kuaishou keywords, profile or video URLs, query parameters, and the GUAIKEI_API_TOKEN to guaikei.com. Expect fetched public-data results to be saved locally in logs, and delete those files if the research terms or outputs are sensitive.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
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 (24)

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The declared purpose is a Kuaishou public-data retrieval and analysis skill. However, the provided code does not interact with Kuaishou, network resources, APIs, web scraping, structured data extraction, or analytics. It is a reusable utility for parsing command-line arguments and generating help text. While such a utility could support a larger Kuaishou tool, this chunk by itself does not implement the described behavior. Therefore the code chunk’s actual behavior is materially different from the declared purpose.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The declared description focuses on Kuaishou public data collection and analysis features. However, this code chunk only implements a helper that validates inputs, sanitizes filenames, creates a logs directory, and writes content to a local file. Local filesystem write capability is not declared, and the behavior shown is materially unrelated to the described primary purpose. While logging can be a supporting detail in a larger skill, this specific supplied code chunk does not exhibit the described Kuaishou retrieval/analysis functionality at all.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The declared description says this skill performs Kuaishou public data collection and analysis tasks. However, the supplied code chunk does not implement any of those behaviors. It merely accesses the local filesystem to read package.json and expose the package name. That is a materially different purpose from the declared description, so this code chunk does not accurately represent the claimed functionality.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
70% confidence
Finding

Without declared permissions the skill's intent is opaque and cannot be validated.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger logic is overly broad because it treats the generic term '短视频' as sufficient to invoke a Kuaishou-specific skill. In an agent environment, this can cause accidental invocation on unrelated short-video tasks, leading to inappropriate third-party data disclosure, unnecessary token-backed API calls, and cross-platform task confusion.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The README presents all user-facing instructions in Chinese, which effectively forces a specific language for using the skill. Under the policy, language constraints should either be optional for the user or explicitly justified as region-specific; neither appears here.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
86% confidence
Finding

The CLI retrieves comment results and then persists the full output to disk via log.taskWrite, which affects user data handling and creates a local artifact. Although the code logs progress messages, there is no clear user-facing disclosure here that the command will save the fetched data to a file.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
85% confidence
Finding

The script sends the normalized profile URL, sort option, limit, and API token to external functions that create and query a remote post task. While network access is part of the apparent purpose, this file does not clearly warn users that the supplied profile data will be transmitted to an external service.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The script writes the full fetched results to a local JSON file automatically, using data derived from the target profile URL, without any explicit opt-in, warning, or control in this entrypoint. In a data-collection skill, this creates a privacy and data-governance risk because scraped content may persist on disk unexpectedly, be accessible to other local users/processes, or be retained longer than intended.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The CLI writes the full search output, including the user-supplied keyword and returned results, to a local file automatically without explicit user consent or an option to disable persistence. In a competitor-research context, these outputs may contain sensitive research terms, monitoring targets, or collected public-data records that can be unintentionally retained on shared systems, increasing the risk of local data exposure.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

This code file contains user-facing error messages, comments, and help output in Chinese only, such as the thrown parameter errors and the generated help text. Per the policy, forcing a specific language without offering the user a language or locale choice is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

This code emits user-facing error text in Chinese (and later a success message) with no indication that the skill is region-specific or that users can choose a language. That can violate a language/locale policy when the skill is expected to be generally usable across locales.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

Several user-facing error strings are only in Chinese, including operational guidance and support contact instructions. This imposes a specific language on users without offering a language choice or documenting a justified locale restriction.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
82% confidence
Finding

This code constructs and sends outbound HTTPS POST requests containing query parameters, JSON payload data, and a token header. The file provides no confirmation prompt, logging, or explanatory comment/docstring warning that user or system data may be transmitted over the network.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
80% confidence
Finding

This code builds outbound HTTPS GET requests that include query parameters and a TOKEN header, which may expose user or system metadata to an external endpoint. There is no prompt, logging, or inline documentation warning the user about this network transmission.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
83% confidence
Finding

The package description and keywords are entirely in Chinese, which can impose a language expectation on users without offering any alternative or opt-in. The policy scope includes natural-language locale or language constraints in config and metadata files, so this is a mild language-policy concern.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
92% confidence
Finding

The entire skill file is written in Chinese, including the title and changelog entries, with no indication that the user can choose another language or that the skill is intentionally limited to a Chinese-speaking or region-specific audience. This can violate a language/locale policy when a skill implicitly enforces a specific language without opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
89% confidence
Finding

This markdown file presents all instructions, parameter descriptions, and examples only in Chinese. The policy requires flagging language or locale constraints when the skill effectively forces a specific language without user opt-in or documented justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
94% confidence
Finding

The retry log string is hard-coded in Chinese, which indicates a fixed language choice in user-visible output. The file provides no option to select locale or opt in to Chinese, so this may violate a language/locale policy requiring user choice.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
94% confidence
Finding

Descriptions, examples, and status/error messages in this file are presented only in Chinese, with no indication that users can select another language or locale. This is a natural-language policy concern because it imposes a language preference without opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
94% confidence
Finding

The thrown error string is hard-coded in Chinese (重试${maxAttempts}次后失败). This imposes a specific language on users and downstream consumers of the utility without any opt-in, locale selection, or documented justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The file's comments and user-visible warning/info strings are entirely in Chinese, including operational messages shown to users. For a general-purpose utility module, this imposes a specific language/locale without any opt-in or indication that the skill is region-specific.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
86% confidence
Finding

The file contains user-facing text in Chinese, including the module description and banner label, without indicating any user choice or locale opt-in. Under the policy, forcing a specific language can be a natural-language policy violation unless the locale constraint is clearly documented and justified.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
98% confidence
Finding

This code emits multiple natural-language error strings only in Chinese, such as at L05, L10, L14, L18, L23, L50, L54, L59, and L64. Per the policy, forcing a specific language without user opt-in is a natural-language policy violation unless the locale restriction is clearly documented and justified, which is not evident in this file.

Content

No source excerpt is available for this finding.