Skip to main content

Wekan CVE-2026-55234

HIGH
Improper Access Control (CWE-284)
2026-07-15 GitHub_M
8.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate to Wekan with own writable board
  2. Delivery
    Craft DDP /cards/update with new boardId in $set
  3. Exploit
    Source-board allow rule approves the write
  4. Execution
    Card/list/swimlane relocated into victim's private board
  5. Impact
    Unauthorized content injected across board boundary

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Access control enforcement
MITRE ATT&CK

1 technique across 1 tactic: Defense Evasion

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The attacker must be an authenticated Wekan user (PR:L) who has write access to at least one board they control, and must issue a raw DDP update to /cards/update, /lists/update, or /swimlanes/update with a new destination boardId placed in the update modifier's $set. The destination must be a valid boardId (a private board the attacker is not a member of) - exploitation targets integrity of that destination board rather than reading its contents. Limiting factors: it is not remote-unauthenticated (a valid account with a writable board is required), it requires a client capable of sending arbitrary DDP modifiers rather than the standard UI, and it is neutralized entirely on Wekan 9.37+ where the destination board's write access is validated.

Impact

The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:H/A:L, base 8.5) is internally consistent with the description: network-reachable DDP endpoint, low complexity, low privileges (an ordinary authenticated user with one writable board), no user interaction, and a scope change because the impact crosses into a board outside the attacker's authorization. Impact is integrity-centric (I:H) - unauthorized content injected into a private board - with minor availability effect (A:L) and no direct confidentiality loss (C:N), since the attacker pushes data in rather than reading the private board out. No EPSS score, KEV entry, or POC was supplied, so exploitation probability signals are absent; this is a genuine but bounded authorization flaw rather than a mass-exploitation candidate. The main caveats: the attacker must already hold a valid account with write access to at least one board, and the flaw enables data-placement/integrity abuse rather than data theft or code execution - so real-world priority is moderate-to-high for multi-tenant Wekan instances and lower for single-user or trusted-team deployments.

Exploit ScenarioDerived

An attacker registers or already holds a normal Wekan account and creates or is granted write access to their own board. Using a crafted DDP call to /cards/update (or /lists/update, /swimlanes/update) they set a new boardId in the update modifier pointing at a private board they are not a member of; the source-board-only allow check passes and the card/list/swimlane is relocated into the victim's private board. No public POC is referenced, but the fixing commit fully describes the bypass, and the low complexity plus no user interaction make reproduction straightforward.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 15, 2026

Improper access control in Wekan (self-hosted open-source Meteor kanban) before version 9.37 lets any authenticated user with write access to their own board relocate cards, lists, or swimlanes into a private board they do not belong to. The DDP update allow rules only authorize against the document's stored (source) boardId and never validate the attacker-supplied destination boardId in the update modifier, so /cards/update, /lists/update, and /swimlanes/update can be abused to inject content across a trust boundary. No public exploit identified at time of analysis, but the fixing commit and advisory publicly document the exact bypass, lowering the barrier to reproduction.

RemediationAI

Vendor-released patch: upgrade Wekan to version 9.37 or later (https://github.com/wekan/wekan/releases/tag/v9.37), which introduces the denyCrossBoardMove deny rule enforcing write access on the destination board for Cards, Lists, and Swimlanes updates; this is the primary and complete fix per advisory GHSA-gm7v-pc38-53jr. If an immediate upgrade is not possible, reduce exposure by limiting account provisioning to trusted users and disabling or restricting self-service registration so that arbitrary authenticated users cannot obtain write-capable boards, and monitor board membership and card/list/swimlane audit activity for unexpected cross-board relocations; note these are only partial compensating controls because any legitimate writer remains capable of the move until patched. Operators can also cherry-pick commit d369a3614a4737c29d48a6345a790edf2506ddae onto an earlier build if they cannot take the full 9.37 release.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Wekan is built on Meteor, which exposes collections to clients over DDP and gates writes through Meteor's allow/deny callback model. The affected code is the server-side allow rules in server/permissions/cards.js, lists.js, and swimlanes.js, which call allowIsBoardMemberWithWriteAccess against the document's current boardId. The root cause is CWE-284 (Improper Access Control): the authorization check binds to the source board the caller already controls, while the MongoDB-style update modifier ($set.boardId) can carry a different destination boardId that is never re-validated. Because Meteor allow rules approve if any rule allows and the modifier is applied after the check, the caller's ownership of the source board is sufficient to satisfy the guard, allowing a cross-board move. The fix (commit d369a36) adds a denyCrossBoardMove deny rule that inspects modifier.$set.boardId and denies the write unless the caller has write access to the destination board via allowIsBoardMemberWithWriteAccess.

Know when Wekan gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 8.5 HIGH
AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:H/A:L
vuln.today AI 8.5 HIGH

Authenticated user with write access to one board gives PR:L; network DDP endpoint and simple modifier give AV:N/AC:L; crossing into an unauthorized board is a scope change (S:C) with integrity injection (I:H) and no read (C:N).

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:H/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:L/SC:N/SI:L/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
None
Integrity
High
Availability
Low

DescriptionCVE.org

Wekan is open source kanban built with Meteor. Prior to 9.37, Wekan DDP update allow rules in server/permissions/cards.js, server/permissions/lists.js, and server/permissions/swimlanes.js authorize against the stored source boardId and do not validate a new boardId in the update modifier. Any authenticated user with write access to their own board can call /cards/update, /lists/update, or /swimlanes/update to move cards, lists, or swimlanes into a private board they are not a member of. This issue is fixed in version 9.37.

Executive ViewAI

Why It Matters

Wekan before version 9.37 contains an improper access control vulnerability that allows any authenticated user with write permissions to relocate cards, lists, and swimlanes into private boards they do not have authorization to access, creating a data exposure risk across trust boundaries. With a CVSS score of 8.5 and publicly documented bypass techniques lowering reproduction barriers, organizations using Wekan face material risk of unauthorized access to sensitive project information. Immediate inventory and prompt upgrading to version 9.37 or later is required to restore proper access controls.

Business Impact: High
Compensating Controls

Apply vendor patch: Upgrade to Wekan version 9.37 or later.

Threat Intelligence Overview

EPSS Score
0.2%
Top 85% exploitable
Prevalence
Low
niche self-hosted open-source kanban, limited enterprise deployment footprint
Social Media
2
Sightings
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

42
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +42
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

Affected Products (CPE)CVE.org

cpe:2.3:a:wekan:wekan:*:*:*:*:*:*:*:*

More in Wekan

View all
CVE-2021-3309 HIGH POC
8.1 Jan 26

packages/wekan-ldap/server/ldap.js in Wekan before 4.87 can process connections even though they are not authorized by t

CVE-2026-52891 CRITICAL
9.9 Jul 15

OS command injection in Wekan (the open-source Meteor-based kanban board) before version 9.07 lets an authenticated user

CVE-2026-55652 CRITICAL
9.8 Jul 15

Authentication bypass in Wekan (open-source Meteor kanban) before version 9.46 lets an unauthenticated attacker imperson

CVE-2023-28485 MEDIUM POC
5.4 Jun 26

A stored cross-site scripting (Stored XSS) vulnerability in file preview in WeKan before 6.75 allows remote authenticate

CVE-2021-20654 MEDIUM POC
5.4 Feb 10

Wekan, open source kanban board system, between version 3.12 and 4.11, is vulnerable to multiple stored cross-site scrip

CVE-2026-52893 CRITICAL
9.2 Jul 15

Account takeover in Wekan (open-source Meteor kanban) before 9.32 allows an attacker who controls an OIDC provider accou

CVE-2026-68561 HIGH
8.8 Aug 19

Privilege escalation in Wekan open-source kanban (all versions prior to 9.89, dubbed 'SortBleed') allows any board membe

CVE-2025-65780 HIGH
8.8 Dec 15

Privilege escalation in the self-hosted Wekan kanban board through version 18.15 allows any authenticated user to rewrit

CVE-2026-68899 HIGH
8.7 Aug 19

Stored XSS in Wekan prior to v9.90 allows authenticated board members to upload HTML containing JavaScript disguised as

CVE-2026-25560 HIGH
8.7 Feb 07

LDAP filter injection in WeKan before 8.19 allows remote unauthenticated attackers to manipulate LDAP search filters and

CVE-2026-41454 HIGH
8.7 Apr 22

Privilege escalation in WeKan (versions prior to 8.35) allows authenticated board members with low privileges to perform

CVE-2026-68558 HIGH
8.5 Aug 19

Wekan's outgoing webhook URL validator in versions 8.36 through 9.73 allows authenticated board members to bypass SSRF p

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy