Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Network-reachable web UI (AV:N/AC:L), requires an app-edit account (PR:L), no interaction (UI:N); command escapes container to the host so scope changes (S:C) with full host C/I/A impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
3DescriptionCVE.org
Coolify is an open-source and self-hostable tool for managing servers, applications, and databases. Prior to 4.0.0-beta.469, the executeInDocker() helper wraps user-controlled commands in single quotes without escaping embedded single quotes. Attackers who can edit application settings can inject a single quote into docker_compose_custom_build_command or docker_compose_custom_start_command to break out of the quoted context and execute arbitrary commands on the managed server host during deployments, escaping the intended Docker container confinement. This issue is fixed in version 4.0.0-beta.469.
AnalysisAI
OS command injection in Coolify, the open-source self-hostable server/application/database management PaaS, allows an authenticated user with permission to edit application settings (versions prior to 4.0.0-beta.469) to run arbitrary commands on the managed host. The flaw lives in the executeInDocker() helper, which wraps user-controlled values in single quotes without escaping embedded quotes, letting an attacker break out of the quoted shell context during deployments and escape the intended Docker container confinement. No public exploit identified at time of analysis; this is not listed in CISA KEV.
Technical ContextAI
Coolify is a Laravel/PHP-based self-hosted deployment platform (an open-source alternative to Heroku/Netlify) that orchestrates Docker containers on managed servers. The vulnerable executeInDocker() helper constructs shell command strings by naively wrapping user-supplied fields - specifically docker_compose_custom_build_command and docker_compose_custom_start_command - in single quotes. Because embedded single quotes are not escaped or sanitized, this is a classic CWE-78 (Improper Neutralization of Special Elements used in an OS Command) shell-metacharacter breakout: a payload containing a single quote terminates the intended quoted argument and appends attacker-controlled shell syntax. The injected command executes in the deployment context on the host operating system rather than inside the confined container.
RemediationAI
Vendor-released patch: upgrade Coolify to version 4.0.0-beta.469 or later, which fixes the improper quoting in executeInDocker(), as documented in advisory GHSA-j6j2-frv3-g6f7 (https://github.com/coollabsio/coolify/security/advisories/GHSA-j6j2-frv3-g6f7). If immediate upgrade is not possible, restrict who can edit application settings by tightening account provisioning and removing application-edit permissions from untrusted or non-administrative users, since exploitation requires that privilege (trade-off: limits legitimate self-service deployment configuration). As an additional compensating control, avoid granting Coolify management accounts to untrusted parties on shared/multi-tenant instances and audit the docker_compose_custom_build_command and docker_compose_custom_start_command fields for embedded single quotes or shell metacharacters (trade-off: manual review does not scale and can be bypassed by novel payloads). Isolating the Coolify host and monitoring deployment processes for unexpected child commands can help detect abuse until patched.
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
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
Vasion Print (formerly PrinterLogic) Virtual Appliance Host prior to version 25.2.169 and Application prior to version 2
Same weakness CWE-78 – OS Command Injection
View allSame technique Command Injection
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-41998