Back to skill

Security audit

ecommerce-customer-service-pro

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent Chinese e-commerce customer-service writing skill with no code execution, persistence, credential handling, or hidden system access, though one sales template should be used carefully.

Reasonable to install for Chinese-language e-commerce customer-service drafting. Before using generated messages with customers, verify live stock, gifts, promotions, prices, delivery times, refund rules, and platform policy details, especially in the payment-reminder template.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (1)

T09 · Insecure Skill Coding Practices

Warning
Location
references/output-templates.md:115
Finding

Payment Reminder Template Can Assert Unverified Commercial Availability

Content
View full analysis

Vulnerability Details

File Location: references/output-templates.md:115-119
Vulnerability Type: Unverified commercial claim caused by an unsafe message template
Risk Level: Medium

Vulnerable Code Segment

The following is an English translation of the complete affected source segment:

markdown
## 7. Payment Reminder Template

Hello. The [promotion/inventory/gift] for the [product name] you viewed is currently still available. We noticed that you added the item to your cart or placed an order but have not completed payment.
If you still have questions about the [specification/flavor/color/version], feel free to ask me and I will help you confirm it quickly.
If needed, I can also help you review which available choice is most suitable for you.

Technical Analysis

The template presents the continued availability of a promotion, inventory, or gift as an established fact. Its placeholders indicate which value should be inserted, but they do not require the Agent to verify that value against an authoritative source.

This behavior conflicts with the safeguards in SKILL.md, particularly the requirements not to fabricate inventory, promotions, gifts, or other commercial policies and to use conservative placeholders when facts are unavailable. It also conflicts with the safer payment-reminder guidance in references/scene-playbooks.md:38-47, which avoids making an availability assertion.

Because templates are intended to be copied directly into customer communications, an Agent may reproduce the assertion even when the user has not supplied verified availability information. The issue is classified as an insecure Skill configuration practice because contradictory instructions can cause unsafe output despite the Skill's broader anti-fabrication rules.

Attack Path

  1. A user requests a payment-reminder message for a customer who has not completed a purchase.
  2. The Agent selects the payment-r ...[truncated 1261 chars]
Remediation
View remediation

Remediation Suggestions

  1. Replace the factual availability assertion with verification-gated wording, for example:

    markdown
    Hello. We noticed that you viewed or added [product name] to your cart. Current promotion, inventory, and gift availability is subject to the real-time information shown on the product or checkout page. If you share what you currently see, I can help you verify it.
    
  2. Add an explicit prerequisite stating that availability language may only be used when the merchant has supplied a current, authoritative source.

  3. Provide separate template branches:

    • Verified availability: Permit a factual statement and record the verification source.
    • Unverified availability: Refer the customer to the live product or checkout page without asserting availability.
    • Unavailable or expired: Clearly state the confirmed status without creating false urgency.
  4. Require placeholders such as [verified availability status], [verification source], and [verification timestamp] instead of the ambiguous [promotion/inventory/gift] placeholder.

  5. Add a final validation rule that rejects customer-facing drafts containing claims such as “still available,” “in stock,” or “gift included” unless verified status is present in the input.

  6. Align this template with the anti-fabrication rules in SKILL.md and the conservative payment-reminder guidance in references/scene-playbooks.md.

Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (8)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill description is written as a Chinese-language customer service skill and does not indicate that users may choose another language or locale. Under the policy rule, forcing a specific language without opt-in is a natural-language policy concern unless the locale restriction is clearly documented and justified.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The description is written as Chinese-only behavior without giving the user a language choice or documenting that the skill is intentionally restricted to Chinese-speaking users. This can cause the system to respond in the wrong language or exclude users unexpectedly, which is primarily a safety and usability routing issue rather than a direct security exploit.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The activation guidance is broad enough to capture many ordinary writing or customer-service requests, which can cause the agent to invoke this skill outside its intended scope. Over-broad routing is dangerous because it may override more appropriate skills or inject domain-specific assumptions into generic tasks, increasing the chance of misleading, non-compliant, or context-inappropriate outputs.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The entire skill guidance is written as mandatory Chinese response content, including the title and all recommended phrasing, with no indication that users may choose another language or locale. This creates a natural-language locale policy concern because the skill appears to constrain outputs to Chinese by default rather than offering language selection.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

SQP-3 适用于所有文件。该模板库从标题到全部示例均默认要求中文回复,未提供用户语言偏好选择或多语言说明,可能导致在非中文用户场景下违反语言选择政策。

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The document provides all guidance and example expressions exclusively in Chinese and frames them as the standard way to communicate across platforms. Because the file does not mention user language preference, opt-in, or a justified region-only scope, it creates a natural-language policy risk of forcing a specific language or locale.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

The changelog entries are entirely written in Chinese, which indicates the skill may be oriented toward a single language/locale without any stated user choice or opt-in. Under the policy rule for natural-language violations, forcing a specific language without documented user selection can be a locale-policy issue.

Content

No source excerpt is available for this finding.

Vague Triggers

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

该文件是 markdown,适用 SQP-1。L070 仅写“触发条件”作为占位,但没有要求列出明确触发语、适用边界或负例,容易让后续编写者使用模糊条件定义何时启用该模板。

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.