Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-34034

CVE-2026-34034: Coolify RCE Vulnerability

CVE-2026-34034 is a remote code execution flaw in Coolify that allows authenticated users to inject shell commands via the sentinel_token setting. This article covers technical details, affected versions, and mitigations.

Published:

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.

php
// 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.
bash
# 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.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.