Back to skill

Security audit

Format Converter Free

Security checks for vulnerabilities and agentic risk

Overview

This is a straightforward file-format conversion skill, with ordinary file-writing and dependency-installation risks that users should control but no evidence of hidden, persistent, destructive, or deceptive behavior.

Install and run this only in a normal project sandbox or virtual environment. Give explicit input and output paths, avoid overwriting originals, keep backups, and verify converted files because comments, ordering, formatting, and some type details may change.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:341
Finding

Unpinned Third-Party Python Dependencies

Content
View full analysis

Vulnerability Details

File Location: SKILL.md:341-345
Vulnerability Type: T08: Insecure Dependencies
Risk Level: Medium

Vulnerable Code Snippet:

markdown
| pyyaml | Python library | Required | `pip install pyyaml` (YAML) |
| xmltodict | Python library | Required | `pip install xmltodict` (XML) |
| tomli_w | Python library | Required | `pip install tomli_w` (TOML writing) |
| tomllib | Python library | Required | Built into Python 3.11+ (TOML reading) |
| chardet | Python library | Optional | `pip install chardet` (encoding detection) |

Technical Analysis

The Skill instructs users or agents to install pyyaml, xmltodict, tomli_w, and optionally chardet without specifying reviewed versions, cryptographic hashes, a lockfile, or a trusted package index. Consequently, package resolution depends on the current contents of the configured Python package repositories.

Python package installation can execute package-controlled build or installation logic. If an upstream release, package-maintainer account, configured package index, or dependency chain is compromised, a malicious package version could execute code during installation or when imported by the conversion workflow.

This finding does not establish that the named packages are currently malicious. The vulnerability is the mutable and insufficiently verified dependency installation process.

Attack Path

  1. An attacker compromises an upstream package release, maintainer account, dependency, or package index used by the environment.
  2. The user or agent follows the documented command, such as pip install pyyaml, without a version or hash constraint.
  3. pip resolves the attacker-controlled or compromised package version.
  4. Malicious build, installation, or runtime code executes under the account running the agent or installation command.
  5. The payload can access resources available to that account, subject to operating ...[truncated 683 chars]
Remediation
View remediation

Remediation Suggestions

  1. Pin every third-party dependency to a specifically reviewed version, for example through a version-controlled requirements file.
  2. Generate and verify cryptographic hashes, and install with pip install --require-hashes -r requirements.txt.
  3. Use a lockfile produced by a dependency-management tool and review lockfile changes before deployment.
  4. Configure an approved, authenticated package index or internal mirror rather than relying on arbitrary environment-level index configuration.
  5. Install packages inside an isolated virtual environment or container using a non-privileged account.
  6. Run dependency vulnerability and provenance scanning in CI, and establish a controlled process for reviewing and updating pinned versions.
  7. Avoid performing dependency installation automatically from natural-language instructions; require explicit user approval before package installation.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (4)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The top-level description markets quick format conversion but does not clearly warn that the skill may create or overwrite files and that data such as comments, formatting, duplicate keys, or type representations may be lost. In a file-conversion skill with write and exec permissions, missing safety warnings can lead users to run destructive operations under the false assumption that conversion is non-destructive and reversible.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The invocation guidance tells the agent to act on broad natural-language requests and 'automatically identify' formats and perform conversion, while the skill has read/write/exec capabilities. Without tighter parameterization, this increases the chance that ambiguous or prompt-injected user content triggers unintended file reads, writes, or command execution beyond the intended conversion task.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill promises that a YAML-to-TOML conversion can preserve all nested structures and comments, but the same document later admits comments may be lost and the sample implementation uses standard YAML/TOML libraries that do not preserve comments. This can mislead users into trusting the conversion as lossless, causing silent destruction of configuration annotations or semantics during file rewrite.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
94% confidence
Finding

The manifest fields and user instructions are presented entirely in Chinese, including examples and operational guidance, with no indication that users may choose another language. For a generally applicable format-conversion skill, forcing a single language without opt-in is a natural-language policy concern unless the locale restriction is explicit and justified.

Content

No source excerpt is available for this finding.