Back to skill

Security audit

guaikei-kuaishou-user-profile-fetcher

Security checks for vulnerabilities and agentic risk

Overview

This is a disclosed Kuaishou public-data retrieval skill that sends user queries to GuaiKei and saves results locally, with no evidence of hidden execution or unrelated data access.

Before installing, be comfortable sharing Kuaishou keywords, video/profile URLs or IDs, request parameters, and the GUAIKEI_API_TOKEN with www.guaikei.com. Review and delete the local logs directory when results may contain sensitive business research, personal data from public comments, or data you do not want retained on disk.

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
  • 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
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (28)

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

If the implementation materially differs from the declared purpose and instead mainly performs local package inspection, that discrepancy undermines trust and can conceal unexpected behavior from users and agent frameworks. In security-sensitive toolchains, unexplained hidden local file access is dangerous because it may be used to fingerprint the environment or stage broader abuse.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

If the implementation materially differs from the declared purpose and instead mainly performs local package inspection, that discrepancy undermines trust and can conceal unexpected behavior from users and agent frameworks. In security-sensitive toolchains, unexplained hidden local file access is dangerous because it may be used to fingerprint the environment or stage broader abuse.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

If the implementation materially differs from the declared purpose and instead mainly performs local package inspection, that discrepancy undermines trust and can conceal unexpected behavior from users and agent frameworks. In security-sensitive toolchains, unexplained hidden local file access is dangerous because it may be used to fingerprint the environment or stage broader abuse.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
84% confidence
Finding

The skill requires access to the sensitive environment variable GUAIKEI_API_TOKEN but does not declare an explicit tool scope such as permissions or allowed-tools. This weakens least-privilege controls and makes it easier for an agent runtime to expose broader capabilities than the skill actually needs, especially for a third-party integration that sends data externally.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The natural-language instructions, triggers, warnings, and usage guidance are presented only in Chinese. Under the policy, forcing a specific language without user opt-in or a clearly justified region-specific constraint is a violation, and this file does not offer an alternative language or explain that the skill is limited to Chinese-speaking users.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The skill documentation is entirely written in Chinese and does not indicate that other languages are supported or that Chinese is a deliberate, justified regional limitation. Under the policy, forcing a specific language without user opt-in 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
89% confidence
Finding

This markdown file presents all usage instructions, parameter descriptions, and examples only in Chinese. That can violate a language/locale policy when users are not given an explicit choice or told that the skill is intentionally limited to Chinese-speaking contexts.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

This code performs network operations via postJson and getJson, sending the provided URL and token to remote API endpoints. Although retry errors are logged, there is no confirmation prompt, comment, docstring, or other user-facing disclosure in this file indicating that user/system data and credentials are transmitted over the network.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The command description, examples, and runtime messages are presented only in Chinese, which enforces a specific language/locale for users without opt-in or alternative selection. Under the policy, language constraints should either offer user choice or be clearly justified as region-specific.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The script sends the supplied profile URL and query parameters to external API functions to create and fetch a remote task, but this file does not explicitly disclose that transfer at execution time. In a data-fetching skill this network behavior is expected, yet undisclosed transmission of user-supplied identifiers and query choices to a third-party service can create privacy, compliance, and consent issues.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The CLI writes the full task output to a local JSON file using a filename derived from user input, but this file does not disclose that persistence to the user. Because the results likely contain profile/work data and request metadata, this creates an unannounced local data-retention channel that can expose sensitive or regulated data to other local users, backups, or later compromise.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
83% confidence
Finding

This code creates and fetches a remote search task using an API token, which implies the user's search keyword and filters are sent over the network. While the help text mentions that the token must be configured, it does not clearly warn that user-provided query data will be transmitted to an external service.

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 comments, error strings, and generated help text entirely in Chinese, including thrown errors and CLI usage output. Under the stated policy, forcing a specific language without offering a user-selectable locale or documenting a justified locale constraint is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

This code builds and sends an HTTPS POST request containing JSON payload data and a TOKEN header, which can transmit user or system data to a remote service. Although the behavior is implemented directly, there is no confirmation prompt, user-visible logging, or explanatory comment/docstring in this file warning that outbound data and credentials are being sent.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

The GET helper includes a TOKEN header in outbound requests, which means credential material is used and transmitted to an external endpoint. This file does not provide any user-facing notice, prompt, or explanatory comment/docstring disclosing that authentication data is being sent over the network.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

This JavaScript file contains multiple user-facing error strings in Chinese, beginning at L05 and continuing through the validation messages. Under the policy rule, forcing a specific language without user opt-in or justification is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

The description and keywords are entirely Chinese-language, which may impose a specific language/locale on users without stating that the skill is Chinese-only or offering an alternative. The policy allows locale constraints when clearly documented and justified, but this manifest does not explicitly explain that limitation.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
93% confidence
Finding

The README states that all task results are automatically saved to the local logs directory, but it does not clearly warn users that fetched comments, account links, and analysis outputs may contain sensitive business research or personal data and will persist on disk. This can lead to unintended retention, local disclosure, or accidental sharing of scraped data, especially on shared workstations or when logs are later bundled, synced, or committed.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
89% confidence
Finding

The file title and all changelog content are written entirely in Chinese, which can amount to an implicit language constraint for users reviewing the skill documentation. There is no indication that the skill is region-specific or that users may choose another language, so this appears to violate the language/locale policy criterion.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

The error strings shown to users are written only in Chinese, with no indication that language selection is configurable or user-chosen. This can violate language/locale policy when a skill forces a specific language without opt-in or documented justification.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

This code persists the fetched comment results to disk via log.taskWrite, which is a file-write operation affecting local user/system data. Although the CLI prints status messages about fetching comments, there is no nearby user-facing disclosure, confirmation, or comment/docstring indicating that results will also be saved to a file.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

The manifest description focuses on fetching/searching Kuaishou data such as keyword search, creator works, comments, and analytics. In addition to returning search results, this file writes the full output to disk via log.taskWrite, which is extra behavior not described in the manifest and goes beyond pure retrieval.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
97% confidence
Finding

The user-facing error strings are hard-coded in Chinese ("日志文件名必须是非空字符串", "日志内容必须是非空字符串"), which imposes a specific language in runtime interactions. The policy allows locale constraints only when users are given a choice or the restriction is explicitly justified, neither of which is present in this file.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
97% confidence
Finding

The success and error messages shown to users are fixed in Chinese ("已保存到", "日志写入失败") with no indication that the user can choose another language. This is a natural-language policy concern because it forces a locale rather than offering a documented or configurable language choice.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

Multiple user-visible error strings are hard-coded in Chinese, including credential and network failure messages. This imposes a specific language on users without any opt-in, fallback, or documented justification, which fits the language/locale policy violation criteria.

Content

No source excerpt is available for this finding.

Static analysis

Detected: suspicious.exposed_secret_literal

File appears to expose a hardcoded API secret or token.

Critical
Code
suspicious.exposed_secret_literal
Location
SKILL.md:15