Back to skill

Security audit

Word to PDF Converter

Security checks for vulnerabilities and agentic risk

Overview

This is a straightforward Word-to-PDF conversion guide, with normal setup cautions around installing conversion tools and Python packages.

Install only the conversion tools you need, use trusted package sources, and prefer a virtual environment for Python packages. Review documents and output paths before batch conversion, especially in directories with sensitive files.

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:81
Finding
Unpinned Third-Party Python Dependencies## Vulnerability Details **File Location**: `SKILL.md`, lines 81–84 **Vulnerability Type**: Unpinned and unverified package installation **Risk Level**: Medium ```bash # Install required libraries pip install python-docx reportlab pillow # Or use docx2pdf pip install docx2pdf ``` ### Technical Analysis The installation instructions retrieve mutable versions of third-party packages from the package index configured for `pip`. No exact versions, cryptographic hashes, lockfile, or trusted package-index configuration are specified. Consequently, the dependencies installed by these commands can differ from those reviewed or tested by the skill author. Python package installation can execute package build or installation logic, so compromise of a named package, one of its transitive dependencies, or the configured package index could result in arbitrary code execution during installation. The instructions do not explicitly use elevated privileges. Therefore, the directly supported impact is limited to the permissions of the account running `pip`; administrative or root-level impact would require the user or execution environment to run the command with additional privileges. ### Attack Path 1. An attacker compromises a named package, a transitive dependency, or a package source configured in the victim's `pip` environment. 2. The attacker publishes or serves a malicious version that remains compatible with the unrestricted dependency request. 3. A user or agent follows the instructions in `SKILL.md` and runs one of the unpinned `pip install` commands. 4. `pip` resolves and downloads the attacker-controlled package version. 5. Malicious installation or runtime code executes with the privileges of the user performing the installation. ### Impact Assessment Successful exploitation could permit arbitrary code execution under the installing user's account. This could expose files, credentials, environment variables, and documents accessible to that account; al ...[truncated 286 chars]
Remediation
## Remediation Suggestions - Pin every direct dependency to a reviewed, exact version. - Resolve and pin transitive dependencies in a lockfile. - Generate cryptographic hashes for all approved distributions and install with `pip install --require-hashes`. - Explicitly use the intended trusted package index and disable unintended extra indexes where practical. - Install packages in an isolated virtual environment under a non-privileged account. - Prefer prebuilt, reviewed wheels and prohibit source builds where operationally feasible. - Add automated dependency vulnerability and integrity scanning to the release process. - Periodically update pinned versions through a controlled review and testing workflow. A hardened installation pattern would use a reviewed requirements file: ```bash python -m venv .venv . .venv/bin/activate python -m pip install --require-hashes -r requirements.txt ```
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (2)

Sudo/Root Execution

Medium
Category
Privilege Escalation
Content
### LibreOffice Method
```bash
# Install LibreOffice
sudo apt-get install libreoffice

# Or on macOS
brew install --cask libreoffice
Confidence
70% confidence
Finding
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Content
### LibreOffice Method
```bash
# Install LibreOffice
sudo apt-get install libreoffice

# Or on macOS
brew install --cask libreoffice
Confidence
70% confidence
Finding
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Static analysis

No suspicious patterns detected.