Back to skill

Security audit

Unit Converter

Security checks for vulnerabilities and agentic risk

Overview

This is a local unit-conversion helper with no evidence of credential access, persistence, network activity, or destructive behavior.

Installers should expect a simple local converter, but the command-line output is mostly Chinese and one documented volume alias is broken. There is no evidence that it accesses private data, installs persistence, or contacts external services.

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 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
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

Natural-Language Policy Violations

Medium
Confidence
94% confidence
Finding
This code file contains natural-language content and user-facing help text in Chinese, indicating the skill is designed to communicate in a single language only. Under the policy for all file types, forcing a specific language without user opt-in is a locale/language policy violation.

Natural-Language Policy Violations

Medium
Confidence
97% confidence
Finding
The usage text, command descriptions, category descriptions, examples, and later error/result messages are all emitted in Chinese, which constrains the skill to a single language experience. Because there is no visible option to choose another language or an explicit documented locale limitation, this violates the language/locale policy.

Intent-Code Divergence

Low
Confidence
92% confidence
Finding
The documentation-facing unit list advertises temperature units including 'Celsius', 'Fahrenheit', and 'Kelvin', implying those names are supported. In actual execution, CLI inputs are lowercased at L269-L270, mapped to uppercase symbols at L277, then uppercased again for conversion at L331; however the advertised names in get_unit_list are not directly accepted as listed, so the documented interface contradicts the real accepted forms.

Intent-Code Divergence

Low
Confidence
98% confidence
Finding
The script's documentation and manifest indicate broad unit-conversion support, including volume units, and the code comments/help imply 'fluid ounce' is supported. But the unit normalization maps 'fluid ounces' to 'fl fl oz' instead of 'fl oz', which causes a documented unit form to fail and contradicts the claimed behavior.

Static analysis

No suspicious patterns detected.