Back to skill

Security audit

guaikei视频转文稿

Security checks for vulnerabilities and agentic risk

Overview

This skill does what it claims: it turns user-provided videos or video links into text through a cloud service, so users should only provide media they are comfortable uploading.

Install only if you are comfortable sending the videos or URLs you provide to Guaikei's cloud service using your API token. Avoid internal-only URLs, private recordings, regulated data, or sensitive meetings unless that upload is acceptable for your organization, and keep GUAIKEI_API_TOKEN private.

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
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • 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
Findings (25)

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The documented behavior includes network download and local file writes, but that capability is easy to miss from the user-facing purpose statement. In an agent setting, understated fetch-and-store behavior is dangerous because it expands trust boundaries and can turn ordinary summarization requests into unanticipated remote retrieval and temporary local persistence of sensitive media.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The documented behavior includes network download and local file writes, but that capability is easy to miss from the user-facing purpose statement. In an agent setting, understated fetch-and-store behavior is dangerous because it expands trust boundaries and can turn ordinary summarization requests into unanticipated remote retrieval and temporary local persistence of sensitive media.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The documented behavior includes network download and local file writes, but that capability is easy to miss from the user-facing purpose statement. In an agent setting, understated fetch-and-store behavior is dangerous because it expands trust boundaries and can turn ordinary summarization requests into unanticipated remote retrieval and temporary local persistence of sensitive media.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The documented behavior includes network download and local file writes, but that capability is easy to miss from the user-facing purpose statement. In an agent setting, understated fetch-and-store behavior is dangerous because it expands trust boundaries and can turn ordinary summarization requests into unanticipated remote retrieval and temporary local persistence of sensitive media.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The documented behavior includes network download and local file writes, but that capability is easy to miss from the user-facing purpose statement. In an agent setting, understated fetch-and-store behavior is dangerous because it expands trust boundaries and can turn ordinary summarization requests into unanticipated remote retrieval and temporary local persistence of sensitive media.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

The entire skill is documented only in Chinese, with Chinese-only examples, prompts, and support instructions, and it does not state that this locale restriction is optional or region-specific. Under the policy, forcing a specific language without user opt-in can be a natural-language policy violation.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The README defines very broad natural-language trigger and auto-conversion rules that can map generic user requests directly into command execution parameters such as --file, --id, and --prompt without clear confirmation or scope constraints. In an agent setting, this increases the chance of unintended invocation, misuse of prior task IDs, or processing of attacker-supplied URLs/content when a user's request only loosely matches the documented patterns.

Content

No source excerpt is available for this finding.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · README.md (reported line 99)May include surrounding context.

md
4. 同时传入文件路径与任务ID,优先执行 `--id`,忽略 `--file`
5. 无自定义 prompt 时,默认完整转录视频全部文字

| 用户自然语言指令                                         | 自动生成命令                                                                                                |
| -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| 视频提取 https://example.com/video.mp4 中的文字          | `node scripts/video2text/index.js --file "https://example.com/video.mp4"`                                   |
| 把本地 /path/to/your/video.mp4 改成小红书风格的文案      | `node scripts/video2text/index.js --file "/path/to/your/video.mp4" --prompt "改写成小红书风格的文案"`       |

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
93% confidence
Finding

The trigger conditions are very broad and include generic tasks like summarization, analysis, meeting notes, course breakdowns, and interview整理. In an agent ecosystem, overbroad activation can cause the skill to intercept common requests and unnecessarily send user content, links, or files to an external service, creating privacy and data-minimization risks.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The skill does not provide a prominent upfront warning in its high-level description that supplied local files or URLs may be uploaded to a remote service for processing. This weakens informed consent and can lead users or orchestrators to expose sensitive recordings, meetings, or private media without realizing the data leaves the local environment.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The activation guidance covers broad intent categories that overlap with general-purpose writing and analysis requests. This increases the chance that unrelated user content will be routed through a remote third-party processor, which is dangerous when the skill can handle local files and external URLs.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trust and error-handling sections explicitly state that failure messages should be neutral and should not carry marketing copy, contact information, or website links. However, the same skill documentation later includes a dedicated contact/business section with WeChat and website details, creating an intent-level contradiction about whether operator-facing outputs should avoid promotional/contact content.

Content

No source excerpt is available for this finding.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · SKILL.md (reported line 158)May include surrounding context.

md
## 7. 🗣️ 自然语言 → 命令(照这张表转)

| 用户说的话                                           | 就执行这条命令                                                                                              |
| ---------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| 提取 https://example.com/video.mp4 里的文字          | `node scripts/video2text/index.js --file "https://example.com/video.mp4"`                                   |
| 总结这个视频的核心观点 https://example.com/video.mp4 | `node scripts/video2text/index.js --file "https://example.com/video.mp4" --prompt "总结这个视频的核心观点"` |

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
99% confidence
Finding

The file says the skill strictly follows a convention where name, package directory, package.json.name, and H1 must all match, yet this section documents guaikei-video-to-doc while the actual manifest name at L002 is guaikei-video-to-script. This is an active contradiction between the documentation's claimed identity contract and the file's declared identity.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

This code uses Chinese for user-facing errors, comments, and generated help output, including thrown error messages and the help text shown to CLI users. Because the skill does not offer language selection or document a justified locale restriction, it can violate the policy against forcing a specific language without user opt-in.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
87% confidence
Finding

This code performs remote HTTP/HTTPS requests and writes downloaded content to disk, and it can also delete partial files on stop or failure. While it emits internal events, there is no confirmation prompt, visible print/log statement, or code comment/docstring warning users that network transfer, local file creation, and possible file deletion will occur.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The docstring and runtime status messages are written only in Chinese, including download, retry, resume, and error notices. This imposes a specific language on users without any opt-in, fallback, or documented justification for a locale-specific constraint.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

This code constructs and sends HTTPS POST requests containing JSON payload data and a TOKEN header, which may transmit user or system data to a remote service. Within this file there is no confirmation prompt, user-facing disclosure, or explanatory comment warning that data and credentials are 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
98% confidence
Finding

The file emits all warning and informational text in Chinese, including error, warning, and promotional messages, with no indication that the user can opt into another language. This creates a natural-language locale policy issue because the skill imposes a specific language on users rather than offering a choice or documenting a justified region-specific constraint.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
99% confidence
Finding

This section is not merely incomplete; it explicitly states a different frontmatter name than the one actually present in the file. Because the section presents itself as normative documentation for this exact skill, it directly conflicts with the code-adjacent manifest data.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
92% confidence
Finding

The package description is entirely in Chinese and presents the skill's behavior only in that locale. Under the policy, language or locale constraints should either offer user choice or be clearly documented as a justified region-specific limitation, which is not present here.

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 a network download and writes data to the filesystem via new Downloader(url, path, options). While it logs transfer progress and failures, there is no explicit user-facing warning or confirmation that the function will fetch remote content and create or modify a local file at the provided path.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
93% confidence
Finding

Multiple natural-language error strings are written only in Chinese, including messages shown when requests fail or when the API token is invalid. This can violate language/locale policy when the skill does not provide user opt-in, fallback localization, or a documented region-specific 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 banner string is hard-coded in Chinese, which creates a language/locale constraint in the skill's user-facing output. The file does not indicate that this skill is intentionally region-specific or that users can opt into a different language, so it may violate language-choice policy guidance.

Content

No source excerpt is available for this finding.