Skip to content

CVE-2023-7028

An issue has been discovered in GitLab CE/EE affecting all versions from 16.1 prior to 16.1.6, 16.2 prior to 16.2.9, 16.3 prior to 16.3.7, 16.4 prior to…

Critical Known exploited
Severity
9.8 / 10
Critical · CVSS 3.1
Exploit chance (EPSS)
94.46%
Chance of exploitation in the next 30 days. Higher than 99.85% of scored vulnerabilities.
Known exploited
Yes
In CISA's catalog since May 1, 2024
Weakness
CWE-640 Weak Password Recovery Mechanism for Forgotten Password
CWE-640 Weak Password Recovery Mechanism for Forgotten Password
Fix
None yet
No fixed version published
Exploited in the wild. GitLab Community and Enterprise Editions Improper Access Control Vulnerability (GitLab GitLab CE/EE). Required action: Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable. Due for U.S. federal agencies by May 22, 2024.

Description

An issue has been discovered in GitLab CE/EE affecting all versions from 16.1 prior to 16.1.6, 16.2 prior to 16.2.9, 16.3 prior to 16.3.7, 16.4 prior to 16.4.5, 16.5 prior to 16.5.6, 16.6 prior to 16.6.4, and 16.7 prior to 16.7.2 in which user account password reset emails could be delivered to an unverified email address.

How to fix

No fixed version has been published yet. Until one is, remove or replace the package, or turn off or isolate the affected feature. This page updates when a fix ships.

Severity breakdown

CVSS 3.1 9.8

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Weakness

CWE-640: Weak Password Recovery Mechanism for Forgotten Password

The product contains a mechanism for users to recover or change their passwords without knowing the original password, but the mechanism is weak.

How to prevent it
  • Architecture and Design: Make sure that all input supplied by the user to the password recovery mechanism is thoroughly filtered and validated.
  • Architecture and Design: Do not use standard weak security questions and use several security questions.
  • Architecture and Design: Make sure that there is throttling on the number of incorrect answers to a security question. Disable the password recovery functionality after a certain (small) number of incorrect guesses.
  • Architecture and Design: Require that the user properly answers the security question prior to resetting their password and sending the new password to the e-mail address of record.
  • Architecture and Design: Never allow the user to control what e-mail address the new password will be sent to in the password recovery mechanism.
  • Architecture and Design: Assign a new temporary password rather than revealing the original password.

CWE-640: Weak Password Recovery Mechanism for Forgotten Password

The product contains a mechanism for users to recover or change their passwords without knowing the original password, but the mechanism is weak.

How to prevent it
  • Architecture and Design: Make sure that all input supplied by the user to the password recovery mechanism is thoroughly filtered and validated.
  • Architecture and Design: Do not use standard weak security questions and use several security questions.
  • Architecture and Design: Make sure that there is throttling on the number of incorrect answers to a security question. Disable the password recovery functionality after a certain (small) number of incorrect guesses.
  • Architecture and Design: Require that the user properly answers the security question prior to resetting their password and sending the new password to the e-mail address of record.
  • Architecture and Design: Never allow the user to control what e-mail address the new password will be sent to in the password recovery mechanism.
  • Architecture and Design: Assign a new temporary password rather than revealing the original password.

References

Timeline

  1. Published
  2. Added to CISA's Known Exploited Vulnerabilities catalog
  3. Remediation due for U.S. federal agencies
  4. Last updated by the source
  5. Latest EPSS score
AdvisorySeverityWhy it's related
GHSA-x3vp-85cm-q97r
Microsoft Security Advisory CVE-2026-70175 - ASP.NET Core Elevation of Privilege Vulnerability
High Same weakness, CWE-640
GHSA-4gv3-mc9p-5wqc
Keycloak: Unauthenticated account takeover via reset-credentials flow bypass
Critical Same weakness, CWE-640
GHSA-8342-988q-86cr
n8n: Account Takeover via Unverified Email Claim in Token Exchange Embed Login
High Same weakness, CWE-640
GHSA-m492-gv72-xvxj
Kimai Password Reset Link Remains Valid After Password Change
High Same weakness, CWE-640
GHSA-w9xh-5f39-vq89
phpMyFAQ: Missing Password Reset Token Allows Account Takeover via Username/Email Enumeration
High Same weakness, CWE-640
GHSA-9qv9-8xv6-5p35
phpMyFAQ: Unauthenticated Password Reset Endpoint Allows User Enumeration and Forced Password Change Without Token Validation
High Same weakness, CWE-640
GHSA-gf43-24g3-5hw2
Apostrophe has a Weak Password Recovery Mechanism for Forgotten Password and Improper Input Validation
High Same weakness, CWE-640
GHSA-hp5w-3hxx-vmwf
Payload: Pre-Authentication Account Takeover via Parameter Injection in Password Recovery
Critical Same weakness, CWE-640
Is this in your code?

MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.

Check your repos with MergeHarbor