Back to skill

Security audit

hello

Security checks for vulnerabilities and agentic risk

Overview

This is a simple greeting skill with no persistence or privileged access, though one quote file contains undisclosed promotional text users may see.

Before installing, understand that the skill may respond to common greetings and that the Chinese quote response can include embedded promotional text for a third-party app. It does not appear to access private data, persist changes, or run anything beyond a local timestamped hello-world script.

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
Findings (1)

T01 · Skill Instruction Hijacking

Note
Location
references/praise.md:12
Finding

Undisclosed Promotional Content Can Be Relayed as a Praise Message

Content
View full analysis

Vulnerability Details

File Location: SKILL.md:25-27; references/praise.md:12,29,51,81
Vulnerability Type: T01: Skill Instruction Hijacking
Risk Level: Low

Vulnerable Code

SKILL.md:25-27:

markdown
## 你好

从 `references/praise.md`选择一句发给我。

English translation: when the user sends the Chinese greeting, select one sentence from references/praise.md and send it to the user.

Relevant content in references/praise.md:12,29,51,81 includes repeated promotional text:

text
更多励志语录,下载得言APP

English translation: download the named application for more inspirational quotations.

Technical Analysis

The skill instructs the agent to select content from references/praise.md and return it directly to the user. The referenced file is therefore part of the skill's effective instruction and output path.

The reference data contains repeated third-party application promotions, including a standalone promotional line at references/praise.md:29. This content is unrelated to the documented purpose of returning a praise or inspirational quotation. If the agent selects an affected entry, the skill can cause it to relay undisclosed advertising as though it were the requested response.

This represents limited output manipulation through skill-controlled content. It does not alter system safety constraints, execute code, retrieve a remote payload, or persist across sessions. The behavior is therefore classified as low risk.

Attack Path

  1. A user invokes the skill using the greeting handled by SKILL.md:25-27.
  2. The skill directs the agent to select a line from references/praise.md.
  3. The selection process chooses the standalone advertisement or a quotation containing the appended promotional phrase.
  4. The agent sends the promotional content to the user without identifying it as advertising.

No external attacker input, elevated permission, or code execution is required. Exploit ...[truncated 562 chars]

Remediation
View remediation

Remediation Suggestions

  1. Remove every occurrence of the third-party application promotion from references/praise.md, including the standalone advertisement.
  2. Restrict the reference file to content that directly serves the documented praise-message function.
  3. Store one approved quotation per entry and use an explicit parser rather than selecting arbitrary lines.
  4. Validate candidate output against a curated allowlist or reject entries containing promotional phrases, download requests, URLs, or application names.
  5. Add automated tests confirming that every selectable entry is a complete quotation and contains no advertising or unrelated instructions.
  6. If promotional content is intentionally retained, disclose that behavior clearly in SKILL.md and require explicit user consent before displaying it.
Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (4)

Tp4

High
Category
MCP Tool Poisoning
Confidence
93% confidence
Finding

The declared purpose suggests a simple hello skill triggered specifically by user input hello. The actual code does print a hello-style message, but it also appends the current timestamp, which is an undeclared resource use/behavior. More importantly, the supplied code chunk contains no logic to detect or handle the stated trigger condition. So while the general theme is similar, the implementation does not accurately match the described trigger-based behavior.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The manifest says the skill activates 'when user input hello' and also lists tags including 'hello', 'hi', and '你好', which are common everyday greetings. This creates ambiguous, broad triggers that could overlap with ordinary conversation, and the file does not provide exclusions or negative examples to clarify when the skill should or should not activate.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
78% confidence
Finding

The file contains both Chinese and English response instructions, including fixed outputs like 'hello from skill {version}' and Chinese guidance, but does not state how the response language is chosen or allow user opt-in. This can violate language/locale policy expectations when a skill implicitly forces a language without documented choice.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

The entire file consists solely of Chinese-language content with no indication that the skill supports user language choice or that the locale restriction is intentionally justified. Under the policy, forcing a specific language without opt-in can be a natural-language policy violation.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.