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-53856

CVE-2026-53856: Incorrect Permission Assignment for Critical Resource in OpenClaw Config Recovery

Alon Barad
Alon Barad
Software Engineer

Jun 19, 2026·7 min read·6 visits

Executive Summary (TL;DR)

OpenClaw's configuration recovery mechanism recreates `openclaw.json` with overly permissive file system permissions (e.g., 0644 instead of 0600). This allows local, low-privileged users on the same host to read sensitive parameters, including OpenAI and Anthropic API keys.

OpenClaw versions before 2026.4.24 contain an insecure file permissions vulnerability in the configuration recovery mechanism. When a local configuration repair is triggered, the recovery path restores the primary configuration file, `openclaw.json`, with overly broad permissions. This enables low-privileged local attackers in multi-user or shared hosting environments to read sensitive system credentials, API tokens, and private assistant configurations.

Vulnerability Overview

OpenClaw is a personal AI assistant built to run across multiple operating systems and host platforms. It acts as an orchestrator, connecting local system interfaces to third-party large language models, personal databases, and system utilities. Because of this integration role, the core configuration file, openclaw.json, contains high-value secrets, including API tokens, database connection strings, and administrative parameters.

To ensure resiliency during unexpected file corruption or system failures, OpenClaw implements an automated configuration repair and recovery subsystem. If the application detects that the configuration file is missing or corrupted, it triggers a recovery routine to recreate the environment config. This mechanism, however, introduces a critical security gap on POSIX-compliant file systems by failing to restrict permissions on the newly generated file.

The vulnerability is classified under CWE-732 (Incorrect Permission Assignment for Critical Resource). Because the recovery mechanism does not explicitly declare restrictive file permissions during the file stream instantiation, the operating system applies default creation masks. This behavior exposes critical application credentials to any local user who has read access to the directory path.

Root Cause Analysis

The root cause of CVE-2026-53856 lies in the omission of explicit file permissions when writing the configuration file during the recovery process. POSIX systems rely on the calling process's umask combined with the permissions specified during the open system call to determine the final permissions of a new file. When OpenClaw's recovery path triggers, the file write operation uses a default permission mask such as 0644 (read and write for the owner, read-only for the group and others) rather than a secure 0600 mask (read and write exclusively for the owner).

This behavior violates the principle of least privilege. In shared environments, such as multi-user Linux systems or shared hosting nodes, standard directory layouts may allow secondary users to traverse to the application's root directory. When openclaw.json is recreated with world-readable permissions, any local process running under a different user account can read the file's contents.

The configuration file stores plain-text secrets, making this permission mismatch a significant exposure vector. The vulnerability relies entirely on the local system's process lifecycle. It does not require administrative interaction, as the recovery path can be initiated programmatically or implicitly when the application starts up without a pre-existing configuration.

Code Analysis and System Behavior

During configuration recovery, the software initiates a file-write system call. The following code comparison illustrates the difference between the vulnerable implementation and the patch applied in version 2026.4.24:

// Vulnerable Recovery Code Implementation
// Recreates the configuration file using default open permissions (0644)
func RepairConfig(configPath string, data []byte) error {
    // The permission 0644 makes the file world-readable depending on umask
    err := os.WriteFile(configPath, data, 0644)
    if err != nil {
        return err
    }
    return nil
}
 
// Patched Recovery Code Implementation
// Enforces strict owner-only access permissions (0600)
func RepairConfig(configPath string, data []byte) error {
    // 0600 grants read/write permissions only to the file owner
    err := os.WriteFile(configPath, data, 0600)
    if err != nil {
        return err
    }
    return nil
}

The fix restricts read/write permissions exclusively to the owner of the process running OpenClaw. The following sequence diagram details how the configuration is exposed to a local adversary when the recovery mechanism is executed in an unpatched version:

If the application runs under a broad default system umask (such as 0022), the OS allows any local user to read the configuration. The patch resolves this by ensuring that the file creation flag explicitly mandates 0600 permissions, overriding permissive umask defaults.

Exploitation Methodology

To exploit CVE-2026-53856, an attacker must have low-privilege shell access to the local machine hosting the OpenClaw instance. The attacker does not need to compromise the application directly or possess administrative credentials. The exploit process follows a sequence of monitoring and passive data extraction.

First, the attacker identifies the directory containing the OpenClaw application. This can be achieved by analyzing running processes or searching for common directory structures on the filesystem:

ps aux | grep -i openclaw

Second, the attacker monitors the target directory for file recreation events. This can be done programmatically using utilities like inotifywait or by periodically checking the directory permissions. If a configuration repair or initial setup is triggered by the system administrator, the new file is generated:

# Attacker checks the permissions of the newly generated file
ls -la /opt/openclaw/openclaw.json
# Output confirms world-readable permissions (rw-r--r--)
-rw-r--r-- 1 victim_user victim_group 1024 Jun 18 12:00 /opt/openclaw/openclaw.json

Third, the attacker reads the configuration file directly using standard command-line tools. Since the file is world-readable, the operation succeeds without permission errors. The attacker then parses the file to extract sensitive API keys and administrative tokens:

# Read and display the plain-text configuration containing API keys
cat /opt/openclaw/openclaw.json

Impact Assessment

The impact of this vulnerability is confined to the loss of confidentiality for sensitive resources. The CVSS v4.0 score of 5.7 reflects this limited scope, designating high confidentiality impact (VC:H) but no direct integrity (VI:N) or availability (VA:N) impacts. Because the exploit occurs locally, network-based mitigation controls like firewalls or Web Application Firewalls (WAFs) cannot block the attack.

Although the primary vulnerability does not grant remote code execution or privilege escalation natively, the stolen credentials can be used as pivot points. For instance, obtaining OpenAI or Anthropic API keys can result in financial loss through resource abuse. If the configuration stores local database credentials or system integration tokens, the attacker can compromise adjacent systems or database tables, leading to lateral movement.

Furthermore, in shared hosting environments, this flaw violates isolation boundaries. Standard security controls on shared servers rely on user privilege separation. When an application writes critical secrets with world-readable permissions, it bypasses these host-level isolation controls, exposing the tenant's data to co-located users on the same infrastructure.

Remediation and Defense

The definitive solution for CVE-2026-53856 is to upgrade OpenClaw to version 2026.4.24 or later. The update alters the file creation parameters in the configuration recovery routine to guarantee that permissions are limited to owner-only read and write access (0600).

If an immediate upgrade is not possible, administrators should manually apply strict access controls to the configuration file. This can be executed using the chmod utility on POSIX environments:

chmod 600 /path/to/openclaw/openclaw.json

Additionally, administrators should configure a restrictive default umask for the environment in which the OpenClaw service runs. Setting the umask to 0077 ensures that any files created by the application default to owner-only permissions, mitigating the risk of permissive defaults in recovery paths:

# Set restrictive umask in the shell profile or service unit file
umask 0077

Continuous monitoring and auditing can also be implemented using host-based compliance scanners. The following shell script can be used in cron jobs to automatically detect configuration files with insecure permissions:

# Find openclaw.json files that are readable by non-owners
find /path/to/openclaw/ -name "openclaw.json" -perm /o+r -type f

Official Patches

openclawOfficial Security Advisory

Technical Appendix

CVSS Score
5.7/ 10
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
EPSS Probability
0.09%
Top 100% most exploited

Affected Systems

OpenClaw operating in multi-user or shared hosting environments

Affected Versions Detail

Product
Affected Versions
Fixed Version
OpenClaw
openclaw
>= 2026.4.23, < 2026.4.242026.4.24
AttributeDetail
CWE IDCWE-732
Attack VectorLocal
CVSS v4.0 Score5.7 (Medium)
EPSS Score0.00094
ImpactHigh Confidentiality Loss
Exploit Statusnone
KEV StatusNot Listed

MITRE ATT&CK Mapping

T1222File and Directory Permissions Modification
Defense Evasion
CWE-732
Incorrect Permission Assignment for Critical Resource

The software specifies permissions for a security-critical resource in a way that allows that resource to be read or modified by unintended actors.

Vulnerability Timeline

CVE-2026-53856 published to official CVE catalog
2026-06-16
VulnCheck advisory released analyzing configuration permissions mismatch
2026-06-16
GitHub Security Advisory GHSA-rwp6-7w3q-75fq released
2026-06-16
Vulnerability research and intelligence mapping completed
2026-06-18

References & Sources

  • [1]GitHub Security Advisory (GHSA-rwp6-7w3q-75fq)
  • [2]VulnCheck Advisory Detail
  • [3]CVE.org Record for CVE-2026-53856

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 8 hours ago•CVE-2026-54068
5.9

CVE-2026-54068: Unauthenticated Server-Side Template Injection and SQLite Exfiltration in SiYuan PKM

An authentication bypass in the SiYuan personal knowledge management system before version 3.7.0 exposes a dynamic icon rendering endpoint. This endpoint processes client-supplied Go template directives. By submitting a crafted request, an unauthenticated remote attacker can leverage registered database template functions to execute arbitrary read-only SQL queries and exfiltrate workspace contents.

Amit Schendel
Amit Schendel
5 views•5 min read
•about 8 hours ago•CVE-2026-54069
9.1

CVE-2026-54069: Authentication Bypass in SiYuan Note via Origin Header Spoofing

CVE-2026-54069 is a critical authentication bypass vulnerability in the SiYuan Note personal knowledge management system. The flaw is located in the HTTP server's middleware handling API authorization, which unconditionally trusts requests carrying a 'chrome-extension://' scheme in the Origin HTTP header, granting administrative access without validating API tokens.

Alon Barad
Alon Barad
4 views•5 min read
•about 9 hours ago•CVE-2026-54089
9.1

CVE-2026-54089: Authentication Bypass by Spoofing in File Browser

CVE-2026-54089 is a critical authentication bypass vulnerability in File Browser affecting instances configured with proxy-based authentication. An unauthenticated remote attacker with direct network access can impersonate arbitrary users or register new accounts by spoofing configured HTTP headers.

Amit Schendel
Amit Schendel
4 views•7 min read
•about 9 hours ago•GHSA-99J7-FHR2-XFJ4
10.0

GHSA-99J7-FHR2-XFJ4: Malicious Remote Code Execution Payload in 'exploration' Cargo Crate

The malicious Cargo package 'exploration' was uploaded to the crates.io registry. During compilation or package import, the crate executes code designed to establish an outbound TCP/HTTP connection, download an external second-stage binary, and execute the binary locally on the host machine. This creates an unauthenticated remote code execution vector impacting developer environments and continuous integration pipelines.

Amit Schendel
Amit Schendel
7 views•6 min read
•about 10 hours ago•CVE-2026-54088
9.3

CVE-2026-54088: Pre-Authentication Remote Code Execution in File Browser Hook Authentication

CVE-2026-54088 is a critical command injection vulnerability in File Browser prior to version 2.63.6. When Hook Authentication is enabled, the application interpolates unsanitized credentials into a shell command, allowing unauthenticated remote code execution.

Alon Barad
Alon Barad
6 views•6 min read
•about 10 hours ago•GHSA-QV4M-M73M-8HJ7
8.8

GHSA-qv4m-m73m-8hj7: Authenticated Arbitrary File Upload leading to Remote Code Execution in NotrinosERP

An authenticated remote code execution vulnerability exists in NotrinosERP (versions up to and including 1.0.0) within the Human Resource Management (HRM) module. Users with employee management permissions can upload arbitrary file types, including PHP scripts, which are written directly to a web-accessible directory. This allows for arbitrary code execution in the context of the web-server user.

Alon Barad
Alon Barad
5 views•6 min read