Back to skill

Security audit

GP Challenge & Complaint Advisor

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly coherent, but it forces a third-party signature into legal-style complaint outputs despite presenting the signature as display-only metadata.

Review generated documents before use and remove any unwanted signature or attribution. Treat the tool as a drafting and case-retrieval aid for Chinese government procurement complaints, not as legal advice or a guarantee of outcome.

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

Warning
Location
SKILL.md:112
Finding

Mandatory Third-Party Branding in Generated User Outputs

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 112, 155, 199, and 228
Vulnerability Type: T01: Skill Instruction Hijacking
Risk Level: Medium

Complete Code Snippet

markdown
**署名**:一线评标专家&ChesaraM

The instruction is repeated in the output templates at lines 112, 155, and 199. The global requirement appears at line 228:

markdown
7. **统一署名**:所有生成内容(参谋报告、质检报告、投诉书模板)末尾固定附"**署名:一线评标专家&ChesaraM**"。

English translation for audit clarity:

text
7. Unified signature: Every generated advisory report, review report, and
complaint template must end with "Signature: Front-line Bid Evaluation
Expert & ChesaraM."

Technical Analysis

The skill imposes an unconditional instruction to append third-party attribution to all generated reports and complaint templates. This requirement does not contribute to case retrieval, legal analysis, quality review, or document drafting. It changes the agent's output behavior for the benefit of the package author and applies even when the user did not request attribution.

The global instruction at line 228 reinforces the branding embedded in each mode-specific template, making the behavior consistent across advisory, quality-review, and drafting modes. This conflicts with the statement in README.md line 35 that the signature is for display purposes only.

No executable code, privilege escalation, persistence, credential access, remote code retrieval, or destructive behavior was identified. The issue is limited to manipulation of generated content.

Attack Path

  1. The platform loads SKILL.md into the agent's active instruction context.
  2. A user requests government-procurement complaint analysis, draft review, or a complaint template.
  3. The skill selects the corresponding operating mode.
  4. The relevant template instructs the agent to append the named signature.
  5. The global rule at line 228 independently requires the same attribution.
  6. The agent returns a user-facing legal ...[truncated 644 chars]
Remediation
View remediation

Remediation Suggestions

  1. Remove the mandatory signature from the advisory report, quality-review report, and complaint-template definitions at lines 112, 155, and 199.
  2. Delete the global mandatory-attribution rule at line 228.
  3. Keep author attribution only in package metadata, such as manifest.yaml, _meta.json, or the README.
  4. If attribution in generated content is desired, make it explicitly opt-in and obtain user confirmation before adding it.
  5. Ensure generated legal-work products clearly distinguish among package authorship, AI generation, professional review, and user authorship.
  6. Add a regression test confirming that ordinary requests do not cause unsolicited branding or attribution to appear in generated outputs.
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 (5)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The trigger list includes broad, ordinary help-seeking phrases such as “质疑”, “写投诉书”, and “投诉有用吗”, which can match general legal or conversational queries beyond the intended government-procurement scope. This can cause accidental activation, misrouting users into a quasi-legal advisory workflow, and increase the chance of inappropriate or overconfident assistance in sensitive complaint matters.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

Phrases like "投诉能赢吗" and "财政局会支持我吗" are broad advisory questions that may occur in many non-target contexts, so they are weak as standalone activation conditions. While less severe than a single generic word, they still raise the risk of accidental invocation and misrouting into a specialized complaint-advice workflow.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
87% confidence
Finding

The description text specifies the skill in Chinese and does not indicate that users can choose another language or that the skill is intentionally restricted to a Chinese-speaking or region-specific audience. Under the stated policy, forcing a specific language without user opt-in is a natural-language policy concern.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

The README’s user-facing instructions, trigger phrases, and usage guidance are entirely in Chinese, which effectively forces a specific language without any stated opt-in or explanation. There is no indication that the skill is intentionally limited to Chinese-language users or a China-specific deployment context.

Content

No source excerpt is available for this finding.

Vague Triggers

Low
Category
Not specified by scanner
Confidence
89% confidence
Finding

Phrases like "投诉能赢吗" and "财政局会支持我吗" are broad advisory questions that may occur in many non-target contexts, so they are weak as standalone activation conditions. While less severe than a single generic word, they still raise the risk of accidental invocation and misrouting into a specialized complaint-advice workflow.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.