CVE-2026-34034 Overview
Coolify is an open-source, self-hostable platform for managing servers, applications, and databases. CVE-2026-34034 is a command injection vulnerability [CWE-78] in the Coolify Sentinel component. The sentinel_token server setting is passed into shell commands without sufficient validation. An authenticated user with access to server Sentinel settings can inject shell syntax and execute arbitrary commands on the host when Sentinel is restarted. The issue affects all versions prior to 4.0.0-beta.466 and is fixed in that release.
Critical Impact
An authenticated Coolify user with Sentinel configuration access can achieve arbitrary command execution on the underlying host, compromising confidentiality, integrity, and availability of the managed server.
Affected Products
- Coolify versions prior to 4.0.0-beta.466
- Self-hosted Coolify deployments exposing Sentinel server settings to authenticated users
- Any host running Coolify Sentinel where the token can be modified by lower-privileged users
Discovery Timeline
- 2026-07-07 - CVE-2026-34034 published to NVD
- 2026-07-07 - Last updated in NVD database
Technical Details for CVE-2026-34034
Vulnerability Analysis
Coolify uses a user-controlled sentinel_token value when constructing shell commands executed during Sentinel start and restart operations. Because the value is interpolated into a shell context without escaping or strict validation, attackers can embed shell metacharacters such as backticks, $(), semicolons, or pipes. When the Sentinel service is restarted, the injected payload runs with the privileges of the Coolify Sentinel process on the host.
The vulnerability is classified as OS Command Injection [CWE-78]. Successful exploitation grants full command execution on the managed server, enabling credential theft, lateral movement to managed applications and databases, and persistence on the Coolify host.
Root Cause
The sentinelToken property in app/Livewire/Server/Sentinel.php was validated only as required. No character set, length, or format constraints were enforced before the value was used in shell command construction inside app/Actions/Server/StartSentinel.php. The Livewire component accepted any string and forwarded it to the action responsible for launching Sentinel, where it became part of a shell invocation.
Attack Vector
An authenticated user with access to the server Sentinel settings updates the token field with a malicious payload containing shell metacharacters. The next time Sentinel is started or restarted, either by the attacker or by normal operational activity, the injected commands run on the host. Attack complexity is low and no user interaction is required beyond triggering the restart.
// Security patch in app/Livewire/Server/Sentinel.php
// fix(sentinel): add token validation to prevent command injection
public bool $isMetricsEnabled;
- #[Validate(['required'])]
+ #[Validate(['required', 'string', 'max:500', 'regex:/\A[a-zA-Z0-9._\-+=\/]+\z/'])]
public string $sentinelToken;
public ?string $sentinelUpdatedAt = null;
Source: GitHub Commit 096d4369
The patch enforces a strict allow-list regex, restricts length to 500 characters, and rejects any token containing shell metacharacters.
Detection Methods for CVE-2026-34034
Indicators of Compromise
- Unexpected changes to the sentinel_token value in Coolify server settings, particularly values containing ;, |, `, $(, &&, or newline characters.
- Child processes spawned by the Coolify or Sentinel process that do not match legitimate Sentinel binaries, such as shells, curl, wget, or nc.
- Outbound network connections from the Coolify host to unknown external addresses immediately following a Sentinel restart event.
Detection Strategies
- Inspect the Coolify database server_settings table for tokens that fail the patched regex /\A[a-zA-Z0-9._\-+=\/]+\z/.
- Audit application logs for StartSentinel invocations correlated with unusual command executions on the host.
- Enable process telemetry on Coolify hosts and alert on shell interpreters launched as descendants of the Coolify or Sentinel service.
Monitoring Recommendations
- Monitor Coolify audit logs for Sentinel configuration updates and restarts, especially from non-administrative accounts.
- Track file integrity and cron modifications on Coolify hosts to detect post-exploitation persistence.
- Alert on egress traffic from Coolify servers to non-approved destinations following configuration changes.
How to Mitigate CVE-2026-34034
Immediate Actions Required
- Upgrade Coolify to 4.0.0-beta.466 or later, which enforces strict validation on the Sentinel token.
- Review current sentinel_token values across all managed servers and reset any tokens that do not match the safe character set.
- Restrict access to server Sentinel settings to trusted administrators only, and review team member permissions.
Patch Information
The fix is delivered in Coolify release v4.0.0-beta.466. Technical details are documented in GHSA-rpr8-p7jc-x844 and the corresponding remediation commit. The patch adds string, max:500, and a regex allow-list to the sentinelToken Livewire validator.
Workarounds
- If immediate upgrade is not possible, revoke Sentinel configuration permissions for all non-administrative users.
- Manually enforce token content by setting the sentinel_token only through a trusted process using alphanumeric characters, and monitor for out-of-band modifications.
- Disable Sentinel on affected servers until the patched version is deployed.
# Verify installed Coolify version and upgrade
docker exec coolify php artisan --version
docker exec coolify php artisan about | grep -i coolify
# Pull the fixed release and restart
cd /data/coolify/source
git fetch --tags
git checkout v4.0.0-beta.466
docker compose pull && docker compose up -d
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

