Description
Rocket.Chat in versions <8.5.1, <8.4.4, <8.3.6, <8.2.6, <8.1.6, <8.0.7, <7.13.9, and <7.10.13 is vulnerable to unauthenticated file deletion. The deleteFileMessage Meteor method permanently deletes any uploaded file by ID without requiring authentication. When called via an unauthenticated DDP WebSocket connection, Meteor.userId() returns null, causing the authorization check to be skipped. Execution falls through to FileUpload.getStore('Uploads').deleteById(fileID), which removes the file from storage and database unconditionally. File IDs are discoverable from public channel message payloads and download URLs.
CVSS breakdown
CVSS 3.0
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High
Affected products
- Rocket.Chat / Rocket.Chat0 – 8.5.1
- Rocket.Chat / Rocket.Chat0 – 8.4.4
- Rocket.Chat / Rocket.Chat0 – 8.3.6
- Rocket.Chat / Rocket.Chat0 – 8.2.6
- Rocket.Chat / Rocket.Chat0 – 8.1.6
- Rocket.Chat / Rocket.Chat0 – 8.0.7
- Rocket.Chat / Rocket.Chat0 – 7.13.9
- Rocket.Chat / Rocket.Chat0 – 7.10.13