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-77W2-CRQV-CMV3

GHSA-77W2-CRQV-CMV3: Authorization Bypass via Legacy Card Callbacks in OpenClaw Feishu Integration

Alon Barad
Alon Barad
Software Engineer

Mar 29, 2026·5 min read·35 visits

Executive Summary (TL;DR)

OpenClaw versions prior to 2026.3.26 fail to enforce Direct Message (DM) pairing validation on legacy Feishu interactive card callbacks, allowing unauthorized users to execute privileged commands.

An authorization bypass vulnerability in the OpenClaw Feishu integration permits attackers to execute privileged commands. By crafting legacy interactive cards that lack modern structure markers, attackers can bypass the Direct Message (DM) pairing security checks.

Vulnerability Overview

The openclaw package provides a unified integration framework for various messaging channels, including Feishu (Lark). The Feishu extension utilizes a Direct Message (DM) pairing mechanism designed to enforce strict authorization. This mechanism ensures that commands and interactive callbacks originate only from explicitly authorized users and channels.

A vulnerability in OpenClaw versions prior to 2026.3.26 allows users to circumvent this DM pairing mechanism. The flaw resides in the handling of legacy interactive card payloads. Attackers can leverage the send action to transmit maliciously crafted Feishu cards containing legacy interactive elements.

When these legacy elements are interacted with, the resulting callback triggers an older, insecure execution path in the OpenClaw backend. This legacy path processes the callback as a valid command or text input without enforcing the mandatory DM pairing authorization checks. This results in a CWE-285 Improper Authorization vulnerability.

Root Cause Analysis

The primary root cause of this authorization bypass is the continuous support for a legacy execution path within the Feishu channel integration. Modern interactions utilize structured interaction envelopes that enforce strict validation protocols, including DM pairing validation. The legacy path was maintained for backward compatibility but lacked equivalent authorization enforcement.

The second contributing factor is the absence of comprehensive outbound validation within the send action. The Feishu extension permitted the transmission of arbitrary JSON payloads for interactive cards. It failed to sanitize or inspect these outbound payloads for legacy components that would subsequently trigger the insecure legacy callback path upon interaction.

This design flaw creates a delayed exploitation vector. The vulnerability is not exploited during the direct execution of a command, but rather during the delayed processing of an interactive callback generated by a previously transmitted, unsanitized payload. The backend assumes that any callback originating from a Feishu card is trusted, failing to account for cards minted by unauthorized users leveraging the insecure send surface.

Code Analysis

The vulnerability requires analyzing the patch to understand the mitigation strategy. The developers opted to address the outbound validation failure rather than removing the legacy execution path entirely. They introduced an egress filter within the send action handler to block the transmission of legacy payloads.

The patch, introduced in commit 81c45976db532324b5a0918a70decc19520dc354, implements two validation functions in extensions/feishu/src/channel.ts. The hasLegacyFeishuCardCommandValue function checks if a node lacks the modern version marker (oc) and contains a raw command or text string.

function hasLegacyFeishuCardCommandValue(actionValue: unknown): boolean {
  return (
    isRecord(actionValue) &&
    actionValue.oc !== FEISHU_CARD_INTERACTION_VERSION &&
    (Boolean(typeof actionValue.command === "string" && actionValue.command.trim()) ||
      Boolean(typeof actionValue.text === "string" && actionValue.text.trim()))
  );
}

The containsLegacyFeishuCardCommandValue function recursively traverses the outbound card JSON to identify any button tags containing a legacy structure. If such a structure is detected during the send action, the system throws an error, preventing the malicious card from reaching the Feishu channel.

Exploitation Methodology

Exploitation requires the attacker to have sufficient access to invoke the OpenClaw send action, or the ability to influence the content of cards generated by other processes. The attacker constructs a custom JSON payload representing a Feishu card.

The critical component of this payload is a button element designed to trigger the legacy callback path. The value property of the button is populated with a raw command object, such as {"command": "/exec-privileged-command --args"}, omitting the modern oc version identifier.

{
  "tag": "button",
  "text": { "tag": "plain_text", "content": "Critical Update" },
  "value": { "command": "/exec-privileged-command --args" }
}

Once the card is transmitted to a chat interface, it appears as a standard interactive element. When a user or the attacker clicks the button, the Feishu platform transmits a callback to the OpenClaw webhook. The backend routes the payload to the legacy handler, which executes the embedded command with elevated privileges, fully bypassing the DM pairing authorization requirement.

Impact Assessment

The successful exploitation of this vulnerability allows an attacker to execute arbitrary bot commands that would normally be restricted by the DM pairing policy. This represents a significant privilege escalation vector within the context of the messaging platform integration.

The exact impact depends heavily on the commands exposed by the specific OpenClaw implementation. If the bot has access to sensitive administrative functions or deployment operations, the attacker gains unauthorized access to those capabilities. The vulnerability effectively nullifies the primary security boundary established by the DM pairing configuration.

This issue is classified as CWE-285 (Improper Authorization) and CWE-602 (Client-Side Enforcement of Server-Side Security). While the severity is rated as Medium, environments heavily reliant on DM pairing for access control should treat this as a high-priority risk.

Remediation and Mitigation

The primary remediation strategy is upgrading the openclaw package to version 2026.3.26 or later. This version contains the essential egress filtering logic required to prevent the transmission of legacy interactive cards.

Security engineers must verify that the dmPolicy configuration is explicitly set to pairing across all active channels. While the patch addresses the outbound payload generation, maintaining strict policy configurations provides a defense-in-depth posture against variant callback manipulation techniques.

Organizations utilizing custom OpenClaw extensions should review their outbound payload generation logic. Any custom code that constructs Feishu cards must ensure the inclusion of the structured interaction envelope markers (oc version field) to comply with modern validation standards and prevent accidental exposure to legacy execution paths.

Official Patches

OpenClawFix Commit in OpenClaw Repository

Fix Analysis (1)

Technical Appendix

CVSS Score
5.3/ 10

Affected Systems

OpenClaw Feishu Channel Integration

Affected Versions Detail

Product
Affected Versions
Fixed Version
openclaw
OpenClaw
< 2026.3.262026.3.26
AttributeDetail
Vulnerability ClassImproper Authorization (CWE-285)
Componentopenclaw npm package
Attack VectorNetwork (Crafted JSON Card)
SeverityMedium
Exploit StatusProof of Concept
Fix AvailabilityAvailable in version 2026.3.26

MITRE ATT&CK Mapping

T1548Abuse Elevation Control Mechanism
Privilege Escalation
T1071.001Application Layer Protocol: Web Protocols
Command and Control
T1566Phishing
Initial Access
CWE-285
Improper Authorization

The software does not perform or incorrectly performs an authorization check when an actor attempts to access a resource or perform an action.

Vulnerability Timeline

Vulnerability fixed in commit 81c45976db532324b5a0918a70decc19520dc354
2026-03-26
OpenClaw version 2026.3.26 released
2026-03-26
GitHub Advisory GHSA-77W2-CRQV-CMV3 published
2026-03-26

References & Sources

  • [1]GitHub Security Advisory GHSA-77W2-CRQV-CMV3
  • [2]OpenClaw Fix Commit
  • [3]OpenClaw Security Tracking Repository
  • [4]AliCloud Vulnerability Database AVD-2026-1863798

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

•30 minutes ago•CVE-2026-54284
8.7

CVE-2026-54284: Algorithmic Complexity Exhaustion in sqlparse Engine

An algorithmic complexity vulnerability in the python-sqlparse library allows remote, unauthenticated attackers to cause a Denial of Service (DoS) via resource exhaustion. By transmitting a carefully constructed SQL statement containing deeply nested structures, an attacker can trigger quadratic CPU consumption within the parsing engine. This behavior bypasses the built-in depth limits because the performance degradation occurs during the initial recursive tree construction, causing the application process to hang.

Alon Barad
Alon Barad
0 views•6 min read
•about 2 hours ago•GHSA-XHCR-CQFR-M3HV
8.7

GHSA-XHCR-CQFR-M3HV: Remote Code Execution via Insecure HTTP MCP Server Registry in atomic-agents-stack

A critical vulnerability exists in the atomic-agents-stack package up to version 1.0.0. The HTTP Model Context Protocol (MCP) server-registry backend factory retrieves catalog metadata over cleartext HTTP by default. Because these catalogs define execution parameters ('command' and 'args') for local stdio subprocesses, a network-positioned attacker can intercept the cleartext traffic and inject arbitrary commands. This results in arbitrary remote code execution on the agent host system without requiring user interaction.

Alon Barad
Alon Barad
1 views•6 min read
•about 3 hours ago•GHSA-J659-8XH6-5PQ5
8.7

GHSA-J659-8XH6-5PQ5: Financial Guardrail Bypass in atomic-agents-stack via Parallel Execution of Unlisted Models

A high-severity vulnerability in the atomic-agents-stack framework allows complete bypass of cost-cap guardrails during parallel model execution when utilizing unlisted, local, or self-hosted models.

Amit Schendel
Amit Schendel
4 views•7 min read
•about 7 hours ago•GHSA-MPWR-8VM7-H73F
7.4

GHSA-mpwr-8vm7-h73f: Key Space Collapse and Authentication Bypass in go-pkcs12 PBMAC1 Decoding

A security vulnerability in the Go library software.sslmate.com/src/go-pkcs12 allows remote attackers to bypass password-based integrity verification. By crafting a PKCS#12 file with an excessively short KeyLength parameter in the PBMAC1 configuration, the derived MAC key space collapses, allowing an attacker to forge arbitrary certificate structures and private keys that are incorrectly verified as valid.

Amit Schendel
Amit Schendel
4 views•7 min read
•about 11 hours ago•CVE-2026-53766
6.1

CVE-2026-53766: Workspace Boundary Bypass in chrome-devtools-mcp via Symbolic Link Resolution Failure

A workspace boundary bypass vulnerability exists in the Chrome DevTools for Agents (chrome-devtools-mcp) Model Context Protocol (MCP) server from version 0.24.0 up to 1.1.0. The vulnerability allows an agent or malicious workspace containing symbolic links to read or modify arbitrary files outside the configured project workspace root directory. This occurs because the path validation function resolves paths lexically rather than physically.

Alon Barad
Alon Barad
3 views•7 min read
•about 12 hours ago•CVE-2026-56677
8.6

CVE-2026-56677: Unauthenticated Server-Side Request Forgery in 9Router OIDC Test Endpoint

A high-severity security vulnerability exists in 9Router, an AI router and token saver dashboard. When dashboard authentication features are disabled or left in default configurations, the application exposes administrative testing routines directly to the public internet. Unauthenticated network adversaries can exploit the OIDC configuration validation endpoint to initiate arbitrary HTTP requests, routing unauthorized traffic to local loops, adjacent container ports, and cloud resource metadata interfaces.

Amit Schendel
Amit Schendel
3 views•5 min read