html-to-pdf

Fail

Audited by Gen Agent Trust Hub on Sep 15, 2026

Risk Level: HIGHCOMMAND_EXECUTIONPRIVILEGE_ESCALATIONINDIRECT_PROMPT_INJECTIONEXTERNAL_DOWNLOADS
Full Analysis
  • [COMMAND_EXECUTION]: The script scripts/html-to-pdf.js is vulnerable to shell command injection. In the checkPdfPageCount function, the pdfPath variable (derived directly from a command-line argument) is interpolated into a shell command template literal passed to execSync without sanitization. This allows for arbitrary command execution on the host system if a malicious filename is provided.\n
  • Evidence: execSync(\pdfinfo "${pdfPath}" 2>&1`, { encoding: 'utf8' })inscripts/html-to-pdf.js.\n- **[PRIVILEGE_ESCALATION]:** The Puppeteer browser instance is launched with the --no-sandboxand--disable-setuid-sandbox` flags. These settings disable critical security boundaries within Chromium, increasing the risk that a malicious webpage could compromise the underlying system through a browser exploit.\n
  • Evidence: puppeteer.launch({ args: ['--no-sandbox', '--disable-setuid-sandbox', ...] }) in scripts/html-to-pdf.js.\n- [INDIRECT_PROMPT_INJECTION]: The skill renders untrusted content from external URLs or local files in a browser with JavaScript enabled, creating a vector for indirect prompt injection and data exfiltration.\n
  • Ingestion points: Positional input arguments in scripts/html-to-pdf.js.\n
  • Boundary markers: None present to differentiate between data and instructions.\n
  • Capability inventory: Headless browser (network access, JS execution), file system access (fs), and shell command execution (execSync).\n
  • Sanitization: None identified; content is rendered directly as provided.\n- [EXTERNAL_DOWNLOADS]: The skill downloads the puppeteer package and its bundled Chromium binary from the official npm registry during the setup phase.
Recommendations
  • AI detected serious security threats
Audit Metadata
Risk Level
HIGH
Analyzed
Sep 15, 2026, 06:11 AM
Security Audit — agent-trust-hub — html-to-pdf