CVE-2026-75575

Rocket.Chat Missing DDP Rate Limit on the sendForgotPasswordEmail Meteor Method

Published Aug 25, 2026 CVSS 4.0 · 6.9 Medium EPSS < 1% KEV · Not listed
Description
Rocket.Chat exposes the sendForgotPasswordEmail Meteor method without a DDP rate limit, so an unauthenticated caller may invoke it as often as it likes. The method is reachable over DDP and over the HTTP route POST /api/v1/method.callAnon/sendForgotPasswordEmail, and it triggers a password reset message for any address that matches an account. With no DDPRateLimiter rule registered for it, a caller can drive an unbounded volume of reset mail at a chosen address from the deployment's own mail sender, and can probe addresses at scale: the method answers true for an address with no account and for a successful send, but false when the address belongs to an account that authenticates through an external provider and Accounts_AllowPasswordChangeForOAuthUsers is off, so repeated calls distinguish that class of account. Later versions register a rule permitting ten calls per minute per client address.

Analysis

AI-generated

Technical impact

Rocket.Chat exposes the Meteor method sendForgotPasswordEmail without a DDP rate limiter, allowing an unauthenticated caller to trigger password reset emails as often as desired. The method can be invoked over DDP or the HTTP route POST /api/v1/method.callAnon/sendForgotPasswordEmail, and it sends a reset message for any address that matches an account. Because no rate limiting is in place, an attacker can flood the deployment's mail sender with reset emails or probe for the existence of accounts, as the method returns true when the address matches an existing account or when no account exists, and returns false for accounts authenticated through external providers when password changes are disabled for OAuth users.

Affected Systems

All Rocket.Chat installations, particularly versions before the update that added the DDPRateLimiter rule. The vulnerability affects Rocket.Chat without the rate limit configured.

Risk and Exploitability

With a CVSS score of 6.9, the vulnerability presents a medium severity risk. The EPSS score is not available, and it is not listed in CISA’s KEV catalog. An attacker can exploit the lack of rate limiting by repeatedly calling the method from any IP address, leading to an unbounded volume of reset emails. The method’s unauthenticated nature and differences in return values enable large‑scale account enumeration.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update Rocket.Chat to the latest release that implements a DDPRateLimiter rule allowing no more than ten calls per minute per client address for the sendForgotPasswordEmail method.
  • If an update is not immediately possible, implement a custom DDPRateLimiter rule to restrict calls to that Meteor method, e.g., setting a cap of a few requests per minute per IP.
  • Monitor outgoing email traffic for abnormal spikes in password‑reset messages and investigate any unexpected increases as a potential abuse indicator.

Generated by OpenCVE AI on August 25, 2026 at 03:40 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description Rocket.Chat exposes the sendForgotPasswordEmail Meteor method without a DDP rate limit, so an unauthenticated caller may invoke it as often as it likes. The method is reachable over DDP and over the HTTP route POST /api/v1/method.callAnon/sendForgotPasswordEmail, and it triggers a password reset message for any address that matches an account. With no DDPRateLimiter rule registered for it, a caller can drive an unbounded volume of reset mail at a chosen address from the deployment's own mail sender, and can probe addresses at scale: the method answers true for an address with no account and for a successful send, but false when the address belongs to an account that authenticates through an external provider and Accounts_AllowPasswordChangeForOAuthUsers is off, so repeated calls distinguish that class of account. Later versions register a rule permitting ten calls per minute per client address.
Title Rocket.Chat Missing DDP Rate Limit on the sendForgotPasswordEmail Meteor Method
First Time appeared Rocket.chat
Rocket.chat rocket.chat
Weaknesses CWE-204
CWE-307
CPEs cpe:2.3:a:rocket.chat:rocket.chat:*:*:*:*:*:*:*:*
Vendors & Products Rocket.chat
Rocket.chat rocket.chat
References
Metrics cvssV3_1

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

cvssV4_0

{'score': 6.9, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N'}

Weaknesses
  • CWE-204

    Observable Response Discrepancy

  • CWE-307

    Improper Restriction of Excessive Authentication Attempts

Sources

Status
PUBLISHED
Assigner
VulnCheck
Published
Updated
Aug 29, 2026, 11:47 AM
Reserved
Aug 17, 2026, 10:02 PM
Status
Awaiting Analysis
Published
Aug 25, 2026, 2:16 AM
Modified
Oct 12, 2026, 3:10 PM