GHSA-654x-9q7r-g966

Suggest an improvement
Source
https://github.com/advisories/GHSA-654x-9q7r-g966
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/02/GHSA-654x-9q7r-g966/GHSA-654x-9q7r-g966.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-654x-9q7r-g966
Aliases
Published
2026-02-02T21:52:06Z
Modified
2026-02-11T14:32:30Z
Severity
  • 5.3 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N CVSS Calculator
Summary
CI4MS Vulnerable to User Email Enumeration via Password Reset Flow
Details

Summary

The authentication implementation in CI4MS is vulnerable to email enumeration. An unauthenticated attacker can determine whether an email address is registered in the system by analyzing the application's response during the password reset process.

Vulnerability Details

  • The password reset flow returns different responses based on whether the provided email address exists in the database or not.
  • If the email is registered, the system typically returns a success message (e.g., "Password reset link has been sent").

If the email is not registered, the system returns an error message (e.g., "User not found" or a different HTTP status code).

This discrepancy allows attackers to programmatically "enumerate" or confirm valid user emails, which can then be used for targeted phishing attacks or brute-force attempts.

Steps to Reproduce

  1. Navigate to the password reset page of the CI4MS installation.
  2. Enter an email address that you know is not registered (e.g., nonexistent@example.com) and submit. Note the response message/code.
  3. Enter an email address that is registered (e.g., an admin or test account) and submit. Note the different response.
  4. The difference between these two responses confirms the enumeration vulnerability.

Suggested Mitigation

Implement a uniform, generic response for all password reset requests, regardless of whether the email exists. Recommended message: "If an account is associated with this email address, a password reset link has been sent."

Database specific
{
    "cwe_ids":  [
        "CWE-203",
        "CWE-204"
    ],
    "github_reviewed":  true,
    "github_reviewed_at":  "2026-02-02T21:52:06Z",
    "nvd_published_at":  "2026-02-03T22:16:31Z",
    "severity":  "MODERATE"
}
References

Affected packages

Packagist / ci4-cms-erp/ci4ms

Package

Name
ci4-cms-erp/ci4ms
Purl
pkg:composer/ci4-cms-erp/ci4ms

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0 Unknown introduced version / All previous versions are affected
Fixed
0.28.5.0

Affected versions

0.*
0.21.0
0.21.1
0.21.2
0.21.3
0.21.3.1
0.21.3.2
0.21.3.3
0.21.3.4
0.21.3.5
0.21.3.6
0.21.3.7
0.23.0.0
0.23.0.1
0.23.0.2
0.23.1.0
0.24.0.0
0.24.0.16
0.24.0.18
0.24.0.19
0.24.0.20
0.24.0.27
0.24.0.42
0.24.0.45
0.24.0.60
0.25.0.0
0.25.0.1
0.25.0.2
0.25.0.30
0.25.0.39
0.25.0.43
0.25.1.0
0.25.2.0
0.25.3.0
0.26.0.0
0.26.1.0
0.26.2.0
0.26.3.0
0.26.3.1
0.26.3.2
0.26.3.3
0.26.3.4
0.27.0.0
0.28.0.0
0.28.3.0
0.28.4.0

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/02/GHSA-654x-9q7r-g966/GHSA-654x-9q7r-g966.json"