Back to skill

Security audit

食品出厂检验与留样记录核对(免费版)

Security checks for vulnerabilities and agentic risk

Overview

This is a local ledger-checking skill with no network, credential, or persistence behavior; the main caveat is a user-facing accuracy mismatch around one advertised totals check.

Before installing, treat this as a local Chinese-language helper for tabular food inspection and retention records, not a complete compliance review. Be aware that one advertised batch-count total check appears overstated, so users should manually verify batch-count totals or ask the publisher for a corrected version.

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
Vulnerability Patterns
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • 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 (10)

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 63)May include surrounding context.

md
node scripts/run.mjs --sample # 先看样例(一张干净的出厂检验与留样台账)

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 64)May include surrounding context.

md
node scripts/run.mjs --sample # 先看样例(一张干净的出厂检验与留样台账)

Lp1

High
Category
MCP Least Privilege
Confidence
75% confidence
Finding

The skill uses 'env' capability that is not listed in its permissions. This may indicate deceptive intent or missing permission declarations.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

This code’s natural-language interface, examples, diagnostics, and guidance are all written in Chinese, and the skill does not indicate that language selection is optional. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation unless the locale restriction is clearly documented and justified.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
87% confidence
Finding

The manifest says the free version provides six checks and references insufficient material producing no conclusion. In this file, the module-level documentation and exported result explicitly enumerate additional withheld capabilities such as nonconforming disposal closure, report consistency, retain quantity compliance, cross-line/cross-shift checks, and ranked summaries. Even if not executed here, the skill file’s declared behavior extends beyond the manifest’s described purpose/scope for this free skill.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The manifest description limits the free version to six named checks: batch coverage, item completeness, retain term/destruction date, duplicate same-batch same-item entries, summary row review, and blank/date/numeric/status illegality. However, the code additionally requires and validates fields such as product name and report conclusion status, which are not part of the stated six-item free scope. This is a semantic expansion of what the free version claims to check.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The inline documentation says the summary-row review covers '批次数、留样数量、检验项目数', implying batch-count totals are checked. But the actual SUM_ROLES only includes itemCount, reqItemCount, retainQty, reqRetainQty, and retainDays, and no batch-count total is computed or compared. This is an active contradiction between documentation and implementation.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The result summary basis text states that '合计行的批次数 / 留样数量 / 检验项目数须等于逐行加总'. In implementation, no '批次数' field is part of SUM_ROLES and no batch-count summary comparison exists. The generated explanation to users therefore contradicts real behavior.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The comment says non-JSON input is treated as '纯文本材料(例如直接粘贴的合同全文)', using a contract document as the example. That contradicts the surrounding module intent and manifest, which are specifically about 食品出厂检验与留样记录材料 rather than arbitrary contracts.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

This manifest-style JSON contains only Chinese headers and values in the primary text field, indicating a fixed language/locale. Under the policy rule, forcing a specific language without user opt-in or documented regional justification is a natural-language policy concern.

Content

No source excerpt is available for this finding.