Back to skill

Security audit

GUAIKEI快手社媒内容整理

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed Kuaishou public-data collection tool that uses a third-party API token and saves results locally, with no evidence of hidden or destructive behavior.

Install only if you are comfortable sending Kuaishou keywords, URLs, and an API token to GUAIKEI's service and storing returned public social-media data in local logs. Review your authorization, privacy obligations, and log retention needs before using high limits or collecting comments at scale.

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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • 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 (26)

Tp4

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding

声明描述的是一个面向快手平台的数据采集与分析技能,而提供的代码片段只是本地日志保存模块。它使用 Node.js 的 fs/path 在本地 logs 目录创建并写入文件,属于辅助性日志功能,但从当前代码本身看,其实际行为与声明的核心能力完全不一致。该片段没有网络请求、页面抓取、API 调用、数据解析、结构化输出、搜索筛选或评论分析等任何实现。因此就“该代码块实际做什么”而言,和声明用途存在明显不匹配。

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The declared description presents a full-featured Kuaishou data acquisition and analysis skill. However, the supplied code chunk contains only a small utility that reads package.json from the local filesystem and returns the package name. There is no logic for accessing Kuaishou, making network requests, processing video metadata, retrieving comments, or performing any of the three declared capabilities. This is a material mismatch between the declared purpose and the actual behavior of the provided code.

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.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The manifest explicitly markets collection of platform records, publication metadata, and comment interaction data, but provides no warning about privacy implications, lawful basis for collection, retention, or downstream handling of potentially personal data. In a skill focused on scraping and organizing social-platform content at scale, omission of privacy and data-handling disclosures increases the risk of misuse, non-compliant deployment, and collection of personal or sensitive user-generated content without adequate safeguards.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The script writes the full comment retrieval results, including comment content and associated metadata, to a local JSON file without any visible disclosure, opt-in, retention control, or minimization. Because this skill processes social-media interaction data that may include personal information, persistent local storage increases privacy and data exposure risk if the host system is shared, compromised, or backed up to other systems unexpectedly.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The CLI saves fetched comment data to disk automatically, but this script does not provide an explicit warning or confirmation before creating a persistent local record. In the context of collecting public comments at scale, silent storage can violate user expectations and increase the chance of unintended accumulation of sensitive or regulated data.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The CLI help text, validation errors, progress messages, and completion messages are all hard-coded in Chinese. This imposes a specific language on all users without any visible opt-in, language selection mechanism, or documented justification for a locale-specific skill in this file.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The manifest describes real-time acquisition and structuring of Kuaishou data for analysis, but this CLI additionally persists the full result to disk via log.taskWrite. Local retention of collected social-media data is a distinct operational behavior that is not disclosed in the skill description.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The tool stores full search results to a local JSON file without explicit runtime disclosure or consent in the execution flow. Because results may include comment content and engagement data, this can create unintended local retention of potentially sensitive or regulated data on shared systems, increasing exposure through later access, backup, or misuse.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

Multiple error messages shown to users are fixed in Chinese, such as 请求失败 and 环境变量-related guidance, with no mechanism to choose locale or fall back based on user preference. That can violate language/locale policy when the skill is expected to work for broader audiences without explicit opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

This code presents all validation errors in Chinese string literals, which imposes a specific language on users without any visible opt-in or locale selection. Under the stated policy, forcing a language without user choice is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
80% confidence
Finding

This code performs an outbound HTTP POST using the provided url, limit, and token, which transmits user or system data to an API endpoint. While retry errors are logged, there is no confirmation prompt, user-facing notice, or explanatory comment/docstring in this file describing that this data will be sent over the network.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
76% confidence
Finding

This function makes an outbound HTTP GET request that includes the supplied url, limit, and authentication token. The file logs retry failures but does not provide any user-facing warning, prompt, or explanatory documentation that these values are transmitted to a remote service.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
81% confidence
Finding

This code sends user-supplied data (url, sort, limit) and an authentication token through HTTP helper functions, but there is no confirmation prompt, warning comment, or user-facing disclosure associated with the outbound transmission here. Because the operation involves transmitting potentially sensitive user or system data, it should be disclosed unless clearly covered elsewhere in the skill's description.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
82% confidence
Finding

This code sends user-provided search terms and an auth token to remote API endpoints via postJson/getJson, which is a data-transmitting operation. There is retry logging for failures, but no confirmation prompt, disclosure, or explanatory comment/docstring warning that user input and credentials are being sent over the network.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
78% confidence
Finding

The manifest explains Kuaishou record retrieval and analysis features, but does not indicate any need to access local process environment for credentials. While likely an implementation detail for backend access, credential harvesting from environment state is not part of the stated skill purpose.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
86% confidence
Finding

The script persists output to disk via log.taskWrite, storing the full finalOutput object, which includes the requested profile URL and returned results. Although file output may be part of the tool's behavior, this file does not include a confirmation prompt or explicit user-facing warning that a local JSON file will be created.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
79% confidence
Finding

The manifest describes keyword search, creator work collection, and comment analysis on Kuaishou data, but does not mention accessing environment-based credentials. While authentication may be operationally necessary, reading process environment secrets is a broader capability than the user-facing data-analysis purpose itself.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

The manifest emphasizes fetching Kuaishou records and organizing them into structured results for analysis, which is satisfied by the JSON output on stdout. However, this file also unconditionally writes the full search output to a local file via log.taskWrite, adding persistent local storage behavior that is not described in the skill's stated capabilities.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
96% confidence
Finding

This JavaScript file contains multiple natural-language strings for errors, warnings, and help output exclusively in Chinese, such as the module description and CLI help text. Because the skill does not offer any language/locale choice or explain that it is intentionally Chinese-only, it violates 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
98% confidence
Finding

This code emits all user-facing status and error messages in Chinese, including validation errors and success/failure notices. Under the policy rule, forcing a specific language without offering user choice or documenting a justified locale restriction is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
82% confidence
Finding

This code constructs outbound HTTPS requests using caller-supplied params and data, including query-string values and JSON bodies, and sends them to a remote host. There is no confirmation prompt, log/print disclosure, or inline warning explaining that user or system data may be transmitted off-host.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
81% confidence
Finding

The function serializes params into the URL query string and sends them over HTTPS to the configured remote service. The code contains no visible confirmation, logging, or explanatory comment indicating that supplied data is transmitted externally.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
97% confidence
Finding

The thrown error string at L21 is written only in Chinese (重试${maxAttempts}次后失败). This imposes a specific language in a user-visible message without any indication of locale selection, opt-in, or documented justification, which matches the language/locale policy violation category.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

This code emits user-visible warning and info messages only in Chinese ("警告: 你的 GUAIKEI_API_TOKEN 未正确配置" and "已使用配置的私有TOKEN"). The policy requires avoiding forced language or locale constraints unless the skill offers user opt-in or clearly documents that it is region/language specific.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.