Back to skill

Security audit

快手新闻简报GUAIKEI

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent Kuaishou public-data research tool that uses a disclosed third-party API token and saves local result logs, with no evidence of hidden execution, exfiltration, persistence, or destructive behavior.

Install this only if you are comfortable sending Kuaishou keywords, profile/video URLs, and a GUAIKEI API token to guaikei.com, and remember that successful results are saved locally under logs/ and may include public comments or account/post data.

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
  • 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
Findings (27)

Tp4

High
Category
MCP Tool Poisoning
Confidence
94% confidence
Finding

从代码看,其核心功能是一个 search-cli:解析命令行参数、校验关键词、调用 search.createSearchTask / search.getSearchTask 获取搜索结果,并输出结果 JSON。它与声明中的第(1)项“关键词搜索视频,可按点赞数、发布时间、视频时长筛选排序”是吻合的。代码未显示任何越权或额外未声明的危险能力,访问资源也与“搜索 API + token”一致。 但若严格比较“声明描述”与“该代码块实际行为”,该代码块只覆盖了整体描述中的一部分,不支持描述里强调的摘要生成、聚类、舆情分析、深度解读,也没有体现第(2)(3)项能力。因此该代码块与完整声明存在明显范围不一致,可判定为描述与实际代码行为不完全匹配。

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

该代码片段仅是一个通用 CLI 参数解析模块(parseArgs/readValueAfterFlag/buildHelp),负责处理命令行选项、参数校验和帮助文本输出。这属于底层辅助工具,而不是声明中描述的快手新闻/情报分析能力。按照评估标准,若实际代码的主要用途与声明的主要用途 materially different,则应判定为不匹配。虽然此类参数解析器可能作为完整技能的支持性组件存在,但就“所提供代码片段实际做什么”而言,它没有体现任何已声明的核心能力,因此描述与代码行为不一致。

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.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The user-facing skill title, description, triggers, instructions, and examples are entirely in Chinese, with no indication that other languages are supported or that the user can choose their preferred language. This creates a natural-language policy concern because the skill effectively imposes a specific language/locale without explicit opt-in or documented justification.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The package description advertises very broad use cases such as news search, public-opinion analysis, insight discovery, hotspot tracking, intelligence gathering, and aggregation. In agent ecosystems, overly broad activation text can cause the skill to be selected for many loosely related requests, increasing the chance of unnecessary external data access, unintended invocation, or use outside its narrowly intended scope.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% 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 collected public video, account, and comment data may be persisted on disk. This creates a data-handling risk because analysts may unknowingly store potentially sensitive or regulated content locally, increasing exposure through endpoint compromise, backups, shared workstations, or accidental redistribution.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
83% confidence
Finding

This markdown file presents all usage instructions and parameter descriptions only in Chinese. Under the policy rule for natural-language violations, forcing a specific language without user opt-in can be a violation unless the locale constraint is explicitly documented and justified, which is not present here.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The CLI writes the full comment-analysis output, including fetched comment data and request metadata, to a local JSON file by default. In a skill whose described purpose is searching and analyzing public content, undisclosed persistence expands data exposure and creates a secondary copy that may be accessed by other local users, backup systems, or later processes without the operator realizing it.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The code silently stores comment results to disk without any user-facing notice in the normal success path. Even if the source data is public, silently retaining aggregated comment datasets can surprise users and increase privacy, compliance, and operational risk, especially when comments may contain personal data or sensitive discussion context.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The CLI writes the full result payload to a local JSON file using a filename derived from user input, but it does not warn the user that fetched content will be persisted on disk. Because this skill aggregates social-media data and may include profile, post, or comment information, silent local retention increases the risk of unintended disclosure through shared machines, backups, logs, or later exfiltration by other processes.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The CLI writes the full search output, including query parameters and returned result data, to a local JSON file without any visible user opt-in, redaction, or retention control. In an agent setting, this creates unnecessary data persistence that can leak searched topics, collected content, or downstream analysis artifacts to other local users, processes, or later runs.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

This file contains natural-language comments, help text, and error messages exclusively in Chinese, including the generated help output and runtime exceptions. That enforces a specific language/locale for users of the skill without any visible opt-in or alternative, which matches the language-policy violation category.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
87% confidence
Finding

The manifest describes a Kuaishou news analysis skill centered on searching videos, fetching creator works, and analyzing comments. This utility creates directories and writes arbitrary content to local files under a logs folder, which is a behavior outside the user-facing search/analysis capabilities described in the manifest.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The file contains user-facing status and error strings in Chinese, such as the validation errors at L07 and L11, without offering any language selection or documenting that the skill is intentionally Chinese-only. This can violate a language/locale policy when users are not given an opt-in or alternative locale.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

Multiple natural-language messages returned by this module, such as 请求失败, 响应解析失败, and token 必须是非空字符串, are hard-coded in Chinese. That enforces a locale choice for all users without offering selection or documenting a justified region-specific constraint.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The postJson and getJson helpers send request parameters, JSON payloads, and a TOKEN header to a remote host via HTTPS. The file contains no confirmation prompt, logging, comment, or docstring warning users that data and credentials will be transmitted over the network.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
80% confidence
Finding

The manifest description is entirely in Chinese and presents the skill as a Chinese-language experience without stating that users may choose another language. Under the policy rule, a fixed language expectation without opt-in can be a natural-language policy concern unless clearly justified as region-specific.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
93% confidence
Finding

A language-policy finding applies when a skill forces a specific language without user opt-in. This README presents all user-facing instructions in Chinese only, with no indication of alternative language support or explicit justification for a Chinese-only locale.

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 is entirely in Chinese ("快手新闻简报GUAIKEI 更新日志"), which indicates a fixed language choice in user-facing documentation. There is no visible note offering alternative languages or explaining that the skill is intentionally region- or language-specific, so this may violate the language/locale policy for requiring a specific language without user opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
93% confidence
Finding

The file's instructional content and guardrails are presented only in Chinese, which effectively forces a specific language for users of the skill. The policy allows locale constraints only when the skill offers opt-in or clearly documents a justified region-specific reason, neither of which is present here.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
92% confidence
Finding

The skill's help text and runtime messages are presented only in Chinese, with no indication that the user can choose another language. This is a natural-language policy concern when a skill imposes a specific language or locale without explicit opt-in or documented justification.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
77% confidence
Finding

The manifest presents the skill as a Kuaishou news/search analysis capability, but does not disclose any dependency on environment-hosted credentials. Accessing process.env for GUAIKEI_API_TOKEN introduces a credential-handling capability that is not stated in the declared purpose.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The thrown error string at L21 is hard-coded in Chinese (重试${maxAttempts}次后失败). This imposes a specific language in user-visible output without offering a locale choice or documenting a justified region-specific constraint.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
96% confidence
Finding

The code emits user-visible warning and info strings only in Chinese ("警告: 你的 GUAIKEI_API_TOKEN 未正确配置" and "已使用配置的私有TOKEN"). This imposes a specific language on users without opt-in or any documented justification, which matches the language/locale policy violation criteria.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

This code contains user-facing Chinese text in the module comment and printed banner, including the product name shown to users. Under the policy, forcing a specific language without offering a choice or documenting a justified locale constraint is a natural-language policy concern.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.