Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Network-reachable WebSocket needing only a low-privileged member (PR:L) and no interaction; the app-to-host Docker-socket escape justifies S:C with full C/I/A high.
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, Dokploy's WebSocket handlers (in-app terminals and log streamers) authenticate the session but never authorize it. They establish who the user is via validateRequest() and then proceed without consulting the role/permission model that every tRPC procedure enforces. Any authenticated member, can therefore open an interactive shell into any container on the host, including the dokploy container that mounts the Docker socket, and from there obtain root on the host, escaping the application and crossing every tenant boundary. This vulnerability is fixed in 0.29.13.
Articles & Coverage 1
AnalysisAI
Privilege escalation to host root in Dokploy self-hosted PaaS versions prior to 0.29.13 allows any authenticated organization member to hijack WebSocket terminal and log-streaming handlers that authenticate the session but never check the role/permission model enforced elsewhere. Because these handlers can open an interactive shell into any container - including the Dokploy container that mounts the Docker socket - a low-privileged tenant can obtain root on the host and cross every tenant boundary. No public exploit identified at time of analysis, though the upstream fix commit and a regression test are public. The CVSS is 9.9 driven by scope change and full CIA impact.
Technical ContextAI
Dokploy is a self-hostable Platform-as-a-Service (a Heroku/Vercel alternative) that manages application containers via the Docker Engine, orchestrated through a control-plane container that bind-mounts the host Docker socket. It exposes tRPC procedures for its API (which correctly enforce a role/permission model) plus separate WebSocket handlers for in-app container terminals, host SSH terminals, and log/stat streamers. The root cause maps to CWE-269 (Improper Privilege Management): the WSS handlers call validateRequest() to establish identity (authentication) but never call the authorization layer (hasPermission / findMemberByUserId / getAccessibleServerIds) that every tRPC procedure consults, so authentication was mistaken for authorization. Mounting the Docker socket means any shell into the Dokploy container is equivalent to root on the underlying host, since the Docker API can launch privileged containers. Affected CPE is cpe:2.3:a:dokploy:dokploy:*:*:*:*:*:*:*:*.
RemediationAI
Vendor-released patch: upgrade to Dokploy 0.29.13 (https://github.com/Dokploy/dokploy/releases/tag/v0.29.13), which adds the missing authorization layer in the WebSocket handlers as shown in commit 68f5afae42fca353dcb3d3bc6219ffe9e168cb91 and documented in advisory GHSA-7r6p-v9gw-pwc8. This is the primary and recommended fix. If you cannot upgrade immediately, reduce exposure by restricting organization membership to fully trusted operators only (removing or suspending low-privileged member accounts), and place the Dokploy web/WebSocket interface behind a network control such as a VPN or IP allowlist so only trusted operators can reach it - the trade-off is loss of self-service access for legitimate members. Where feasible, avoid running multi-tenant/multi-member organizations on a single host until patched, since the flaw crosses tenant boundaries. These are stopgaps only; the authorization gap itself can only be closed by the 0.29.13 update.
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-269 – Improper Privilege Management
View allSame technique Privilege Escalation
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-55703