CVE-2026-72869
Received Received - Intake

Command Injection in Dokploy Self-Hosted PaaS

Vulnerability report for CVE-2026-72869, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-10

Last updated on: 2026-08-10

Assigner: GitHub, Inc.

Description

Dokploy is a free, self-hostable Platform as a Service (PaaS). Prior to 0.29.13, the backup.restoreBackupWithLogs tRPC subscription passes the databaseName parameter to restore builders in packages/server/src/utils/restore/utils.ts, where PostgreSQL, MariaDB, MySQL, and MongoDB commands embed the value in nested shell text executed by Node.js exec. An authenticated user with backup:restore permission can supply a crafted databaseName that the host /bin/sh expands before docker exec, resulting in arbitrary commands running in the Docker-privileged host context. This issue is fixed in version 0.29.13.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-10
Last Modified
2026-08-10
Generated
2026-08-11
AI Q&A
2026-08-11
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
dokploy dokploy 0.29.13

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-77 The product constructs all or part of a command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended command when it is sent to a downstream component.
CWE-78 The product constructs all or part of an OS command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended OS command when it is sent to a downstream component.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability in Dokploy versions before 0.29.13 allows an authenticated user with backup restore permissions to execute arbitrary commands on the host system. The issue occurs because the backup.restoreBackupWithLogs function passes a user-controlled databaseName parameter to restore builders, which embeds the value in shell commands executed by Node.js. The host shell then expands the crafted input before Docker executes it, leading to command injection in the Docker-privileged host context.

Detection Guidance

Check Dokploy version with 'dokploy --version' or inspect package.json for version under 0.29.13. Review logs for unusual backup restore commands or shell expansions in packages/server/src/utils/restore/utils.ts. Monitor for unexpected Docker container activity or privileged host commands.

Impact Analysis

If you use Dokploy versions before 0.29.13, an attacker with backup restore permissions could gain full control over your host system. This includes executing arbitrary commands, accessing sensitive data, installing malware, or disrupting services. The attack requires authentication but can lead to complete system compromise.

Compliance Impact

This vulnerability could severely impact compliance with GDPR, HIPAA, and other regulations. It may result in unauthorized access to personal data, breaches of confidentiality, or loss of data integrity. Organizations could face fines, legal action, and reputational damage due to non-compliance with security requirements.

Mitigation Strategies

Upgrade Dokploy to version 0.29.13 or later immediately. Revoke backup:restore permissions from untrusted users. Audit recent backups for signs of exploitation. Disable Docker privileged mode if not required. Monitor network and system logs for suspicious activity.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-72869. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart