Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Primary rating from Vendor (mitre) · only source for this CVE.
CVSS VectorVendor: mitre
Lifecycle Timeline
4DescriptionCVE.org
An OS command injection vulnerability in the app.py component of openlabs docker-wkhtmltopdf-aas up to commit 9f50579 allows attackers to execute arbitrary commands via a crafted POST request.
AnalysisAI
Remote command execution in openlabs docker-wkhtmltopdf-aas (up to commit 9f50579) allows unauthenticated attackers to run arbitrary OS commands by sending a crafted POST request to the app.py PDF conversion endpoint. The CVSS 9.8 rating reflects network-reachable, no-privilege, no-interaction exploitation, and while no public exploit identified at time of analysis, the referenced source line (app.py#L40) makes the injection sink trivially discoverable for any attacker reviewing the repository.
Technical ContextAI
docker-wkhtmltopdf-aas is a small Flask-based 'as-a-Service' wrapper that exposes the wkhtmltopdf binary (an HTML-to-PDF renderer built on Qt WebKit) over HTTP inside a Docker container, typically used as an internal microservice for generating PDFs from HTML or URLs. The vulnerability falls under CWE-78 (Improper Neutralization of Special Elements used in an OS Command), meaning user-controlled POST data is concatenated into a shell command invocation of wkhtmltopdf without sanitization or use of an argv-style subprocess call. The referenced line app.py#L40 indicates a single specific sink in the request handler where shell metacharacters (semicolons, backticks, $() substitution, pipes) in user input break out of the intended argument and execute as additional commands under the container's process user.
RemediationAI
No vendor-released patch identified at time of analysis - the referenced GitHub issue (#36) is the only upstream remediation signal and no fixed commit or tagged release is cited in the input. Operators should treat the public image as unsafe and either fork the repository to replace the shell-style invocation in app.py around line 40 with a list-argument subprocess.run(..., shell=False) call that passes user input as separate argv elements, or migrate to a maintained alternative such as the python wkhtmltopdf bindings or Gotenberg. Until code is fixed, restrict the container's HTTP port to a trusted internal network only (block external ingress at the reverse proxy or Docker host firewall - side effect: any legitimate external consumer breaks), put it behind an authenticating reverse proxy that strips or rejects shell metacharacters (?,;,|,`,$,&,newlines) in POST bodies (side effect: may break legitimate HTML containing those characters and is not a reliable bypass-proof control), and run the container as a non-root, read-only filesystem user with a dropped capability set and no outbound network egress to limit post-exploitation impact.
An issue was discovered in Appsmith before 1.52. Rated critical severity (CVSS 9.8), this vulnerability is remotely expl
runc through version 1.0-rc6 (used in Docker before 18.09.2) contains a container escape vulnerability that allows attac
Netmaker makes networks with WireGuard. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable, no a
Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/
The News & Blog Designer Pack - WordPress Blog Plugin - (Blog Post Grid, Blog Post Slider, Blog Post Carousel, Blog Post
Path traversal in JFrog Artifactory (CWE-22) enables an authenticated low-privilege user to write data outside the inten
Docker 1.3.2 allows remote attackers to execute arbitrary code with root privileges via a crafted (1) image or (2) build
Remote code execution in Gogs through 0.14.2 allows authenticated users (and unauthenticated attackers on default-config
Remote code execution in Flowise before 3.1.2 allows any authenticated user (or API caller with chatflow view/update per
Remote code execution in NocoBase Workflow Script Node (npm @nocobase/plugin-workflow-javascript) allows authenticated l
Docker Desktop Community Edition before 2.1.0.1 allows local users to gain privileges by placing a Trojan horse docker-c
Vasion Print (formerly PrinterLogic) Virtual Appliance Host prior to version 25.2.169 and Application prior to version 2
Same weakness CWE-78 – OS Command Injection
View allSame technique Command Injection
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-34099
GHSA-v5gc-8cqm-ww2h