CVE-2026-52890

Wekan: Arbitrary file read and server DoS via attachment versions.original.path

Published Jul 15, 2026 CVSS 3.1 · 7.1 High EPSS < 1% KEV · Not listed
Description
Wekan is open source kanban built with Meteor. Prior to 9.31, Wekan allows a logged-in board member to insert an attachment document through the /attachments/insert DDP method with attacker-controlled versions.original.path and versions.original.storage fields. The server/permissions/attachments.js insert rule checks only board write access, and FileStoreStrategyFilesystem.getReadStream() in models/lib/fileStoreStrategy.js streams the stored path without a storage-root containment check, allowing arbitrary file reads and denial of service through special files such as /dev/zero. This issue is fixed in version 9.31.

Analysis

AI-generated

Technical impact

Wekan, an open‑source kanban board built on Meteor, is vulnerable because a logged‑in board member can use the /attachments/insert DDP method to supply attacker‑controlled versions.original.path and versions.original.storage values. The server/permissions/attachments.js insert rule only verifies that the user has board‑write rights, while FileStoreStrategyFilesystem.getReadStream() in models/lib/fileStoreStrategy.js streams the specified path without enforcing a storage-root containment check. Consequently, an authenticated attacker can read arbitrary files from the server and trigger denial of service by referencing special files such as /dev/zero. The flaw is resolved in Wekan 9.31, which introduces the missing containment check.

Affected Systems

The vulnerability impacts all deployments of Wekan running a version older than 9.31. Users must check that their instance is upgraded to at least 9.31, which contains the fix that adds a proper containment check when reading files.

Risk and Exploitability

The CVSS score of 7.1 indicates a high level of severity, while a very low but not zero probability of exploitation in the wild. The flaw requires only board‑write access, a privilege commonly granted to contributors, so an attacker with authenticated credentials or compromised board credentials can exploit it. The vulnerability is not listed in the CISA KEV catalog, but the combination of data exposure and potential denial of service warrants immediate mitigation.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Wekan to version 9.31 or newer to apply the containment check that blocks arbitrary file reads.
  • Review board membership and write permissions to ensure only trusted users have board‑write access; disable write access for any user that does not need it.g., chroot, AppArmor, SELinux) or adjust file permissions to prevent the Wekan process from accessing system files such as /dev/zero, thereby reducing the risk of denial of service.
  • Disable or further restrict the attachment upload feature for boards where file attachments are not required, reducing the attack surface.

Generated by OpenCVE AI on July 31, 2026 at 02:40 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Wekan
Wekan wekan
Vendors & Products Wekan
Wekan wekan
Type Values Removed Values Added
Description Wekan is open source kanban built with Meteor. Prior to 9.31, Wekan allows a logged-in board member to insert an attachment document through the /attachments/insert DDP method with attacker-controlled versions.original.path and versions.original.storage fields. The server/permissions/attachments.js insert rule checks only board write access, and FileStoreStrategyFilesystem.getReadStream() in models/lib/fileStoreStrategy.js streams the stored path without a storage-root containment check, allowing arbitrary file reads and denial of service through special files such as /dev/zero. This issue is fixed in version 9.31.
Title Wekan: Arbitrary file read and server DoS via attachment versions.original.path
Weaknesses CWE-22
CWE-400
References
Metrics cvssV3_1

{'score': 7.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:L'}

Weaknesses
  • CWE-22

    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

  • CWE-400

    Uncontrolled Resource Consumption

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Jul 16, 2026, 12:59 PM
Reserved
Jun 8, 2026, 9:44 PM
Status
Deferred
Published
Jul 15, 2026, 10:17 PM
Modified
Jul 16, 2026, 2:16 PM