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-RF6H-5GPW-QRGQ

GHSA-RF6H-5GPW-QRGQ: Authorization Bypass in OpenClaw Microsoft Teams Extension via Invoke Activities

Amit Schendel
Amit Schendel
Senior Security Researcher

Mar 29, 2026·4 min read·26 visits

Executive Summary (TL;DR)

An authorization bypass in OpenClaw's MS Teams integration allows attackers outside the allowlist to submit session feedback via `invoke` activities, polluting session logs and triggering unauthorized AI actions.

OpenClaw versions up to 2026.3.24 contain an authorization bypass vulnerability in the Microsoft Teams extension. The flaw allows unauthorized users to bypass sender allowlists by sending specially crafted `invoke` activities, leading to unauthorized session feedback recording and potential feedback reflection.

Vulnerability Overview

The OpenClaw artificial intelligence framework provides a Microsoft Teams extension (extensions/msteams) to facilitate interactions between users and AI agents. This extension relies on specific security controls, primarily dmPolicy, allowFrom, and groupAllowFrom, to restrict which users possess authorization to interact with the bot.

The application correctly applies these authorization checks to standard text messages arriving through the primary ActivityType.Message pathway. A critical oversight occurs when processing secondary interaction methods, specifically invoke activities generated by user interface components.

This discrepancy introduces an Incorrect Authorization (CWE-863) vulnerability, documented as GHSA-RF6H-5GPW-QRGQ. Unauthenticated or unauthorized users can bypass the primary allowlist mechanism and interact directly with the agent's feedback system, regardless of network position or policy configuration.

Root Cause Analysis

The vulnerability originates from the asynchronous handling mechanisms within the MSTeamsActivityHandler class. When the Microsoft Teams platform sends an event to the bot framework, the incoming payload includes an activity type parameter that determines the subsequent processing route inside the application.

Standard user messages (ActivityType.Message) traverse a dedicated authorization middleware that validates the sender against the configured allowFrom list. If the sender identifier is absent from this list, the middleware immediately rejects the request and halts further context processing.

Interactions with adaptive cards, such as "Like" or "Dislike" feedback buttons, generate an invoke activity with the specific name message/submitAction. The code path responsible for handling these invoke events lacked the required calls to the authorization middleware, leaving the application entirely dependent on the client to govern request legitimacy.

Code Analysis

Prior to the patch, the application processed feedback invocation events without verifying the sender's origin against the dmPolicy or groupPolicy. The handler simply parsed the incoming invoke payload and recorded the embedded feedback directly into the corresponding .jsonl session context.

Commit c5415a474bb085404c20f8b312e436997977b1ea resolves this architectural flaw by centralizing the authorization logic. The patch introduces a shared utility function named resolveMSTeamsSenderAccess to ensure consistent validation logic applies across all activity types.

The remediation modifies extensions/msteams/src/monitor-handler.ts by introducing the isFeedbackInvokeAuthorized asynchronous function. This function explicitly evaluates the sender access decision before allowing the feedback processing logic to proceed.

// Post-patch extensions/msteams/src/monitor-handler.ts
async function isFeedbackInvokeAuthorized(
  context: MSTeamsTurnContext,
  deps: MSTeamsMessageHandlerDeps,
): Promise<boolean> {
  const resolved = await resolveMSTeamsSenderAccess({
    cfg: deps.cfg,
    activity: context.activity,
  });
 
  // Access control validation check
  if (isDirectMessage && resolved.access.decision !== "allow") {
    deps.log.debug?.("dropping feedback invoke (dm sender not allowlisted)", {
      sender: senderId,
      conversationId,
    });
    return false;
  }
  return true;
}

Exploitation and Impact

Exploitation requires an attacker to transmit a crafted HTTP request representing an invoke activity directly to the Microsoft Teams bot endpoint. The attacker must specify message/submitAction as the invoke name and embed the desired feedback payload within the request body.

The attacker must possess knowledge of a valid active session identifier, or the application configuration must allow the creation of new session contexts upon receiving unprompted feedback. The provided test suite monitor-handler.feedback-authz.test.ts demonstrates this exact vector by simulating an attacker-aad sender identity omitted from the allowFrom list.

Successful exploitation allows the attacker to inject arbitrary data into the .jsonl session files utilized by the OpenClaw agent. If the framework is configured to execute "feedback reflection", this manipulated data forces the agent to perform unauthorized downstream tasks or generate specific responses based on the fabricated feedback.

Remediation and Mitigation

Administrators must update the OpenClaw framework to a version released after March 26, 2026, incorporating commit c5415a474bb085404c20f8b312e436997977b1ea. This update ensures the proper authorization gating applies to all Microsoft Teams activity types.

Security teams should review historical .jsonl session records for indications of exploitation. Anomalous feedback entries associated with unrecognized Microsoft Teams sender identifiers signify potential unauthorized manipulation of the AI agent's context.

Administrators must verify the channel configuration sets dmPolicy to allowlist and maintains accurate entries in the allowFrom array. Strict management of these lists prevents unauthorized entity interactions and restricts the attack surface exclusively to explicitly trusted user identities.

Official Patches

OpenClawOfficial code commit containing the vulnerability fix

Fix Analysis (1)

Technical Appendix

CVSS Score
5.3/ 10
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

Affected Systems

OpenClaw AI FrameworkOpenClaw Microsoft Teams Extension (extensions/msteams)

Affected Versions Detail

Product
Affected Versions
Fixed Version
openclaw
OpenClaw
<= 2026.3.24> 2026.3.24
AttributeDetail
CWE IDCWE-863 (Incorrect Authorization)
Attack VectorNetwork (Crafted Microsoft Teams Activity)
ImpactUnauthorized Data Manipulation / Privilege Abuse
Exploit StatusProof of Concept (Unit Test)
CVSS Score5.3 (Medium)
Affected ComponentMSTeamsActivityHandler

MITRE ATT&CK Mapping

T1548Abuse Elevation Control Mechanism
Privilege Escalation
T1565.001Data Manipulation: Stored Data Manipulation
Impact
CWE-863
Incorrect Authorization

The software performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check.

Known Exploits & Detection

Fix Commit Test CodeThe patch includes monitor-handler.feedback-authz.test.ts simulating an attacker-aad identity exploiting the bypass.

Vulnerability Timeline

Vulnerability patch committed to repository
2026-03-26
GitHub Advisory GHSA-RF6H-5GPW-QRGQ published
2026-03-26

References & Sources

  • [1]GitHub Security Advisory GHSA-rf6h-5gpw-qrgq
  • [2]OpenClaw Fix Commit
  • [3]OpenClaw Security Documentation

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 7 hours ago•CVE-2026-53493
6.9

CVE-2026-53493: Uncontrolled Resource Consumption in containerd Image-Pull Descriptor Graph Resolution

containerd is an open-source container runtime. Prior to versions 1.7.36, 2.0.13, 2.2.9, 2.3.6, and 2.4.1, a crafted OCI index graph can force very high CPU/memory usage during PullImage (before container start), causing long ContainerCreating stalls and, at larger sizes, node/runtime instability. The vulnerability occurs because containerd's image-pull descriptor graph resolution handlers processed OCI image indices and manifests recursively without enforcing boundaries on traversal depth or breadth, and without maintaining a global visited registry to count duplicate references.

Alon Barad
Alon Barad
10 views•6 min read
•about 8 hours ago•GHSA-62MM-XWMV-CRHG
7.5

GHSA-62MM-XWMV-CRHG: Unauthenticated Path Traversal in Khoj Static File Serving Endpoint

An unauthenticated path traversal vulnerability exists in the Khoj AI assistant platform via the static file serving endpoint `/home/{file_path:path}`. Due to improper path sanitization when handling user input with Python's pathlib module, a remote attacker can read arbitrary files from the server's filesystem.

Alon Barad
Alon Barad
4 views•5 min read
•about 9 hours ago•CVE-2026-100369
8.4

CVE-2026-100369: Argument Injection Vulnerability in CliInvoke Process Runner Factories

An argument injection vulnerability (CWE-88) in CliInvoke and AlastairLundy.CliInvoke allows local attackers to execute arbitrary system commands. By injecting double-quote characters into target file paths or arguments, attackers can terminate operating-system-level quoted boundaries and introduce new commands when shell runners are utilized.

Amit Schendel
Amit Schendel
5 views•5 min read
•about 10 hours ago•CVE-2026-100368
8.4

CVE-2026-100368: OS Command Injection in CliInvoke Shell Wrappers

An OS command injection vulnerability exists in the PowerShell and Cmd shell wrappers of the CliInvoke .NET library (specifically the CliInvoke.Specializations package). Under vulnerable configurations, arguments and targets are passed as a single flat string to ProcessStartInfo.Arguments, permitting double-quote breakout and execution of arbitrary secondary commands with host process privileges.

Amit Schendel
Amit Schendel
3 views•7 min read
•about 11 hours ago•GHSA-VV77-66RF-PM86
8.8

GHSA-vv77-66rf-pm86: Gas Draining Vulnerability in mpp Multi-Party Payments Library

A critical-severity input validation vulnerability in the Elixir multi-party payment library `mpp` allows unauthenticated remote attackers to exhaust the transaction fee payer's wallet balance. By submitting a crafted Ethereum transaction envelope with artificially inflated gas parameters, an attacker can force the server to co-sign and commit to pay exorbitant fees, leading to severe financial loss and Denial of Service.

Amit Schendel
Amit Schendel
5 views•5 min read
•about 12 hours ago•GHSA-QPXH-FF8M-C62V
7.5

GHSA-QPXH-FF8M-C62V: Gas Draining and Resource Exhaustion in ZenHive mpp Library

A critical gas draining vulnerability exists in the ZenHive mpp (Multi-Payment Protocol) library prior to version v0.6.0. By omitting validation of EIP-2930 access lists in custom 0x76 transaction envelopes, the library allows malicious clients to pad transaction payloads with dummy addresses, draining the gas sponsor's hot wallet.

Amit Schendel
Amit Schendel
4 views•8 min read