T09 · Insecure Skill Coding Practices
- Location
pdf_extract/cli.py:94- Finding
Unbounded OCR DPI Enables Resource-Exhaustion Denial of Service
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This is a local PDF text/OCR extraction skill with reasonable purpose fit and no evidence of hidden data exfiltration or malicious behavior.
Install in a virtual environment, prefer a pinned tag or commit instead of mutable main, and only use sudo for Tesseract if you trust the package source. Run it only on PDFs you are authorized to process, choose output paths carefully to avoid overwriting files, and keep OCR DPI/page ranges reasonable for large or untrusted PDFs.
pdf_extract/cli.py:94Unbounded OCR DPI Enables Resource-Exhaustion Denial of Service
README.md:34Mutable and Unconstrained Installation Sources Reduce Supply-Chain Integrity
Referenced artifact was not completely inspected
- Python 3.10+: `pdfplumber`, `pymupdf`, `Pillow` (see `pyproject.toml`)
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
# Ubuntu / Debian
sudo apt install tesseract-ocr tesseract-ocr-eng
# 繁中可選:
# sudo apt install tesseract-ocr-chi-tra
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
# Ubuntu / Debian
sudo apt install tesseract-ocr tesseract-ocr-eng
# 繁中可選:
# sudo apt install tesseract-ocr-chi-tra
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
# Ubuntu / Debian
sudo apt install tesseract-ocr tesseract-ocr-eng
# 繁中可選:
# sudo apt install tesseract-ocr-chi-tra
# macOS
# brew install tesseract
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
# Ubuntu / Debian
sudo apt install tesseract-ocr tesseract-ocr-eng
# 繁中可選:
# sudo apt install tesseract-ocr-chi-tra
# macOS
# brew install tesseract
Without declared permissions the skill's intent is opaque and cannot be validated.
The skill documentation appears to force a specific language/locale for instructions and usage details, with no alternative language option or explicit user opt-in. Under the stated policy, language constraints should either be optional or clearly justified as region-specific.
This markdown file documents a skill that reads PDFs, extracts their text, and can emit the contents to stdout or output files. Because PDFs often contain sensitive personal or business information, the usage section should include a user-facing warning about handling confidential content, especially when OCR is applied to scanned documents.
The skill instructs users and agents to write extracted content to paths via -o out.txt, -o out.md, and -o out.json without warning about overwriting existing files or choosing safe destinations. In agentic contexts, this can lead to accidental clobbering of user data if filenames are reused or derived unsafely from prompts.
Dependency has known vulnerabilities (CVEs). Using packages with unpatched security flaws exposes the environment to known exploits.
Dependency has known vulnerabilities (CVEs). Using packages with unpatched security flaws exposes the environment to known exploits.
Dependency has known vulnerabilities (CVEs). Using packages with unpatched security flaws exposes the environment to known exploits.
Dependency has known vulnerabilities (CVEs). Using packages with unpatched security flaws exposes the environment to known exploits.
Dependency has known vulnerabilities (CVEs). Using packages with unpatched security flaws exposes the environment to known exploits.