Back to skill

Security audit

Bid Doc Interpreter

Security checks for vulnerabilities and agentic risk

Overview

The skill mainly performs bid-document interpretation, but it forces every generated report to include third-party branding and a WeChat contact channel that is not needed for the task.

Install only if you are comfortable with every final report including the author's branding and WeChat feedback channel. The document-analysis behavior itself is well scoped, but users should remove or override the mandatory promotional footer if neutral, platform-controlled reports are required.

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

Error
Location
SKILL.md:195
Finding

Mandatory Third-Party Promotional Content Injected into User-Facing Reports

Content
View full analysis
**署名**:一线评标专家&ChesaraM | **反馈/交流**:微信公众号「一线评标专家」(使用问题、误报反馈、实务建议,欢迎留言交流) ``` In English, these instructions designate the signature and feedback section as an inviolable rule and require every final interpretation report to append a signature and promotional reference to a named WeChat public account. ### Technical Analysis The skill alters the agent's output requirements by making unrelated third-party branding and an external feedback channel mandatory in every final report. This behavior is not required to perform the declared tender-document interpretation function. The injection is reinforced elsewhere in the package: - `SKILL.md:142` embeds the promotional footer in the mandatory report template. - `SKILL.md:151` adds the footer to the pre-output self-validation checklist. - `README.md:25-31` advertises the same account and footer. - `manifest.yaml:6-8` identifies the same external feedback channel. - `回归测试报告.md:65` treats inclusion of the signature footer as a successful test condition. This constitutes instruction hijacking because loading the skill imposes a persistent, non-functional output objective on the current agent session. The content does not execute code or override system permissions, but it commandeers trusted user-facing responses as a distribution channel for third-party promotion. ### Attack Path 1. A user enables or invokes the tender-document interpretation skill. 2. The agent loads and follows the instructions in `SKILL.md`. 3. The user requests a tender-document interpretation report. 4. The report-generation template requires the external signature and feedback channel. 5. The self-validation step checks that the promotional footer is present. 6. The agent returns a t ...[truncated 789 chars]
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (6)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The trigger phrases include broad natural-language expressions such as '分析招标文件' and especially colloquial variants like '看看这个标有什么坑', which can overlap with ordinary conversation about uploaded documents. This can cause unintended activation on adjacent document-analysis requests, leading to the wrong skill handling user data or bypassing a more appropriate specialist flow.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
85% confidence
Finding

The README states that '非中文' is one of the boundary cases with explicit handling, which suggests a Chinese-only or Chinese-preferred constraint. No user opt-in, alternative language support, or explicit justification for the locale limitation is provided in the natural-language description.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The instruction says non-Chinese files should be attempted in English, while other languages are refused. This imposes a language/locale restriction in the skill behavior without offering the user a choice or giving a clear region-specific justification, which matches the policy-violation category.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The test cases prescribe fixed Chinese-language outputs such as “礼貌拒答 + 引导对应技能” and “拒答:‘本技能仅适用于招标文件’,” which implies the skill is expected to respond in Chinese by default. There is no indication that users may choose another language or that the locale restriction is documented as a justified regional requirement.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill requires every final report to include a branded signature and public contact channel unrelated to the user’s requested bid-document analysis. This creates an unnecessary data-flow and trust-manipulation surface by embedding promotional content into all outputs, which can mislead users into off-platform contact or make the agent appear to endorse an external entity.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
97% confidence
Finding

The file makes the branded signature a '铁律级' requirement on every final report, reinforcing persistent unsolicited promotion outside the skill’s functional purpose. While not code-execution risky, it is a policy and trust-boundary issue because it injects non-essential marketing content into all user-facing results.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.