Description
Cline is an autonomous coding agent as an SDK, IDE extension, or CLI assistant. Prior to 3.0.30, the Cline Hub dashboard server launched by the cline dashboard command accepts WebSocket connections on the /browser endpoint without validating the Origin header, and when ROOM_SECRET is unset for local 127.0.0.1 binds, isAuthorizedBrowserRequest() allows attacker-controlled websites to send desktopCommand frames that read workspace state, mutate MCP and provider settings, and trigger command execution when a provider or model is configured. This issue is fixed in version 3.0.30.
Published: 2026-07-08
Score: 8.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Cline Hub dashboard server, when started by the cline dashboard command, exposes a WebSocket endpoint for the /browser path without requiring an Origin header. This is a CWE‑346 flaw, representing a missing Origin header check that allows unrestricted browser connections. When the local ROOM_SECRET variable is unset, the isAuthorizedBrowserRequest() logic accepts any connection from an attacker‑controlled website. An attacker can therefore send desktopCommand frames that read the workspace state, modify model‑provider settings, and trigger command execution if a provider or model is configured. The flaw allows an attacker to achieve remote code execution on the host running the dashboard, which is a serious breach of confidentiality, integrity, and availability.

Affected Systems

This vulnerability affects the Cline Hub dashboard server, part of the cline:cline product. All releases before version 3.0.30 are vulnerable. Users running the dashboard on a local 127.0.0.1 binding are impacted unless the ROOM_SECRET environment variable is set. No explicit version list is provided beyond the note that version 3.0.30 contains the fix.

Risk and Exploitability

The CVSS score is 8.8, indicating a high severity. The EPSS score is < 1%, indicating a very low exploitation probability. The issue is not listed in the CISA KEV catalog. Based on the description, the likely attack vector involves an attacker‑hosted web page that the victim opens while the Cline dashboard is running locally; the page then initiates a WebSocket connection to http://127.0.0.1:port/browser, exploiting the missing Origin check to send malicious frames. This scenario requires the user to be running the vulnerable dashboard, the device to bind locally, and the attacker to control a web page accessible to the user. The impact is therefore significant if these conditions are met.

Generated by OpenCVE AI on July 26, 2026 at 16:27 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to Cline version 3.0.30 or later, where the HTTP and WebSocket endpoints validate the Origin header and enforce a ROOM_SECRET.
  • If upgrade is not immediately feasible, set the ROOM_SECRET environment variable to a non‑empty value so that the dashboard requires this secret before accepting browser WebSocket connections.
  • As a temporary mitigation, restrict local access to the dashboard by using a local firewall or reverse proxy to reject WebSocket connections from unexpected Origin headers or external IP addresses.

Generated by OpenCVE AI on July 26, 2026 at 16:27 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 09 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 08 Jul 2026 23:45:00 +0000

Type Values Removed Values Added
First Time appeared Cline
Cline cline
Vendors & Products Cline
Cline cline

Wed, 08 Jul 2026 22:30:00 +0000

Type Values Removed Values Added
Description Cline is an autonomous coding agent as an SDK, IDE extension, or CLI assistant. Prior to 3.0.30, the Cline Hub dashboard server launched by the cline dashboard command accepts WebSocket connections on the /browser endpoint without validating the Origin header, and when ROOM_SECRET is unset for local 127.0.0.1 binds, isAuthorizedBrowserRequest() allows attacker-controlled websites to send desktopCommand frames that read workspace state, mutate MCP and provider settings, and trigger command execution when a provider or model is configured. This issue is fixed in version 3.0.30.
Title Cline: Cross-Origin WebSocket Hijacking in Cline Hub Dashboard (`/browser` endpoint)
Weaknesses CWE-346
References
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:A/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-10T03:55:42.182Z

Reserved: 2026-07-06T15:34:16.916Z

Link: CVE-2026-59723

cve-icon Vulnrichment

Updated: 2026-07-09T14:16:23.940Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-26T16:30:07Z

Weaknesses