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



CVE-2026-53857

CVE-2026-53857: Authentication Bypass via Mutable Display Name Spoofing in OpenClaw allowFrom Policy

Alon Barad
Alon Barad
Software Engineer

Jun 19, 2026·5 min read·40 visits

Executive Summary (TL;DR)

OpenClaw versions prior to 2026.5.3 authenticate Zalo users using their mutable display names rather than unique user IDs. Attackers can bypass access controls simply by changing their display name to match an authorized user's name.

CVE-2026-53857 (GHSA-8c59-hr4w-qg69) is a high-severity authentication bypass vulnerability in OpenClaw (formerly Moltbot/Clawdbot) versions prior to 2026.5.3. The vulnerability arises from an insecure authorization mechanism in the Zalo messaging platform integration. Instead of matching access-control whitelist criteria to persistent and immutable user identifiers, the OpenClaw framework evaluated permissions based on mutable, user-controlled display names. An attacker can exploit this weakness by changing their Zalo profile display name to match a legitimate identity authorized in the allowFrom policy, gaining full access to restricted agent capabilities.

Vulnerability Overview

The OpenClaw integration framework incorporates a flexible chatbot and autonomous agent architecture designed to operate across several messaging platforms, including the Zalo communication network. To restrict access to sensitive backend commands, LLM interactions, and proprietary workflows, administrators configure an access-control whitelist parameter known as allowFrom. This configuration directs the framework to only process incoming messages and execute agent capabilities when they originate from trusted, authorized contacts.

However, in versions preceding 2026.5.3, the system trust boundary was structured incorrectly. Rather than relying on cryptographically unique or system-assigned backend identifiers, the underlying access-control check evaluated the incoming user identity using the mutable 'Display Name' metadata provided by the Zalo API. This implementation creates a direct path for authentication bypass.

An attacker who knows the display name of any authorized user listed in the configuration can manipulate their own profile settings to adopt the target name. Because the OpenClaw integration engine matches raw string values of presentation metadata, the attacker is authorized as the legitimate target. This flaw allows unauthorized commands to be executed without triggering any structural errors in the messaging flow.

Root Cause Analysis

The technical failure resides in the message processing logic of the Zalo channel adapter within the OpenClaw codebase. In the Zalo platform architecture, each registered account contains two distinct identity markers: a stable, system-assigned immutable account identifier (such as a UUID or internal user hash) and a profile display name, which is fully customizable and controlled by the account owner.

When a Zalo user transmits a message to the bot, the platform dispatches a webhook event containing a structured JSON payload to the OpenClaw server. This payload contains both the user's stable unique ID and the current display name string in the sender metadata object. In vulnerable versions of the framework, the allowFrom verification function parsed the incoming event but bypassed the unique identifier entirely during policy matching.

Instead, the logic looped through the configured whitelist strings and compared them directly against the sender.display_name property. Because this property represents user-controlled metadata rather than an authenticated identity, the matching logic is unable to guarantee authenticity. Consequently, any network-adjacent user can construct an identical display name string and trigger a positive match inside the policy engine.

Code Analysis and Comparison

To understand the logic flaw, consider the implementation of the authorization checker prior to version 2026.5.3. The vulnerable verification loop processed incoming message objects by inspecting the presentation layer metadata:

// Vulnerable logic in OpenClaw < 2026.5.3
func (b *Bot) IsAuthorized(sender *ZaloSender) bool {
    for _, allowed := range b.Config.AllowFrom {
        // INSECURE: Comparing mutable presentation name
        if sender.DisplayName == allowed {
            return true
        }
    }
    return false
}

The matching comparison operates on the DisplayName string, which is vulnerable to collision and spoofing. To address this risk, the patch in version 2026.5.3 alters the schema definition and validation routine to bind authorization checks strictly to immutable system identifiers:

// Patched logic in OpenClaw >= 2026.5.3
func (b *Bot) IsAuthorized(sender *ZaloSender) bool {
    for _, allowedID := range b.Config.AllowFrom {
        // SECURE: Comparing system-assigned immutable identifier
        if sender.UserID == allowedID {
            return true
        }
    }
    return false
}

The revised architecture ensures that even if an unauthorized sender alters their local display name to match a legitimate administrator's name, the Zalo platform API continues to report the attacker's actual, distinct UserID. The policy evaluation engine fails to find this UserID in the allowFrom whitelist, successfully blocking the request.

Exploitation Mechanics

Exploiting this vulnerability requires no specialized exploitation frameworks, binary payloads, or complex timing attacks. An attacker must first identify a valid user listed in the target's allowFrom configuration. This information can often be gathered via OSINT, public interaction logs, shared group chats, or simple trial-and-error using common administrator names.

Once a target identity is identified, the attacker opens their own Zalo profile settings and modifies their personal display name to match the target string exactly. The attacker then initiates contact with the OpenClaw bot instance. Since the Zalo API dynamically includes the updated display name string in incoming webhook payloads, the dispatched event carries the spoofed attribute.

The server receives the request, parses the payload, and compares the spoofed display name string directly against the authorized configurations. The condition evaluates to true, authorizing the attacker session to run administrative functions or access sensitive context windows.

Security Impact Assessment

The impact of this vulnerability is high, carrying a CVSS v4.0 score of 8.6. Because OpenClaw agents are often configured with extensive access to internal APIs, private vector databases, and system shells, bypassing the allowFrom policy exposes these integrations directly to external manipulation.

An attacker can use this bypass to extract sensitive files, query internal databases via natural language commands, or exhaust LLM API quotas. Furthermore, if the agent has been configured with execution-level toolsets (such as system shell integration or code interpreters), successful exploitation can lead to remote code execution on the hosting infrastructure.

Because the vulnerability is exploited using valid platform interactions, host-based firewalls, traditional network intrusion detection systems, and web application firewalls will not detect the attack. The request mimics a legitimate incoming chat message, rendering standard endpoint protection tools blind to the spoofing activity.

Technical Appendix

CVSS Score
8.6/ 10
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
EPSS Probability
0.21%
Top 89% most exploited

Affected Systems

OpenClaw Integration Framework

Affected Versions Detail

Product
Affected Versions
Fixed Version
OpenClaw
OpenClaw
< 2026.5.32026.5.3
AttributeDetail
CWE IDCWE-290 (Authentication Bypass by Spoofing)
Attack VectorNetwork (AV:N)
CVSS v4.0 Score8.6 (High)
EPSS Score0.00213 (Percentile: 11.50%)
ImpactHigh Confidentiality, High Integrity (VC:H/VI:H)
Exploit StatusNo public exploits or weaponized PoCs available
KEV StatusNot listed in the CISA KEV Catalog

MITRE ATT&CK Mapping

T1078Valid Accounts
Defense Evasion
T1556Modify Authentication Process
Credential Access
CWE-290
Authentication Bypass by Spoofing

The software performs security checks based on attributes that can be spoofed, allowing attackers to bypass authentication controls.

Vulnerability Timeline

Vulnerability Disclosed & CVE-2026-53857 Published
2026-06-16
GitHub Security Advisory GHSA-8c59-hr4w-qg69 Released
2026-06-16
OpenClaw Version 2026.5.3 Released with Remediation Patch
2026-06-16
Vulnerability Metadata Updated in National Registries
2026-06-18

References & Sources

  • [1]GitHub Security Advisory GHSA-8c59-hr4w-qg69
  • [2]VulnCheck Advisory for OpenClaw Mutable Display Name Binding
  • [3]Wiz Vulnerability Database Entry
  • [4]CVE-2026-53857 Record

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 11 hours ago•CVE-2026-12411
8.4

CVE-2026-12411: Cross-Guest Volume Hijack via DevLXD Device PATCH in Canonical LXD

CVE-2026-12411 is a broken access control vulnerability in the DevLXD interface of Canonical LXD versions 6.6 through 6.8. The flaw resides in the devLXDInstancePatchHandler component, which fails to verify storage volume ownership when an instance attaches a new disk device via the /dev/lxd guest socket. When the security.devlxd.management.volumes configuration option is enabled, an untrusted guest or DevLXD identity can issue a crafted HTTP PATCH request referencing another tenant's custom storage volume. The LXD host daemon subsequently mounts the target volume into the requesting guest, permitting unauthorized cross-tenant read and write operations.

Amit Schendel
Amit Schendel
6 views•10 min read
•about 12 hours ago•CVE-2026-105769
9.3

CVE-2026-105769: Azure Entra ID Token Exfiltration in Kaniko via Unanchored ACR Hostname Regex

CVE-2026-105769 (GHSA-5q7h-w9jf-cx97, GO-2026-6225) is an origin validation error and credential exfiltration vulnerability affecting Kaniko prior to version 1.25.20. The flaw stems from an unanchored regular expression in the integrated Azure Container Registry (ACR) credential helper (github.com/chrismellard/docker-credential-acr-env). When Kaniko processes a Dockerfile containing an image reference hosted on a lookalike domain containing an ACR suffix as a substring (e.g., x.azurecr.io.attacker.com), the credential helper acquires a Microsoft Entra ID access token for Azure Resource Manager and transmits it via HTTP POST to the attacker-controlled host.

Amit Schendel
Amit Schendel
10 views•11 min read
•about 13 hours ago•CVE-2026-62300
6.5

CVE-2026-62300: Uncontrolled Resource Consumption in filecoin-pin Daemon

CVE-2026-62300 is an uncontrolled resource consumption vulnerability (CWE-400) affecting the daemon mode of filecoin-pin in versions up to and including 1.1.0. The daemon implements the IPFS Pinning Service API to store content on Filecoin's Proof of Data Possession (PDP) service. Due to the absence of rate limits, concurrency caps, execution timeouts, and Directed Acyclic Graph (DAG) traversal limits, an authenticated user—or an unauthenticated user when authentication is disabled—can exhaust system resources via crafted POST /pins requests.

Amit Schendel
Amit Schendel
8 views•11 min read
•about 14 hours ago•CVE-2026-61536
7.5

CVE-2026-61536: Remote Code Execution via Unsafe Reflection in masci/banks CompletionExtension

CVE-2026-61536 is a high-severity Remote Code Execution (RCE) vulnerability in the masci/banks Python library prior to version 2.4.3. The flaw exists within the CompletionExtension component, which parses JSON-serialized Tool definitions directly from rendered Jinja template bodies inside {% completion %} blocks. When handling tool calls returned by an LLM, the library dynamically resolves the target callable using importlib.import_module() and getattr() based on an unvalidated import_path string. An attacker who can supply or modify prompt templates can inject a malicious Tool JSON object pointing to arbitrary Python functions (such as os.system), bypassing the Jinja SandboxedEnvironment introduced in version 2.4.2 and achieving arbitrary code execution when the LLM invokes the tool.

Alon Barad
Alon Barad
7 views•10 min read
•1 day ago•CVE-2026-93363
4.3

CVE-2026-93363: Improper Access Control in Payload CMS Storage Upload Route

Payload CMS contains a missing authorization vulnerability (CWE-862) in its client-side upload instructions endpoint and the `@payloadcms/storage-vercel-blob` storage adapter. Two distinct logic defects allow authenticated users lacking collection-level `create` or `update` permissions to generate signed upload tokens and upload arbitrary files directly to external cloud storage.

Alon Barad
Alon Barad
7 views•9 min read
•1 day ago•CVE-2026-55098
6.5

CVE-2026-55098: Cross-Database Authorization Bypass via DuckDB Table-Valued I/O Functions in Basekick-Labs Arc

CVE-2026-55098 (GHSA-93cm-2v4m-c56c) is an authorization bypass and sensitive information disclosure vulnerability in Basekick-Labs Arc prior to version 26.06.2. The flaw stems from an incomplete remediation of CVE-2026-47735, which failed to restrict the full suite of DuckDB table-valued filesystem I/O functions and quoted-identifier invocations. Because Arc's query parser ignores function calls during table reference extraction, authenticated users with minimal or empty permissions can invoke functions like parquet_scan(), glob(), and read_blob() to read, enumerate, and extract telemetry data across all tenant databases residing within the shared local storage root.

Alon Barad
Alon Barad
7 views•10 min read