CVEReports
CVEReports

Automated vulnerability intelligence platform. Comprehensive reports for high-severity CVEs generated by AI.

Product

  • Home
  • Sitemap
  • RSS Feed

Company

  • About
  • Contact
  • Privacy Policy
  • Terms of Service

© 2026 CVEReports. All rights reserved.

Made with love by Amit Schendel & Alon Barad



GHSA-H4G2-XFMW-Q2C9

GHSA-H4G2-XFMW-Q2C9: Missing Authentication Bypass in Clauster Configuration Validator

Amit Schendel
Amit Schendel
Senior Security Researcher

Jul 10, 2026·5 min read·33 visits

Executive Summary (TL;DR)

Clauster v0.2.1 and below allows a silent authentication bypass on non-loopback network bindings if the 'auth.enabled' configuration key is omitted, leading to remote code execution.

Clauster versions up to and including v0.2.1 suffer from an authentication bypass vulnerability. This issue occurs when Clauster is configured with an authentication method but the master auth.enabled key is omitted or set to false, allowing unauthenticated network access to administrative endpoints and arbitrary code execution through managed Claude Code bridges.

Vulnerability Overview

Clauster is a self-hosted web user interface and launcher designed to manage Claude Code remote-control bridges. The platform exposes administrative endpoints to manage active bridges, monitor logs, and configure workspace settings. Claude Code remote-control bridges execute system commands in local project directories under the privileges of the hosting process.

In versions up to and including v0.2.1, Clauster contains a missing authentication vulnerability classified as CWE-306. When deployed on a network-exposed interface without loopback restrictions, the application exposes administrative control APIs and configuration interfaces unauthenticated if the master switch auth.enabled is not explicitly set to true.

This flaw allows unauthenticated remote attackers with network access to the port to access the dashboard and control endpoints. Attackers can leverage this access to execute arbitrary commands through the managed Claude Code bridges, gaining remote code execution on the underlying host system.

Root Cause Analysis

The vulnerability arises from a logic mismatch between the configuration validator and the runtime authentication enforcement layer. The application employs a fail-open design when validating network interfaces and configured credentials.

At runtime, the authentication middleware checks incoming requests only if auth.enabled is explicitly set to true. If auth.enabled is set to false or omitted entirely, the auth guard is bypassed, and all API calls are processed without authentication verification. This design ignores other configured variables such as password_required or reverse_proxy.enabled during runtime checks.

In vulnerable versions, the configuration validator in src/clauster/config.py permitted non-loopback bindings as long as password_required or reverse_proxy.enabled were configured, without verifying that the master auth.enabled key was active. Consequently, operators who configured credentials but omitted the master auth.enabled switch had their configurations validated successfully while the application remained completely unprotected.

Code Patch Analysis

The vulnerability was patched in version v0.2.2 by introducing a robust fail-closed validation routine. A new helper function, _missing_enforced_auth, was added to determine whether a configuration enforces authentication at runtime.

def _missing_enforced_auth(host: str, auth: AuthConfig) -> bool:
    """Return True when binding host would NOT actually enforce authentication."""
    if host in _LOOPBACK_HOSTS:
        return False
    return not (auth.enabled and (auth.password_required or auth.reverse_proxy.enabled))

The configuration validator _loopback_or_authed was updated to utilize this helper. When a non-loopback host is bound and _missing_enforced_auth evaluates to true, the validator raises a ValueError unless the operator has explicitly configured allow_unauthenticated_network to bypass the security check.

a = self.auth
if _missing_enforced_auth(self.host, a) and not a.allow_unauthenticated_network:
    raise ValueError(
        f"refusing non-loopback host={self.host!r} without enforced auth. Set "
        "auth.enabled: true together with auth.password_required ..."
    )

The update also modified administrative diagnostics in src/clauster/ops.py to use the same logic, preventing situations where the setup validator and runtime diagnostics disagree on configuration safety.

Exploitation Methodology

An attacker with network access to the exposed Clauster port can verify the vulnerability by making a direct request to the /api/instances endpoint. Since the authentication guard evaluates auth.enabled as false, it does not prompt for user credentials.

A vulnerable instance returns an HTTP 200 OK status code and a JSON response detailing active projects. A secured instance returns an HTTP 401 Unauthorized status code or is unable to boot due to validation failures.

Once administrative endpoint access is established, the attacker can use the exposed API to list directory structures, view workspace logs, and spawn a Claude Code remote-control bridge. Because the Claude Code process runs commands in the context of the configured directories, the attacker achieves arbitrary command execution.

Impact Assessment

The security impact of this vulnerability is critical, leading to unauthorized code execution with the privileges of the process running Clauster. Successful exploitation yields complete control over the underlying environment and projects managed by the application.

Attackers can access sensitive environment variables, retrieve stored database credentials, manipulate project source code, and compromise the integrity of host files. Because the managed application integrates directly with Claude Code bridges, control over the dashboard acts as a gateway for local shell execution.

This vulnerability has been evaluated with a CVSS v4.0 score of 8.7, reflecting High impact on confidentiality, integrity, and availability. The threat model is highly applicable to deployments utilizing Docker containers, which often bind to 0.0.0.0 by default to handle inter-container network traffic.

Hardening and Mitigation

The recommended remediation is to upgrade the Clauster installation to version v0.2.2 or higher. The updated configuration validator ensures the application will fail to launch if an insecure non-loopback binding is detected.

If upgrading is not immediately possible, operators must verify that auth.enabled is explicitly set to true inside clauster.yml. The configuration must combine this setting with valid credentials, as shown below:

# Secure configuration snippet
host: 0.0.0.0
port: 7621
auth:
  enabled: true
  password_required: true
  password_hash: "$argon2id$v=19$m=65536,t=3,p=4$..."

Additionally, restricting the application binding to loopback (127.0.0.1) minimizes the attack surface. For containerized deployments, mapping ports specifically to loopback addresses prevents external network exposure even if the internal container process binds to wildcard interfaces.

Official Patches

schubydooVulnerability patch and version comparison diff

Fix Analysis (1)

Technical Appendix

CVSS Score
8.7/ 10
CVSS:4.0/AV:A/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Affected Systems

Clauster

Affected Versions Detail

Product
Affected Versions
Fixed Version
Clauster
schubydoo
<= 0.2.1v0.2.2
AttributeDetail
CWE IDCWE-306
Attack VectorAdjacent Network
CVSS v4 Score8.7
Exploit StatusPoC Available
ImpactRemote Code Execution (RCE)
Affected ComponentConfiguration Validator & Auth Guard

MITRE ATT&CK Mapping

T1190Exploit Public-Facing Application
Initial Access
T1059Command and Scripting Interpreter
Execution
T1556Modify Authentication Process
Credential Access
CWE-306
Missing Authentication for Critical Function

The product does not perform any authentication for functionality that requires a proven identity.

Vulnerability Timeline

Vulnerability Disclosed and Patched in v0.2.2
2026-06-03

References & Sources

  • [1]GHSA-H4G2-XFMW-Q2C9 on GitHub Advisory Database
  • [2]Clauster Repository Security Advisory

Attack Flow Diagram

Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.

More Reports

•about 1 hour ago•CVE-2026-107715
6.8

CVE-2026-107715: Information Disclosure and Credential Leakage in Ruby Mechanize via Cross-Origin Redirections

Ruby Mechanize prior to version 2.14.1 contains an information disclosure vulnerability. When executing cross-origin HTTP redirects, global headers configured on the Mechanize agent (such as Authorization or Session Cookies) are dynamically re-applied to the subsequent request, bypassing the internal header-stripping logic. An attacker who controls a redirection endpoint can capture sensitive bearer tokens or cookies.

Alon Barad
Alon Barad
2 views•7 min read
•about 2 hours ago•CVE-2026-107399
6.8

CVE-2026-107399: Information Disclosure via HTML Meta-Refresh in Ruby Mechanize

An origin trust boundary failure in the Ruby mechanize library (prior to v2.14.1) allows unauthenticated remote web servers to harvest sensitive global request headers, such as Authorization Bearer tokens and cookies, by utilizing HTML-level meta-refresh redirection tags. Standard HTTP-level redirect boundaries were not applied to document-level redirects, creating a vector for cross-origin credential leakage during automated crawls.

Amit Schendel
Amit Schendel
4 views•5 min read
•about 3 hours ago•CVE-2026-107718
6.1

CVE-2026-107718: Open Redirect Vulnerability in @adonisjs/http-server

CVE-2026-107718 is a medium-severity Open Redirect vulnerability in the core HTTP server package of the AdonisJS Node.js framework. Prior to versions 8.2.3 and 9.3.0, the framework built route paths by directly interpolating dynamic parameters and wildcard segments without URI encoding. If an application routes attacker-controlled input directly to a dynamic first path segment and uses the generated route URL as a redirect destination, a leading slash can produce a scheme-relative external URL. Modern web browsers process scheme-relative URLs by redirecting the client to the specified external domain, exposing users to credential harvesting, social engineering, and session hijacking. This vulnerability affects all applications running unpatched configurations where input validation is not explicitly implemented before generating paths.

Alon Barad
Alon Barad
4 views•6 min read
•about 4 hours ago•CVE-2026-107725
8.7

CVE-2026-107725: Remote Code Execution via Authorization Bypass in Hazelcast Predicates API

CVE-2026-107725 is a critical security bypass in Hazelcast where missing authorization checks in the MapPermission class permit unprivileged clients to issue queries containing aggregators or projections. This architectural oversight allows attackers to run arbitrary code on the cluster servers under the privileges of the active Hazelcast process.

Amit Schendel
Amit Schendel
5 views•7 min read
•about 5 hours ago•CVE-2026-107396
5.4

CVE-2026-107396: Stored Cross-Site Scripting (XSS) in Indico

A stored Cross-Site Scripting (XSS) vulnerability was identified in Indico, an open-source event management system developed at CERN, prior to version 3.3.13. The vulnerability stems from weak URL validation in custom link fields and lack of HTML sanitization during Marshmallow serialization of event notes. This allows authenticated attackers with event modification privileges to inject malicious payloads that execute in the browser of users viewing the event pages or collaborating on notes.

Alon Barad
Alon Barad
4 views•6 min read
•about 6 hours ago•CVE-2026-107397
4.4

CVE-2026-107397: Stored Cross-Site Scripting via Collaborative Editor Conflict Resolution and Custom Link Fields in Indico

A technical analysis of CVE-2026-107397, a stored Cross-Site Scripting (XSS) vulnerability in Indico's collaborative notes editor and custom link generation fields. Prior to version 3.3.13, Marshmallow serialization schemas omitted HTML sanitization during conflict resolution, and form validators failed to enforce strict URI schemes, enabling authenticated low-privilege attackers to execute arbitrary JavaScript.

Alon Barad
Alon Barad
0 views•7 min read