Back to skill

Security audit

Error To Fix

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward programming-error explainer with some documentation/test quality issues but no hidden or unsafe behavior found.

Installing is reasonable if you want help interpreting programming errors. Treat any suggested install or shell command as advice to review before running, and note that the package maintainer should clean up stale names in the tests and reference docs.

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
  • Rogue AgentSelf-Modification, Session Persistence
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (11)

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding
The declared description says this skill should be used when a user asks what a programming error or stack trace means and how to fix it. However, the supplied code chunk contains only automated tests for a skill package/repository. Its behavior is unrelated to debugging user-provided errors: it reads SKILL.md, README.md, CONTRIBUTING.md, scans local files for secrets, checks formatting and metadata conventions, and validates repository structure. This is a materially different primary purpose and includes undeclared capabilities involving filesystem inspection and compliance/testing of skill assets. Therefore, the description does not accurately represent the code.

Natural-Language Policy Violations

Medium
Confidence
95% confidence
Finding
The instruction 'Keep SKILL.md body in English' enforces a specific language in natural-language project policy. Under the stated policy rules, forcing a language without opt-in or a clear documented regional/compliance justification is a policy violation.

Natural-Language Policy Violations

Medium
Confidence
96% confidence
Finding
The line 'SKILL.md body must be in English; reference docs in English' sets a mandatory locale/language restriction. This is a natural-language policy issue because it mandates a language rather than offering a choice or documenting a justified constraint.

Session Persistence

Medium
Category
Rogue Agent
Content
- **Error type classification** — SyntaxError, TypeError, ImportError, ConnectionError, and 8+ more error types with specific diagnostic strategies
- **Root cause identification** — goes beyond the surface symptom to explain the actual failure mechanism
- **Minimal targeted fixes** — provides the smallest change needed, doesn't rewrite entire files
- **Prevention tips** — one actionable practice per error type to avoid recurrence

## Quick Start
Confidence
60% confidence
Finding
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Lp3

Medium
Category
MCP Least Privilege
Confidence
70% confidence
Finding
Without declared permissions the skill's intent is opaque and cannot be validated.

Intent-Code Divergence

Medium
Confidence
95% confidence
Finding
The module docstring says this is an auto-generated test suite for skill `user-provides-programming`, but the surrounding context is for the `error-to-fix` skill. The code then validates local skill metadata and files under the current repository, so the documentation actively misstates what skill this test suite is for.

Natural-Language Policy Violations

Medium
Confidence
95% confidence
Finding
This Python test file contains a natural-language policy constraint requiring `README_zh.md` to exist. That effectively mandates Chinese-language support for the skill repository without offering a language choice or documenting a region-specific need, which matches the locale-policy violation criteria.

Vague Triggers

Low
Confidence
87% confidence
Finding
The activation description says the skill triggers on any error message, stack trace, or exception plus explain/fix/resolve intent. While error-related, this still leaves scope somewhat open-ended and does not provide exclusions or clearer boundaries for when the skill should not activate.

Natural-Language Policy Violations

Low
Confidence
82% confidence
Finding
该文件整体以中文提供说明与使用方式,且标题与内容未声明这是可选的本地化版本或要求用户先选择中文。虽然 L03 提供英文链接,但当前文档本身仍面向中文输出,可能被理解为默认强制特定语言。

Intent-Code Divergence

Low
Confidence
96% confidence
Finding
The manifest context identifies this skill as `error-to-fix`, but the reference text says the documents are for `user-provides-programming`. This is an active documentation contradiction about the skill's identity and intended scope, not merely missing detail.

Intent-Code Divergence

Low
Confidence
83% confidence
Finding
The runner prints `TEST SUITE -- skill-factory`, but the code executes checks against the current skill's SKILL.md, README, tests, and scripts directories. This inline output misrepresents the intent of the file by branding it as a generic `skill-factory` suite rather than the actual skill-specific validator.

Static analysis

No suspicious patterns detected.