Database/Container, Kubernetes & orchestration
Dokploy: swarm endpoints skip the tenant check and inject nodeId into a remote command
Impact
Four swarm read endpoints accept a serverId belonging to another organization without checking activeOrganizationId, so a caller with only server:read can enumerate and query servers owned by other tenants. getNodeInfo then interpolates the caller-supplied nodeId into the string passed to execAsyncRemote, turning that cross-tenant read into arbitrary command execution as the configured SSH user on the other tenant's server. On a shared Dokploy instance managing build or deploy hosts, a low-privilege member of one organization gets a shell on infrastructure belonging to another - the tenant boundary the product exists to enforce is absent on this path. If the SSH user has Docker socket access, the shell is host-root-equivalent.
Who can reach it
Network access to the Dokploy API with an authenticated account holding server:read in any organization. No cross-tenant membership needed - the serverId of the target is the only thing required.
What to do
Upgrade to Dokploy 0.29.13 and restart the Dokploy stack (fix in commit 5563699). No mitigation short of the upgrade is published; revoking server:read from members narrows who can reach the path but does not close it. Restarting the Dokploy control plane interrupts in-flight deploys but does not require touching the managed nodes. On a shared instance, assume the SSH keys and any secrets reachable from the managed servers may have been exposed and rotate them.
References
Related entries
- Dokploy: unquoted volumeName in volume backups gives root-equivalent execution on the control-plane hostCVE-2026-72901 · Dokploy volume backups (volumeName in volumeBackup.create / runManually)Critical
- KubeVirt: Improper symlink validation in virt-handler lets a user with edit rights in one namespace escape to the hostCVE-2026-7374 · KubeVirtCritical
- Helm: Improper certificate validation allows unauthorized clients to connect to TillerCVE-2019-1010275 · HelmCritical
- Docker / moby: Code injection into `docker cp` via nsswitch loading a library from the container chrootCVE-2019-14271 · Docker / mobyCritical
- Helm: Malicious chart includes sensitive host content such as /etc/passwd, or triggers DoS, when loadedCVE-2019-18658 · HelmCritical
- Envoy: HTTP/2 request writes to the heap outside request buffers when the upstream is HTTP/1CVE-2019-18801 · EnvoyCritical
This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.