GHSA-4v8w-gg5j-ph37 CVE-2025-47776
MantisBT vulnerable to authentication bypass for some passwords due to PHP type juggling
- Severity
- 0.0 / 10
- Critical · CVSS 4.0
- Exploit chance (EPSS)
- 0.34%
- Chance of exploitation in the next 30 days. Higher than 28.06% of scored vulnerabilities.
- Known exploited
- No
- Not in CISA's catalog
- Fix
2.27.2- Upgrade mantisbt/mantisbt to this version or later
Description
Due to an incorrect use of loose (==) instead of strict (===) comparison in the authentication code, PHP type juggling will cause interpretation of certain MD5 hashes as numbers, specifically those matching scientific notation.
Impact
On MantisBT instances configured to use the MD5 login method, user accounts having a password hash evaluating to zero (i.e. matching regex ^0+[Ee][0-9]+$) are vulnerable, allowing an attacker knowing the victim's username to login without knowledge of their actual password, using any other password having a hash evaluating to zero, for example comito5 (0e579603064547166083907005281618).
No password bruteforcing for individual users is needed, thus $g_max_failed_login_count does not protect against the attack.
Patches
Workarounds
Check the database for vulnerable accounts, and change those users' passwords, e.g. for MySQL:
SELECT username, email FROM mantis_user_table WHERE password REGEXP '^0+[Ee][0-9]+$'
References
Credits
Thanks to Harry Sintonen / Reversec for discovering and reporting the issue.
Affected versions
Packagist
| Package | Vulnerable | Fixed in |
|---|---|---|
| mantisbt/mantisbt | < 2.27.2 |
2.27.2 |
How to fix
Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.
mantisbt/mantisbt Packagist → 2.27.2
- composer
composer require mantisbt/mantisbt:^2.27.2
Severity breakdown
CVSS 4.0 0.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N
- Attack vector
- Network
- Attack complexity
- Low
- Attack requirements
- None
- Privileges required
- None
- User interaction
- None
- Confidentiality (vulnerable system)
- Low
- Integrity (vulnerable system)
- High
- Availability (vulnerable system)
- None
- Confidentiality (subsequent systems)
- None
- Integrity (subsequent systems)
- None
- Availability (subsequent systems)
- None
CVSS 3.1 9.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
- Attack vector
- Network
- Attack complexity
- Low
- Privileges required
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- High
- Availability
- None
Weakness
CWE-305: Authentication Bypass by Primary Weakness
The authentication algorithm is sound, but the implemented mechanism can be bypassed as the result of a separate weakness that is primary to the authentication error.
CWE-697: Incorrect Comparison
The product compares two entities in a security-relevant context, but the comparison is incorrect.
References
Advisories
Packages
Other links
Timeline
- Published
- Last updated by the source
- Latest EPSS score
Related advisories
| Advisory | Severity | Why it's related |
|---|---|---|
| GHSA-h2wf-967x-gxvw MantisBT: Stored XSS in print_all_bug_page_word.php | High | Also affects mantisbt/mantisbt |
| GHSA-4vpf-w7qv-5h3q MantisBT: Injection of TIME_TRACKING and REMINDER Notes via REST and SOAP APIs | Medium | Also affects mantisbt/mantisbt |
| GHSA-3v2j-6fw9-f57c MantisBT: REST and SOAP API Issue Update Accepts Unreleased Product Versions From Updaters | Medium | Also affects mantisbt/mantisbt |
| GHSA-vcrw-4xvv-jh49 MantisBT: Reflected XSS in admin/install.php via unescaped printf | Critical | Also affects mantisbt/mantisbt |
| GHSA-77x8-3v3h-hrhv MantisBT: Reflected XSS in admin/install.php | Critical | Also affects mantisbt/mantisbt |
| GHSA-m7ph-9558-mrx3 MantisBT: REST API unauthorized Issue status change | Medium | Also affects mantisbt/mantisbt |
| GHSA-v84x-qvhg-f36r MantisBT: Remote Code Execution via eval() Class Hoisting in adm_config_set.php | High | Also affects mantisbt/mantisbt |
| GHSA-c2xg-qjqw-2v98 MantisBT: SOAP API Authentication Bypass with Privilege Escalation to Administrator | Critical | Also affects mantisbt/mantisbt |
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