Back to skill

Security audit

招标文件版本比对器 · 招标人版

Security checks for vulnerabilities and agentic risk

Overview

The skill mostly matches its tender-document comparison purpose, but it also forces author attribution into user-facing replies without user opt-in.

Review the signature requirement before installing. The core skill appears to perform local tender-document extraction, comparison, compliance classification, and report rendering, but it may add the publisher's signature to ordinary chat responses unless that section is removed or overridden. Users handling sensitive bidding materials should also confirm they are comfortable with the disclosed IMA knowledge-base lookup.

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:283
Finding

Forced Attribution Alters Agent Responses

Content
View full analysis
**Signature**: Frontline Bid Evaluation Expert & ChesaraM Generated DOCX and Markdown report files are not required to include the signature, to avoid disrupting the report structure. If a platform requires removal of conversational signature instructions—for example, because clawhub.ai identifies them as forced injection—delete this subsection. ``` ### Technical Analysis This section imposes a persistent response-formatting instruction unrelated to the skill’s core purpose of comparing tender-document versions. When the skill is loaded, the agent is instructed to append author-selected attribution to ordinary explanations, summaries, and progress messages. The instruction therefore changes the agent’s behavior at the skill-instruction layer rather than implementing document-comparison functionality. Its reference to platform “forced injection” detection, together with the recommendation to delete the section when detected, indicates awareness that the behavior may conflict with host-platform output controls. This issue is limited to output integrity. The reviewed instruction does not provide filesystem privileges, credential access, command execution, persistent memory access, or elevated system permissions. ### Attack Path 1. A user or platform loads `SKILL.md` as the active skill instructions. 2. The agent processes the “Signature Convention” as an instruction governing its responses. 3. The user requests document comparison, a summary, or a pipeline status update. 4. The agent generates the requested response. 5 ...[truncated 1090 chars]
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (11)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
86% confidence
Finding

The invocation example “这是补遗稿,帮我看看发布前有没有被质疑的风险” describes the task in natural language but does not clearly distinguish this skill from general document-review or risk-analysis requests. Without explicit trigger constraints or negative examples, similar everyday phrasing could unintentionally route users into this skill.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The skill hard-codes Chinese-language output and a fixed signature line for user-facing responses without offering user choice or platform-aware opt-out. This can override user or system language preferences, create prompt-injection-style policy conflicts with downstream platforms, and cause unintended disclosure or formatting issues in environments that prohibit forced signatures or mandated language.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
86% confidence
Finding

The trigger list contains relatively broad procurement phrases such as '发布前自检' and '对比两份招标文件', which can match routine user requests outside a narrowly scoped tender-document comparison workflow. Overbroad activation can cause the skill to engage in unintended contexts, increasing the chance of incorrect legal/procurement guidance or inappropriate handling of sensitive bidding materials.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The title and scope text state that this schema is only for the Chinese '招标人版 (tenderer)' variant, and the entire document is presented only in Chinese. This creates a locale/language constraint without any indication that users may choose another language or locale, which matches the policy concern for forced language/locale behavior.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The entire skill file is written in Chinese and provides all instructions, examples, and required outputs only in that language. There is no indication that the user can choose another language, nor any explicit justification that this skill is intended only for a Chinese-language regulatory or regional workflow.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

This markdown prompt is written entirely in Chinese and defines role, inputs, outputs, examples, and validation in Chinese, effectively constraining the skill to a single language. The file does not provide any opt-in or alternative-language behavior, nor does it document a justified locale restriction such as a region-specific compliance-only scope.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The entire skill instruction set is written to operate in Chinese, including fixed output labels such as Chinese risk levels and release decisions, with no indication that another language can be selected. This can violate a language/locale policy when users are not given an opt-in or alternative locale choice.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

This Python file contains natural-language docstrings and CLI messages that assume Chinese as the only operating language. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation unless the locale restriction is clearly justified and documented.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The module docstring defines role-based rendering entirely in Chinese and the rest of the file generates report headings, labels, and guidance in Chinese only. This is a natural-language locale constraint with no user opt-in or explanation that the skill is intended only for a Chinese-language or region-specific workflow.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
80% confidence
Finding

The natural-language content presented to users, including the description and trigger phrases, is entirely Chinese, while the manifest does not indicate that this is a region-specific or Chinese-only skill. Under the policy, forcing a specific language without user opt-in or documented justification can be a locale-policy issue.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
97% confidence
Finding

The generated summary string says the alignment method is 'content-similarity (primary) + ID fallback', implying IDs are used as a secondary matching mechanism. However, the matching logic in align() only performs whitespace-normalized exact text matching and greedy similarity matching; clause IDs are only copied into output records and never used for alignment.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.