CVE-2026-28474 Overview
OpenClaw's Nextcloud Talk plugin versions prior to 2026.2.6 contain an authorization bypass vulnerability that allows attackers to circumvent DM and room allowlist restrictions. The vulnerability exists because the allowlist validation mechanism accepts equality matching on the mutable actor.name display name field rather than the immutable user ID. An attacker can exploit this by changing their Nextcloud display name to match an allowlisted user ID, thereby gaining unauthorized access to restricted conversations.
Critical Impact
Attackers can bypass access control mechanisms to infiltrate restricted chat rooms and direct messages by spoofing display names to match allowlisted user IDs, potentially exposing sensitive communications and enabling social engineering attacks.
Affected Products
- OpenClaw Nextcloud Talk Plugin versions prior to 2026.2.6
Discovery Timeline
- 2026-03-05 - CVE CVE-2026-28474 published to NVD
- 2026-03-05 - Last updated in NVD database
Technical Details for CVE-2026-28474
Vulnerability Analysis
This vulnerability is classified as CWE-863: Incorrect Authorization. The flaw stems from improper validation logic in the Nextcloud Talk plugin's allowlist feature. When processing incoming messages or access requests, the plugin performs authorization checks by comparing the sender's display name (actor.name) against the configured allowlist entries instead of using the immutable user identifier (actor.id).
Since display names in Nextcloud are user-controlled and can be modified at any time, this creates a trivial bypass opportunity. The authorization mechanism relies on a mutable attribute that attackers can manipulate without elevated privileges, completely undermining the intended access control functionality.
Root Cause
The root cause lies in the resolveNextcloudTalkAllowlistMatch function within extensions/nextcloud-talk/src/inbound.ts. The vulnerable code passed both senderId and senderName parameters to the allowlist matching function, which incorrectly included the mutable senderName in its comparison logic. This allowed the allowlist to match against user-controlled display names rather than strictly validating against immutable user identifiers.
Attack Vector
The attack is network-accessible and requires no special privileges beyond basic Nextcloud account access. An attacker can execute this bypass by:
- Identifying the user ID of an allowlisted user for a target restricted conversation
- Modifying their own Nextcloud display name to match the target user ID
- Sending messages or access requests to the restricted room/DM
- The flawed allowlist validation matches the spoofed display name against the allowlist
- Access is granted despite the attacker not being on the actual allowlist
The following patch shows the security fix that removes the vulnerable senderName parameter from the allowlist validation:
const senderAllowedForCommands = resolveNextcloudTalkAllowlistMatch({
allowFrom: isGroup ? effectiveGroupAllowFrom : effectiveAllowFrom,
senderId,
- senderName,
}).allowed;
const hasControlCommand = core.channel.text.hasControlCommand(rawBody, config as OpenClawConfig);
const commandGate = resolveControlCommandGate({
Source: GitHub Commit Update
Detection Methods for CVE-2026-28474
Indicators of Compromise
- Sudden changes to user display names, particularly names matching known user IDs or allowlisted identifiers
- Access logs showing users entering restricted rooms they were not previously authorized for
- Audit trails indicating display name modifications followed by immediate access to protected conversations
Detection Strategies
- Implement logging and alerting on display name changes within the Nextcloud environment
- Monitor for discrepancies between authenticated user IDs and display names matching allowlist entries
- Review access patterns for restricted conversations, flagging users who gained access after recent profile modifications
Monitoring Recommendations
- Enable comprehensive audit logging for Nextcloud Talk room access events
- Create alerts for profile field changes, especially display names that match existing user IDs
- Periodically audit allowlist configurations and compare against actual access patterns to identify anomalies
How to Mitigate CVE-2026-28474
Immediate Actions Required
- Upgrade OpenClaw Nextcloud Talk plugin to version 2026.2.6 or later immediately
- Audit restricted conversation access logs for any unauthorized entries that may have occurred prior to patching
- Review any sensitive communications in affected rooms for potential compromise
Patch Information
The vulnerability has been addressed in OpenClaw Nextcloud Talk plugin version 2026.2.6. The fix modifies the allowlist validation logic to exclusively use the immutable senderId (user ID) for authorization checks, removing the vulnerable senderName parameter from the matching function. Technical details of the patch are available in the GitHub Commit Update and the GitHub Security Advisory.
Workarounds
- If immediate patching is not possible, restrict Nextcloud user permissions to prevent display name modifications
- Implement additional access controls at the Nextcloud server level to validate user identity independently
- Consider temporarily disabling allowlist-based access controls for highly sensitive conversations until the patch can be applied
# Upgrade OpenClaw Nextcloud Talk plugin
npm update @openclaw/nextcloud-talk@2026.2.6
# Verify the installed version
npm list @openclaw/nextcloud-talk
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.


