Severity by source
AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Primary rating from Vendor (GitHub_M) · only source for this CVE.
CVSS VectorVendor: GitHub_M
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Lifecycle Timeline
3DescriptionCVE.org
Dokploy is a free, self-hostable Platform as a Service (PaaS). From 0.27.0 to before 0.29.3, a hardcoded BETTER_AUTH_SECRET fallback ("better-auth-secret-123456789") lets an unauthenticated attacker forge email verification JWTs, trigger auto-sign-in as admin, and execute commands on the host via the built-in SSH terminal. This vulnerability is fixed in 0.29.3.
AnalysisAI
Remote code execution in Dokploy 0.27.0 through 0.29.2 allows unauthenticated attackers to forge email-verification JWTs using a hardcoded BETTER_AUTH_SECRET fallback ('better-auth-secret-123456789'), auto-sign-in as admin, and run arbitrary commands on the host through the built-in SSH terminal. The flaw carries a CVSS 10.0 score with network attack vector and no required privileges, and while no public exploit is identified at time of analysis, the trivially guessable secret makes weaponization straightforward.
Technical ContextAI
Dokploy is a self-hostable Platform-as-a-Service (PaaS) similar to Heroku/Vercel that uses the better-auth authentication library for session and email-verification token management. better-auth signs JWTs (including the email verification token consumed during sign-up/sign-in flows) with the BETTER_AUTH_SECRET environment variable; when operators failed to set this variable, Dokploy fell back to the literal string 'better-auth-secret-123456789' baked into the source. This is a textbook CWE-798 (Use of Hard-coded Credentials) issue: because the secret is public knowledge in the source tree, any attacker can mint valid signed tokens. Combined with Dokploy's built-in browser SSH terminal - a feature intentionally exposed to authenticated admins for managing the host running the PaaS - token forgery escalates directly to host command execution.
RemediationAI
Upgrade immediately to Dokploy 0.29.3 or later, which is the vendor-released patch per the GitHub Security Advisory GHSA-w3gm-rc4p-9rhj (https://github.com/Dokploy/dokploy/security/advisories/GHSA-w3gm-rc4p-9rhj). As a pre-upgrade workaround, set a strong, randomly generated BETTER_AUTH_SECRET environment variable (e.g., 'openssl rand -base64 48') and restart Dokploy - this breaks the hardcoded-fallback code path and invalidates any tokens an attacker may have already forged (existing legitimate sessions will also need to re-authenticate). If patching is not immediately possible, additionally restrict the Dokploy web UI to a VPN or trusted IP allowlist via a reverse proxy or host firewall, since the attack requires network reachability to the auth endpoint; note this still leaves any user who can reach the UI (including internal attackers) able to exploit. After patching, rotate the BETTER_AUTH_SECRET, force-invalidate all existing sessions, audit the admin user list and SSH terminal command history for unauthorized activity, and rotate any credentials/SSH keys stored within Dokploy.
Dokploy self-hosted PaaS prior to 0.26.6 has a critical command injection vulnerability (CVSS 9.9) allowing authenticate
Dokploy versions before 0.26.6 contain hardcoded database credentials in the installation script, causing nearly all dep
Command injection in Dokploy (self-hosted PaaS) before 0.29.13 lets an authenticated low-privilege member run arbitrary
Command injection in Dokploy (self-hostable PaaS) before 0.29.13 lets an authenticated user run arbitrary OS commands on
Authenticated command injection in Dokploy (self-hostable PaaS) versions 0.29.3 through 0.29.12 lets a low-privileged us
Command injection in Dokploy self-hosted PaaS versions prior to 0.29.13 lets an authenticated user with database-service
OS command injection in Dokploy (self-hosted PaaS) before 0.29.13 lets a low-privileged team member with service-deploym
Command injection in Dokploy self-hosted PaaS before 0.29.13 lets a low-privileged organization member run arbitrary OS
OS command injection in Dokploy (self-hosted PaaS) version 0.28.8 and earlier lets an authenticated user with permission
OS command injection in Dokploy (self-hosted PaaS) before 0.29.13 lets an authenticated user with the backup:restore per
OS command injection in Dokploy self-hosted PaaS prior to 0.29.13 lets an authenticated project member with compose writ
Server-side command injection and path traversal in Dokploy, a self-hostable Platform-as-a-Service, allows an authentica
Same weakness CWE-798 – Use of Hard-coded Credentials
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-33355