CVE-2026-45687: Rocket.Chat File Upload Field Injection (CVSS 8.5)
Rocket.Chat versions prior to specific patch releases contain a file upload vulnerability that allows authenticated users to manipulate their own uploaded file records in ways the application never intended. When a user uploads a file, the application fails to validate which fields can be modified, allowing an attacker to rewrite metadata about where files are stored and how they're referenced in the system. This could lead to unauthorized access to file storage systems or manipulation of file locations, though the vulnerability requires an existing user account to exploit.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 8.5 HIGH · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N
- Weaknesses (CWE)
- CWE-915
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-06-24 / 2026-06-26
NVD description (verbatim)
Rocket.Chat is an open-source, secure, fully customizable communications platform. Prior to 8.5.0, 8.4.1, 8.3.3, 8.2.3, 8.1.4, 8.0.5, 7.13.7, and 7.10.11, Rocket.Chat's sendFileMessage DDP method passes the entire attacker-supplied file object into Uploads.updateFileComplete, which merges it directly into a MongoDB $set update via Object.assign. There is no allow-list of writable fields. An attacker can therefore rewrite any column on their own upload record, notably store and the store-specific path fields. This vulnerability is fixed in 8.5.0, 8.4.1, 8.3.3, 8.2.3, 8.1.4, 8.0.5, 7.13.7, and 7.10.11.
1 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
The vulnerability exists in Rocket.Chat's sendFileMessage DDP (Distributed Data Protocol) method, which accepts a file object from the client and passes it directly into the Uploads.updateFileComplete function. This function uses Object.assign to merge the attacker-controlled file object into a MongoDB $set update operation without an allow-list of writable fields. An authenticated attacker can therefore inject arbitrary fields into their upload record, including the 'store' field and store-specific path fields. This represents a classic insecure direct object property assignment vulnerability (CWE-915), where client-supplied data bypasses intended access controls.
Business impact
Organizations running vulnerable Rocket.Chat instances face risks to data confidentiality and integrity. An attacker with valid credentials could potentially redirect file storage references, access files stored in alternative storage backends, or corrupt file metadata in ways that impact availability or enable lateral movement within the communications infrastructure. For enterprises using Rocket.Chat as a secure communications backbone, this vulnerability could undermine trust in file handling practices and create compliance concerns if file integrity or provenance becomes questioned.
Affected systems
Rocket.Chat versions 8.4.0 and earlier, 8.3.2 and earlier, 8.2.2 and earlier, 8.1.3 and earlier, 8.0.4 and earlier, 7.13.6 and earlier, and 7.10.10 and earlier are vulnerable. Fixed versions are 8.5.0, 8.4.1, 8.3.3, 8.2.3, 8.1.4, 8.0.5, 7.13.7, and 7.10.11. Organizations should identify all Rocket.Chat deployments and determine their current version against this patched list.
Exploitability
The vulnerability requires an authenticated user account, which moderately raises the exploitation bar. However, once authenticated, no special privileges, multi-step social engineering, or race conditions are needed—an attacker simply sends a modified file object in the DDP message. The network barrier is low (network accessible), and exploitation logic is straightforward, making this a high-exploitability issue for organizations where internal users cannot be fully trusted or where account compromise is a realistic threat model.
Remediation
Immediately upgrade all Rocket.Chat instances to one of the patched versions: 8.5.0 or later for the 8.x line, or 7.13.7 and 7.10.11 for the 7.x line. Patch selection should align with your current version and support policy. After upgrading, verify that file upload and retrieval workflows continue to function as expected, and consider auditing file metadata in MongoDB to detect any unauthorized modifications from the window of vulnerability.
Patch guidance
Deploy patches to production Rocket.Chat instances as soon as feasible, prioritizing internet-facing or multi-tenant deployments where account compromise risk is highest. Test patches in a staging environment to confirm compatibility with your customizations, Rocket.Chat plugins, and storage backend configurations (S3, filesystem, etc.). Stagger deployment across instances if necessary to minimize service disruption, but avoid leaving systems unpatched for extended periods. Consult Rocket.Chat's official release notes for your target version to verify any compatibility changes or data migration steps.
Detection guidance
Review MongoDB query logs or audit trails for suspicious $set operations on the 'uploads' collection that modify the 'store' or storage path fields. Monitor DDP message traffic for sendFileMessage calls with file objects containing unexpected fields like 'store', 'path', 's3.bucket', or filesystem-specific metadata. Implement alerts on file upload events where the client-supplied file metadata differs significantly from what the application should have accepted. Consider sampling server logs for any file access anomalies following uploads.
Why prioritize this
This vulnerability scores CVSS 8.5 (HIGH) due to network accessibility, low attack complexity, and high confidentiality impact, despite requiring prior authentication. It is not currently listed on the CISA KEV catalog, but the straightforward attack mechanics and potential for data exfiltration or manipulation warrant rapid patching. Organizations should prioritize this above lower-severity vulnerabilities and rank it below only critical flaws affecting unauthenticated or pre-auth code execution.
Risk score, explained
The CVSS 8.5 score reflects a network-accessible attack requiring only user-level privileges (PR:L), with no user interaction, and consequences affecting confidentiality (C:H) and integrity (I:L) across system boundaries (S:C). The score appropriately penalizes the authentication requirement but credits the ease of exploitation and broad impact on file data. In environments where internal threats are a concern or where Rocket.Chat is used for sensitive communications, the business risk may exceed the numerical score.
Frequently asked questions
Does this vulnerability affect Rocket.Chat Cloud or only self-hosted instances?
The vulnerability affects all Rocket.Chat deployments—both self-hosted and Cloud. Rocket.Chat Cloud users should verify their instance version via the admin UI and confirm that the hosting provider has applied the patch. Self-hosted users are responsible for applying patches themselves.
Can an attacker exploit this without a valid user account?
No. The sendFileMessage method is part of the DDP API and requires authentication. An attacker must possess valid credentials or compromise an existing account. This requirement raises the barrier to exploitation but does not eliminate the risk, especially in environments with weak password policies or where account breaches are possible.
What fields can an attacker modify in an upload record?
An attacker can modify any field in their upload record, including 'store' (the storage backend identifier) and storage-specific paths. This could allow them to claim files are stored in a different backend, potentially causing the application to fetch files from incorrect locations or expose path information.
Will the patch automatically fix previously corrupted file records?
The patch prevents future exploitation but does not automatically remediate any file metadata that may have been maliciously modified during the window of vulnerability. Organizations should audit and manually correct any suspicious upload records in MongoDB if they suspect prior abuse.
This analysis is based on the CVE record and vendor advisory as of the published date. Security researchers and organizations should verify patch applicability, version numbers, and compatibility notes against official Rocket.Chat release documentation. Exploitation feasibility and business impact may vary significantly based on deployment architecture, authentication policies, and data sensitivity. This vulnerability has not been added to the CISA Known Exploited Vulnerabilities catalog; however, lack of known exploitation does not indicate low risk. Always conduct thorough testing before deploying patches to production systems. Source: NVD (public-domain), retrieved 2026-08-02. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2026-42863HIGHFlowiseAI Mass Assignment Vulnerability in Chatflow Update Endpoint
- CVE-2026-44494HIGHAxios Prototype Pollution to MITM Gadget Chain (v1.0.0–1.15.x)
- CVE-2026-44495HIGHAxios Prototype Pollution Gadget Vulnerability (0.31.0 & 1.15.1)
- CVE-2026-46475HIGHFlowise Mass-Assignment Privilege Escalation (v3.1.2 Patch)
- CVE-2026-46476HIGHFlowise Cross-Workspace Template Takeover Vulnerability
- CVE-2026-46477HIGHFlowise Dataset Cross-Workspace Takeover (CVSS 8.8)
- CVE-2026-46478HIGHFlowise DatasetRow Mass-Assignment Cross-Workspace Takeover (8.8 HIGH)
- CVE-2026-46479HIGHFlowise Cross-Workspace Evaluation Takeover (High)