Back to skill

Security audit

Html2pptx Complete

Security checks for vulnerabilities and agentic risk

Overview

This looks like a real local HTML-to-PPTX converter, but it needs review because crafted file paths can cause unintended shell commands to run.

Install only after reviewing or fixing the command execution wrapper. Until then, use it in an isolated working directory with simple trusted filenames, avoid converting untrusted HTML packages, and pin or remove unused Python dependencies before normal use.

Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (4)

Unpinned Dependencies

Low
Category
Supply Chain
Content
beautifulsoup4>=4.12.0
cssutils>=2.7.0
requests>=2.31.0
Confidence
97% confidence
Finding
The dependency is specified with a lower bound only, which allows newer, unreviewed versions to be installed. This weakens supply-chain control and reproducibility, increasing the chance of pulling a compromised or incompatible release over time.

Unpinned Dependencies

Low
Category
Supply Chain
Content
beautifulsoup4>=4.12.0
cssutils>=2.7.0
requests>=2.31.0
Confidence
97% confidence
Finding
Using an unpinned cssutils version means installations may resolve to different package versions across environments and time. That increases exposure to future malicious releases, regressions, or newly introduced vulnerabilities in the dependency chain.

Unpinned Dependencies

Low
Category
Supply Chain
Content
beautifulsoup4>=4.12.0
cssutils>=2.7.0
requests>=2.31.0
Confidence
98% confidence
Finding
The requests dependency is not pinned, so the build may consume whatever later version satisfies the constraint. In a workflow that fetches external HTML or CSS, weak dependency control is more dangerous because network-facing libraries sit on a sensitive trust boundary.

Known Vulnerable Dependency: requests — 10 advisory(ies): CVE-2014-1830 (Exposure of Sensitive Information to an Unauthorized Actor in Requests); CVE-2024-47081 (Requests vulnerable to .netrc credentials leak via malicious URLs); CVE-2024-35195 (Requests `Session` object does not verify requests after making first request wi) +7 more

High
Category
Supply Chain
Confidence
93% confidence
Finding
The requirement allows installation of requests versions affected by known CVEs because it does not exclude vulnerable ranges. Since this skill's stated purpose includes inlining external CSS and processing remote content, a vulnerable HTTP client can expose credentials, weaken TLS/session guarantees, or otherwise mishandle attacker-controlled URLs and responses.

Static analysis

Detected: suspicious.dangerous_exec

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
scripts/convert.js:30