Description
Cloudreve is a self-hosted file management and sharing system. Prior to 4.18.0, PrepareUpload in pkg/filemanager/fs/dbfs/upload.go checks a stale in-memory user storage value through validateUserCapacity and later applies an unconditional storage charge outside the same quota-enforcing transaction. An authenticated user with Files.Write permission can issue concurrent upload-session requests that read the same capacity snapshot, all pass the MaxStorage check, and reserve their declared sizes through CommitWithStorageDiff. The resulting reservations can exceed the account quota and can be materialized as chunked uploads that exhaust host storage and deny uploads to other users. The default local-storage policy and default User group are affected. This issue is fixed in version 4.18.0.
Published: 2026-09-22
Score: 7.1 High
EPSS: n/a
KEV: No
Impact: Quota Bypass and Denial of Service
Action: Immediate Patch
AI Analysis

Impact

The Cloudreve file‑management system contains a time‑of‑check to time‑of‑use race condition in its upload preparation routine. An authenticated user with write permission can launch multiple concurrent upload sessions; each session reads the same stale in‑memory quota snapshot before the database transaction that reserves storage is completed. The race allows all sessions to pass the maximum storage check and subsequently reserve space, causing the total reserved amount to exceed the user’s quota. The excess reservations can be materialized as real storage usage, exhausting host disk space and preventing other users from uploading data, effectively denying service. This flaw aligns with CWE‑362, CWE‑367, and CWE‑770 weaknesses.

Affected Systems

All installations of Cloudreve running a version earlier than 4.18.0 are affected. The vulnerability impacts the default local‑storage policy and the default User group, which means typical deployments are vulnerable unless the user group configuration is customized.

Risk and Exploitability

The CVSS score of 7.1 indicates a high severity, though the EPSS score is not available. The flaw is not listed in the CISA KEV catalog, suggesting no known widespread exploitation thus far. The attack requires the attacker to be a legitimate user with Files.Write permission and to submit several simultaneous upload requests, which limits the obvious threat surface. Nonetheless, a persistent attacker who can achieve concurrent uploads can quickly exhaust storage on the host and disrupt service for all users.

Generated by OpenCVE AI on September 22, 2026 at 16:41 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the 4.18.0 update provided by the vendor to eliminate the race condition.
  • Disable or throttle concurrent upload sessions to prevent race conditions from allowing multiple pre‑checks.
  • Implement disk‑space monitoring and alerts to detect early exhaustion and trigger remedial action.

Generated by OpenCVE AI on September 22, 2026 at 16:41 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 22 Sep 2026 16:45:00 +0000

Type Values Removed Values Added
First Time appeared Cloudreve
Cloudreve cloudreve
Vendors & Products Cloudreve
Cloudreve cloudreve

Tue, 22 Sep 2026 15:45:00 +0000

Type Values Removed Values Added
Description Cloudreve is a self-hosted file management and sharing system. Prior to 4.18.0, PrepareUpload in pkg/filemanager/fs/dbfs/upload.go checks a stale in-memory user storage value through validateUserCapacity and later applies an unconditional storage charge outside the same quota-enforcing transaction. An authenticated user with Files.Write permission can issue concurrent upload-session requests that read the same capacity snapshot, all pass the MaxStorage check, and reserve their declared sizes through CommitWithStorageDiff. The resulting reservations can exceed the account quota and can be materialized as chunked uploads that exhaust host storage and deny uploads to other users. The default local-storage policy and default User group are affected. This issue is fixed in version 4.18.0.
Title Cloudreve: Storage-quota TOCTOU race allows quota bypass and storage-based denial of service
Weaknesses CWE-362
CWE-367
CWE-770
References
Metrics cvssV3_1

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


Subscriptions

Cloudreve Cloudreve
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-22T15:28:56.700Z

Reserved: 2026-08-20T20:52:01.927Z

Link: CVE-2026-77633

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2026-09-22T16:17:55.817

Modified: 2026-09-22T16:17:55.953

Link: CVE-2026-77633

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-22T16:30:11Z

Weaknesses
  • CWE-362

    Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')

  • CWE-367

    Time-of-check Time-of-use (TOCTOU) Race Condition

  • CWE-770

    Allocation of Resources Without Limits or Throttling