Back to skill

Security audit

Word to MD

Security checks for vulnerabilities and agentic risk

Overview

This skill does what it says, but users should understand it relies on a third-party MinerU CLI/API and may send document contents outside the local machine.

Install only if you are comfortable using mineru-open-api and the MinerU service for the documents you choose. Avoid sensitive, proprietary, or regulated Word files unless your organization has approved that provider, and prefer a pinned or project-local install when possible.

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:34
Finding
Unpinned Global npm Dependency Installation## Vulnerability Details **File Location**: `SKILL.md`, lines 34–38 **Vulnerability Type**: Supply-chain exposure through an unpinned globally installed dependency **Risk Level**: Medium ### Vulnerable Code ```markdown ## Installation ```bash npm install -g mineru-open-api ``` ``` ### Technical Analysis The installation instructions retrieve and globally install the latest available version of `mineru-open-api` without an exact version, lockfile, integrity hash, or publisher verification. Consequently, the code installed when users follow these instructions can change after the Skill has been reviewed. npm packages may execute lifecycle scripts during installation. If the package's registry account, publication process, or dependency chain is compromised, a malicious release could execute code with the privileges of the user running npm. The global `-g` installation increases exposure by placing the package in a shared tool location rather than isolating it to the project. This finding establishes an insecure dependency-installation practice; it does not establish that the current `mineru-open-api` package is malicious. ### Attack Path 1. An attacker compromises the package publisher, publication pipeline, or a relevant dependency and causes a malicious version to become the version resolved by npm. 2. A user follows the Skill's documented command, `npm install -g mineru-open-api`. 3. npm downloads the mutable package release and its transitive dependencies without validating them against a repository-controlled lockfile or expected integrity value. 4. Malicious package code can run through npm lifecycle scripts during installation or when the installed CLI is subsequently invoked. 5. The payload executes under the installing user's account and may modify user-accessible files, credentials, configuration, or globally installed tooling. ### Impact Assessment Successful exploitation could provide arbitrary cod ...[truncated 552 chars]
Remediation
## Remediation Suggestions 1. Pin `mineru-open-api` to a reviewed exact version rather than resolving the latest release: ```bash npm install --save-exact mineru-open-api@<reviewed-version> ``` 2. Prefer a project-local installation over `-g` so the dependency is isolated and recorded in project metadata. 3. Commit `package.json` and `package-lock.json`, then use `npm ci` to enforce locked versions and integrity metadata. 4. Verify the package's registry namespace, publisher ownership, provenance, release history, and transitive dependency tree before adoption. 5. Where compatible with the package, disable npm lifecycle scripts during installation: ```bash npm ci --ignore-scripts ``` 6. Execute document conversion in a sandbox or container with minimal filesystem access, no unnecessary credentials, and restricted network access. 7. Establish a controlled update process that reviews and tests new versions before changing the pin.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

Missing User Warnings

Medium
Confidence
96% confidence
Finding
The skill directs users to convert Word documents via the MinerU API but does not disclose that document contents are transmitted to an external service. This can lead users to unknowingly send sensitive or proprietary content off-platform, creating confidentiality, compliance, and data handling risks.

External Model or Provider Selection

Medium
Category
Excessive Agency
Content
- static-site
tools:
  - Bash(mineru-open-api:*)
model: claude-3-5-haiku-20241022
---

# Word to Markdown with mineru-open-api
Confidence
90% confidence
Finding
Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.

Missing User Warnings

Low
Confidence
90% confidence
Finding
The installation and workflow steps instruct users to globally install and run a third-party CLI without warning that it performs network-backed processing against an external API. While not inherently malicious, this reduces informed consent and may surprise users in restricted or regulated environments.

Natural-Language Policy Violations

Low
Confidence
90% confidence
Finding
The post-extraction hint is written in Chinese only, while the rest of the skill is in English, and there is no indication that the user opted into Chinese or that the skill is region-specific. This can violate language/locale policy by forcing a specific language for part of the interaction without user choice.

Static analysis

No suspicious patterns detected.