Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Network-reachable mutation with no UI, exploitable by a low-privileged member (PR:L), and code runs as root with the host Docker socket, causing a scope change and full C/I/A loss.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
4DescriptionCVE.org
Dokploy is a free, self-hostable Platform as a Service (PaaS). Prior to 0.29.13, apps/dokploy/server/api/routers/destination.ts interpolates the accessKey, secretAccessKey, region, endpoint, provider, and bucket fields from destination.testConnection into an rclone ls command executed through child_process.exec. The withPermission("destination", "create") path permits a low-privileged organization member to reach the mutation, close a quoted argument with a crafted field, and execute arbitrary commands in the root Dokploy container, which has access to the host Docker socket. This issue is fixed in version 0.29.13.
Articles & Coverage 1
AnalysisAI
Command injection in Dokploy self-hosted PaaS before 0.29.13 lets a low-privileged organization member run arbitrary OS commands inside the root Dokploy container, which holds the host Docker socket, effectively yielding host takeover. The destination.testConnection mutation interpolates unsanitized S3 fields (accessKey, secretAccessKey, region, endpoint, provider, bucket) into an rclone shell command run via child_process.exec. No public exploit is identified at time of analysis, but the fix is confirmed in v0.29.13 and the root cause is clearly documented in the upstream patch (PR #4873).
Technical ContextAI
Dokploy is a Node.js/TypeScript self-hostable Platform-as-a-Service used to deploy and manage applications and databases via Docker. The vulnerable code in apps/dokploy/server/api/routers/destination.ts builds an rclone ls command by string-interpolating user-supplied S3 destination fields inside double-quoted shell arguments, then executes it through child_process.exec, which spawns /bin/sh. This is a textbook CWE-78 (OS Command Injection): because the fields sit inside a quoted string with no escaping, an attacker closes the quote and appends shell metacharacters. The confirmed remediation replaces manual quoting with the shell-quote library's quote() across destination.ts, backup.ts, certificate.ts, mount.ts, and adds a strict VOLUME_NAME_REGEX for volume backups, indicating this was a systemic quoting flaw, not a single field.
RemediationAI
Vendor-released patch: upgrade to Dokploy 0.29.13 or later, which replaces unsafe string interpolation with shell-quote's quote() in the destination, backup, certificate, and mount code paths and adds regex validation for volume names (see GHSA-f6x8-vfwh-8hjr and PR #4873). If you cannot upgrade immediately, reduce exposure by removing or downgrading the 'destination:create' permission from all non-administrator organization members so untrusted accounts cannot reach the testConnection mutation, and restrict network access to the Dokploy management interface to trusted operators only; note these controls limit but do not eliminate risk, since any account still holding destination-create can trigger the flaw. Because the container mounts the host Docker socket, also treat the Dokploy host as fully compromisable and avoid granting new low-trust members until patched.
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
Unauthenticated remote command injection in SGWBOX N3 firmware 2.0.25 lets attackers execute arbitrary operating-system
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
Same weakness CWE-78 – OS Command Injection
View allSame technique Command Injection
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-55726