Back to skill

Security audit

Mlx Stt

Security checks for vulnerabilities and agentic risk

Overview

This is a straightforward local speech-to-text skill, with a disclosed but somewhat loose third-party install step users should verify before use.

Before installing, verify the mlx-audio package source and consider pinning an exact reviewed version instead of allowing prereleases. Expect the skill to read audio files you provide and run local speech-to-text processing, potentially through a local OpenClaw STT service.

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:13
Finding
Unpinned Prerelease Third-Party Dependency Installation## Vulnerability Details **File Location**: `SKILL.md`, lines 13–17 **Vulnerability Type**: Unpinned and prerelease-enabled dependency installation **Risk Level**: Medium **Vulnerable Code**: ```markdown > **Note:** This plugin depends on the `mlx-audio` Python library. Ensure it is installed before use: > ```bash > uv tool install mlx-audio --prerelease=allow > ``` ``` ### Technical Analysis The documented installation command retrieves `mlx-audio` from a third-party package registry without specifying an audited version or cryptographic integrity hash. It also explicitly permits prerelease versions. Dependency resolution consequently depends on mutable registry state at installation time. Different users or installation dates may resolve to different package versions, including versions that were never reviewed alongside this Skill. If the package, its publishing account, its build dependencies, or another component in its dependency chain is compromised, installation or subsequent execution could run attacker-controlled code. The project contains only `SKILL.md` and does not include the implementation of the documented `mlx_stt` tool. Therefore, the artifact itself cannot verify the integrity of the installed component or substantiate the claim that all processing remains local. ### Attack Path 1. An attacker compromises the package publisher, a transitive dependency, or another relevant supply-chain component. 2. The attacker publishes a malicious version eligible for resolution by the unpinned command, potentially as a prerelease. 3. A user follows the Skill documentation and runs `uv tool install mlx-audio --prerelease=allow`. 4. The package manager resolves and installs the attacker-controlled release or dependency. 5. Malicious code executes during a source-package build, package invocation, or subsequent transcription operation with the privileges of the user running the tool. 6. That code co ...[truncated 622 chars]
Remediation
## Remediation Suggestions 1. Pin `mlx-audio` to an exact, reviewed release rather than allowing unconstrained resolution. 2. Remove `--prerelease=allow` unless a prerelease is strictly required. If it is required, pin the exact audited prerelease and document why it is necessary. 3. Maintain a lockfile containing exact direct and transitive dependency versions. 4. Require cryptographic hashes for downloaded distributions where the package-management workflow supports them. 5. Document the expected package registry and reject unexpected indexes or alternate dependency sources. 6. Prefer reviewed binary distributions from trusted publishers and carefully assess source distributions and their build backends. 7. Perform dependency vulnerability and provenance checks in CI before updating the approved version. 8. Run the transcription service with least privilege and restrict its filesystem and network access to limit the impact of a compromised dependency. 9. Include or reference a verifiable implementation so reviewers can validate the documented local-only processing claim.
Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • 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 (1)

Natural-Language Policy Violations

Medium
Confidence
95% confidence
Finding
The entire skill description, trigger phrases, parameter explanations, and usage instructions are written only in Chinese, which effectively imposes a specific language for interacting with or understanding the skill. The policy allows locale constraints only when clearly documented and justified or when users are given a language/locale choice, neither of which is present here.

Static analysis

No suspicious patterns detected.