Skip to main content

Dokploy CVE-2026-72878

| EUVDEUVD-2026-55744 CRITICAL
OS Command Injection (CWE-78)
2026-08-10 GitHub_M
9.6
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
9.6 CRITICAL
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N
vuln.today AI
9.1 CRITICAL

Requires an authenticated admin/owner account so PR:H; arbitrary host command execution escapes the app to the OS, giving S:C and full C/I/A:H including availability.

3.1 AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

4
Patch available
Aug 10, 2026 - 20:04 EUVD
Source Code Evidence Fetched
Aug 10, 2026 - 19:50 vuln.today
Analysis Generated
Aug 10, 2026 - 19:50 vuln.today
CVE Published
Aug 10, 2026 - 19:11 cve.org
CRITICAL 9.6

DescriptionCVE.org

Dokploy is a free, self-hostable Platform as a Service (PaaS). Prior to 0.29.13, Dokploy's backup and restore pipeline constructs shell commands by directly interpolating user-controlled database fields into bash -c "..." and sh -c "..." strings, then executes them via child_process.exec(). An authenticated admin/owner can inject arbitrary OS commands that execute on the host machine running Dokploy (not just inside a container). This vulnerability is fixed in 0.29.13.

AnalysisAI

OS command injection in Dokploy self-hosted PaaS (versions prior to 0.29.13) lets an authenticated admin/owner execute arbitrary commands on the underlying host, not merely inside a managed container. The backup/restore, destination, volume-backup, certificate, and mount code paths build bash -c/sh -c strings by directly interpolating user-controlled, database-backed fields (S3 credentials, paths, volume names) and run them through child_process.exec(). No public exploit is identified at time of analysis, but the fix in 0.29.13 confirms multiple confirmed injection sinks, and the container-to-host scope escape makes successful exploitation a full host compromise.

Technical ContextAI

Dokploy is a Node.js/TypeScript, self-hostable Platform-as-a-Service (a Heroku/Vercel-style deployment control plane) that orchestrates Docker containers. The affected component is its backup and infrastructure tooling, which shells out to utilities like rclone, base64, mkdir, and rm. The root cause is CWE-78 (Improper Neutralization of Special Elements used in an OS Command): fields such as S3 access keys, region, endpoint, provider, search paths, certificate data, mount file paths, and Docker volume names were concatenated into quoted shell strings (e.g. rclone lsjson ... "${searchPath}" and echo "${encodedContent}" | base64 -d > ${fullPath}) and passed to child_process.exec(), which spawns a shell. Any shell metacharacter in those values (backticks, $(), ;, |) breaks out of the intended command. The fix wraps arguments with shell-quote's quote() and adds a strict VOLUME_NAME_REGEX (^[a-zA-Z0-9][a-zA-Z0-9_.-]*$) allowlist for Docker volume names. The single CPE affected is cpe:2.3:a:dokploy:dokploy:*.

RemediationAI

Vendor-released patch: 0.29.13 - upgrade all Dokploy instances to v0.29.13 or later, which quotes shell arguments via shell-quote and enforces a Docker volume-name allowlist (see release https://github.com/Dokploy/dokploy/releases/tag/v0.29.13 and advisory GHSA-p2c7-8j28-c7gq). Until you can upgrade, reduce exposure by treating the admin/owner role as equivalent to host root: restrict the Dokploy web UI/API to trusted networks or a VPN rather than the public internet, minimize and audit the set of admin/owner accounts, and avoid granting that role to semi-trusted users - the trade-off is reduced day-to-day administrative convenience. As an interim control you can also avoid configuring or editing backup destinations, S3 credentials, certificates, mounts, and volume backups with untrusted input, since those are the fields that feed the vulnerable exec() calls; the side effect is that backup/restore workflows must be paused or tightly reviewed. These are compensating measures only - patching to 0.29.13 is the sole complete fix.

CVE-2026-24841 CRITICAL POC
9.9 Jan 28

Dokploy self-hosted PaaS prior to 0.26.6 has a critical command injection vulnerability (CVSS 9.9) allowing authenticate

CVE-2026-24840 HIGH POC
8.0 Jan 28

Dokploy versions before 0.26.6 contain hardcoded database credentials in the installation script, causing nearly all dep

CVE-2026-72901 CRITICAL
9.9 Aug 10

Command injection in Dokploy (self-hosted PaaS) before 0.29.13 lets an authenticated low-privilege member run arbitrary

CVE-2026-72735 CRITICAL
9.9 Aug 10

Command injection in Dokploy (self-hosted PaaS) before 0.29.13 lets an authenticated panel user run arbitrary commands o

CVE-2026-45631 CRITICAL
10.0 May 29

Remote code execution in Dokploy 0.27.0 through 0.29.2 allows unauthenticated attackers to forge email-verification JWTs

CVE-2026-72902 CRITICAL
9.9 Aug 10

Command injection in Dokploy (self-hostable PaaS) before 0.29.13 lets an authenticated user run arbitrary OS commands on

CVE-2026-72740 CRITICAL
9.9 Aug 10

OS command injection in Dokploy self-hosted PaaS before 0.29.13 lets an authenticated member with service-deployment per

CVE-2026-72738 CRITICAL
9.9 Aug 10

Command injection in Dokploy self-hostable PaaS before 0.29.13 lets an authenticated user with backup:read permission ru

CVE-2026-72867 CRITICAL
9.9 Aug 10

Authenticated command injection in Dokploy (self-hostable PaaS) versions 0.29.3 through 0.29.12 lets a low-privileged us

CVE-2026-72733 CRITICAL
9.9 Aug 10

OS command injection in Dokploy (self-hostable PaaS) before 0.29.13 lets an authenticated user holding the backup-restor

CVE-2026-72876 CRITICAL
9.9 Aug 10

Cross-tenant remote command execution in Dokploy (self-hosted PaaS) before 0.29.13 lets any authenticated user holding o

CVE-2026-72862 CRITICAL
9.9 Aug 10

Command injection in Dokploy self-hosted PaaS versions prior to 0.29.13 lets an authenticated user with database-service

Share

CVE-2026-72878 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy