CVE-2022-46177

Discourse password reset link can lead to in account takeover if user changes to a new email

State
Published
Severity
5.7 Medium
Published
Jan 5, 2023
Updated
Mar 10, 2025
Reserved
Nov 28, 2022

Read the record on cve.org

Description

Discourse is an option source discussion platform. Prior to version 2.8.14 on the `stable` branch and version 3.0.0.beta16 on the `beta` and `tests-passed` branches, when a user requests for a password reset link email, then changes their primary email, the old reset email is still valid. When the old reset email is used to reset the password, the Discourse account's primary email would be re-linked to the old email. If the old email address is compromised or has transferred ownership, this leads to an account takeover. This is however mitigated by the SiteSetting `email_token_valid_hours` which is currently 48 hours. Users should upgrade to versions 2.8.14 or 3.0.0.beta15 to receive a patch. As a workaround, lower `email_token_valid_hours ` as needed.

Scores

CVSSScoreVectorSource
3.15.7 MediumCVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:NGitHub_M

Weaknesses

  • CWE-613 Insufficient Session Expiration

Affected Products

ProductVersions
discoursediscourse
  • < 2.8.14Affected
  • >= 2.9.0.beta0, < 3.0.0.beta16Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.