Back to skill

Security audit

小学作文批改

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent Chinese-language composition review helper with local-only report, annotation, and optional student profile tools.

Install only if you want a Chinese-language elementary composition review workflow. Enable student profiles only with appropriate consent and a clear local storage location, and double-check review IDs before deleting profile records because single-review deletion is permanent.

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
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (18)

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

声明描述的是一个完整的作文批改工具,包含输入采集(照片/文本/文档)、批改分析、等级建议、评语与档案管理等能力。但该代码文件的职责非常明确:它只把“已完成的作文批改结果”验证后导出成 md/docx 报告,并显式说明“不执行识别、评分或建档”。因此其实际主功能与声明的核心能力存在明显差异。虽然代码覆盖了声明中的一小部分(订正复查、小练习、打印批改报告中的报告输出),但缺少声明中最关键的批改入口和分析能力,且主用途更窄,属于描述与行为不符。

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
96% confidence
Finding

声明描述的是一个作文批改技能,核心应是接收照片/文本/文档并生成批注与评语,同时附带成长档案管理。实际代码没有任何图像处理、OCR、文本解析、作文内容分析、自动批改或报告打印相关实现。它处理的输入是本地 JSON 文件和命令行参数,保存的是教师设置、学生档案和批改摘要,强调的是安全的本地存储、校验、导入导出与记录压缩。虽然“学生成长档案管理”与声明中的一部分场景一致,但这只是声明中的次级功能;代码缺失了声明中的主要批改能力,因此描述与实际行为存在实质性不匹配。

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding

声明描述的是一个较完整的作文批改工具,涵盖多种输入形式(照片、粘贴文本、可读取文档)以及内容分析和管理功能。相比之下,代码是一个非常聚焦的渲染脚本:它要求调用方事先提供可信坐标和批注内容,只负责把编号标记和说明绘制到图片上,并保存为PNG。代码中还明确写明‘不执行 OCR 或坐标推断’。因此,代码行为仅覆盖了声明中‘原图编号批注’这一很小部分,而缺失了声明中的核心能力与主要用途,属于明显的描述与实际行为不符。

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
85% confidence
Finding

The skill instructs the agent to read and write files, access environment-backed capabilities, and invoke local scripts, but it does not declare an explicit tool scope or allowlist. That creates an unnecessary trust gap: reviewers and runtime policy cannot easily verify whether file and execution behaviors are intended, increasing the chance of over-privileged use or accidental data exposure.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill’s description and all operational instructions are written as Chinese-only guidance for handling teacher requests, student feedback, and generated outputs, but there is no statement that language is selectable by the user or that the Chinese-only locale is a justified regional limitation. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation.

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 is written as Chinese-only instructional content, including the title and all evaluation guidance, with no indication that users may choose another language or that the skill is restricted to a Chinese-language context. Under the stated policy, forcing a specific language without opt-in is a natural-language policy concern.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The entire skill file is written as Chinese-only operational guidance and does not mention any option to adapt the feedback language to the user's or teacher's preferred locale. Under the stated policy, forcing a specific language without opt-in is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

This markdown file contains user-facing instructional content exclusively in Chinese, which can constitute a language/locale policy violation when no user opt-in or scope justification is provided. The file does not indicate that it is limited to a Chinese-language audience or region-specific use case.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
83% confidence
Finding

The schema requires any specified font to support Chinese glyphs and rejects invalid fonts without fallback, which bakes a Chinese-language requirement into the protocol. Because the document does not present this as an opt-in locale choice or clearly justify it as a region-specific tool, it may violate language/locale policy constraints.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The file's operational instructions and protocol are presented only in Chinese, which can force a specific language on users or operators. The document does not mention any opt-in language selection or explain that the skill is intentionally limited to a Chinese-only audience or region-specific context.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The file’s top-level description and all CLI/help/error/report strings are written only in Chinese, indicating the skill is designed to operate in a fixed language. The policy allows locale constraints only when user choice/opt-in is offered or the restriction is clearly documented and justified; neither appears here.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

delete_review() permanently removes a student's detailed review record without any explicit confirmation flag, dry-run, or secondary safety check. In this skill's context, the data is student educational history, so an accidental or unauthorized invocation can irreversibly delete assessment evidence and alter derived profile state (current_goals, trends, progress summaries), impacting record integrity and auditability.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

该脚本的模块说明、异常消息、命令描述和输出相关文案均以中文固定呈现,例如 L001、L026、L280、L295 附近,未见可配置语言、locale 选择或显式限定为中文专用场景的说明。根据规则,强制特定语言而不给用户选择,属于自然语言层面的语言/地区策略风险。

Content

No source excerpt is available for this finding.

Scope Creep

Low
Category
Excessive Agency
Confidence
70% confidence
Finding

Skill's behavior or capabilities extend beyond its stated purpose. Scope creep allows an agent to perform actions unrelated to its documented functionality, increasing the attack surface.

Content

Scanner excerpt · LICENSE.txt (reported line 7)May include surrounding context.

text
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
89% confidence
Finding

This markdown file presents all user-facing instructions and examples exclusively in Chinese, with no indication that users may choose another language. That can conflict with language/locale choice expectations when no explicit opt-in or region-specific justification is provided.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

This JSON file contains user-facing text fields such as title, comments, tasks, and references exclusively in Chinese. Under the policy rule, forcing a specific language without any documented opt-in or locale justification can be a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
86% confidence
Finding

The JSON fixture contains a user-facing message in Chinese ("标点使用不当") with no indication that language selection is configurable or intentionally limited to a Chinese-only context. Under the stated policy, fixed locale output without opt-in or justification can be a language/locale policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
89% confidence
Finding

This file contains user-facing textual values such as titles and evaluation labels exclusively in Chinese, but the fixture provides no natural-language indication that Chinese is optional, user-selected, or limited to a China/Chinese-language context. Under the policy rule for language or locale constraints, hard-coding a single language without opt-in can be a policy concern.

Content

No source excerpt is available for this finding.