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-MW7W-G3MG-XQM7
N/A

GHSA-MW7W-G3MG-XQM7: Authorization Bypass in OpenClaw BlueBubbles Extension via Unfiltered Reactions

Alon Barad
Alon Barad
Software Engineer

Mar 28, 2026·5 min read·2 visits

PoC Available

Executive Summary (TL;DR)

A logic flaw in OpenClaw's BlueBubbles extension allows agents to observe group chat reactions despite 'requireMention' privacy policies being active, leading to unauthorized information disclosure.

OpenClaw versions 2026.3.2 and earlier contain a logic flaw in the BlueBubbles extension where the `requireMention` policy is not enforced for group chat reactions. This results in unintended information disclosure to connected agents.

Vulnerability Overview

The OpenClaw platform functions as a bridge connecting various messaging protocols to automated agents. The system utilizes a policy configuration known as requireMention to enforce privacy boundaries within multi-user group chats. When this policy is enabled, agents are restricted from processing or observing group activity unless explicitly invoked via a direct mention.

The vulnerability resides within the BlueBubbles extension, which handles the integration between OpenClaw and Apple iMessage environments. While the extension correctly evaluates the requireMention policy for standard text messages, it fails to apply the same access control logic to message reactions, commonly referred to as Tapbacks.

Consequently, the OpenClaw bridge processes these reaction events and forwards them to the associated agents. This behavior directly violates the intended isolation configuration, resulting in unauthorized information disclosure regarding group chat activity and participant interactions.

Root Cause Analysis

The root cause of this vulnerability is an incomplete access control implementation within the message processing pipeline. The specific logic flaw exists in the extensions/bluebubbles/src/monitor-processing.ts source file, localized to the processReaction function.

When the BlueBubbles monitor receives a webhook indicating a new reaction event, it routes the payload to the processReaction function for evaluation. This function extracts the group identifier and resolves the peer ID associated with the incoming event. It then proceeds immediately to event generation and routing.

Unlike the standard message processing flow, processReaction completely omits the group policy resolution logic. The function generates a system event and enqueues it for the agent before verifying the requireMention status for the target group. This missing conditional check allows all reaction events to bypass the established privacy controls.

Code Analysis

Analyzing the vulnerable state of the processReaction function reveals the absence of any policy enforcement logic. The routine determines if the event originated from a group chat and extracts the peerId, but proceeds directly to resolving the agent route and enqueuing the event.

The patch introduced in commit f8c98630785288cc1f1d0893503ef3b653a3cede implements the missing authorization check. It explicitly resolves the requireMention policy using the core.channel.groups.resolveRequireMention utility method before any event processing occurs.

// extensions/bluebubbles/src/monitor-processing.ts
 
  const peerId = reaction.isGroup
    ? (chatGuid ?? chatIdentifier ?? (chatId ? String(chatId) : "group"))
    : reaction.senderId;
 
+  const requireMention =
+    reaction.isGroup &&
+    core.channel.groups.resolveRequireMention({
+      cfg: config,
+      channel: "bluebubbles",
+      groupId: peerId,
+      accountId: account.accountId,
+    });
+
+  if (requireMention) {
+    logVerbose(core, runtime, "bluebubbles: skipping group reaction (requireMention=true)");
+    return;
+  }

The fix comprehensively addresses the vulnerability by mirroring the access control logic used in the main message handler. By evaluating the policy immediately after identifying the peer ID and returning early if requireMention evaluates to true, the patch prevents the system event from being generated or enqueued.

Exploitation Methodology

Exploitation requires the attacker or a legitimate user to participate in an iMessage group chat monitored by an OpenClaw agent. The targeted agent must be explicitly configured with the requireMention policy enabled to establish the privacy boundary.

An unauthenticated participant triggers the vulnerability by sending a reaction to any existing message within the group chat. No specific payload formatting, exploitation tools, or specialized network access is required, as the vulnerability is triggered by standard application behavior.

The OpenClaw BlueBubbles monitor processes the incoming webhook payload containing the reaction. Due to the missing policy check, the monitor translates the Tapback into a standardized system event and forwards it directly to the restricted agent.

Impact Assessment

The primary security impact is unauthorized information disclosure and a direct bypass of the platform's established privacy controls. Agents configured with strict isolation policies inadvertently receive metadata about group activity that they are not authorized to observe.

This leaked metadata includes the identities of users reacting to messages, the specific types of reactions deployed, and the timing of these interactions. In sensitive environments, such leakage compromises the confidentiality of group communications and exposes participant behavior patterns to automated data collection.

While this vulnerability does not permit remote code execution, denial of service, or data modification, it defeats a core security boundary. The flaw undermines the fundamental trust model of the requireMention configuration, which is explicitly designed to restrict bot visibility in multi-user environments.

Remediation and Mitigation

The OpenClaw maintainers have released version 2026.3.3, which includes the necessary access control checks to resolve this vulnerability. Administrators operating OpenClaw instances must upgrade to this release or later to ensure group privacy policies are strictly enforced.

For deployments where immediate patching is not feasible, administrators can temporarily disable the BlueBubbles extension. Alternatively, administrators can remove the automated agent from sensitive group chats to prevent any data exposure. There are no configuration-based workarounds that specifically filter reactions in unpatched versions.

Post-patching, security teams should review historical OpenClaw system logs. Occurrences of the log entry bluebubbles: enqueuing system event for reaction within groups where the requireMention policy was active indicate past instances of this access control bypass.

Official Patches

OpenClawFix Commit

Fix Analysis (1)

Technical Appendix

CVSS Score
N/A/ 10

Affected Systems

OpenClaw <= 2026.3.2 (BlueBubbles Extension)

Affected Versions Detail

Product
Affected Versions
Fixed Version
OpenClaw
OpenClaw
<= 2026.3.22026.3.3
AttributeDetail
Vulnerability TypeLogic Flaw / Authorization Bypass
CWE IDCWE-285
Attack VectorNetwork (Messaging Platform)
Authentication RequiredNone (Group Member)
ImpactInformation Disclosure
Exploit StatusUnweaponized / Application Default Behavior

MITRE ATT&CK Mapping

T1552Unsecured Credentials / Information
Credential Access
CWE-285
Improper Authorization

Improper Authorization

Vulnerability Timeline

Patch Committed by Jacob Tomlinson
2026-03-26
Advisory Published on GitHub
2026-03-27

References & Sources

  • [1]GitHub Advisory: GHSA-mw7w-g3mg-xqm7
  • [2]Aliyun Vulnerability Database Entry

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.