Skip to main content

MantisBT CVE-2026-47156

| EUVDEUVD-2026-75087 CRITICAL
Improper Authentication (CWE-287)
2026-07-15 https://github.com/mantisbt/mantisbt GHSA-c2xg-qjqw-2v98
9.3
CVSS 4.0 · Vendor: https://github.com/mantisbt/mantisbt
Share

Severity by source

Vendor (https://github.com/mantisbt/mantisbt) PRIMARY
9.3 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
9.8 CRITICAL

Default self-registration gives a zero-prior-access attacker a valid cookie_string (PR:N) over the network with low complexity, yielding full admin impersonation with high C/I/A.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (https://github.com/mantisbt/mantisbt).

CVSS VectorVendor: https://github.com/mantisbt/mantisbt

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

3
Source Code Evidence Fetched
Jul 15, 2026 - 17:02 vuln.today
Analysis Generated
Jul 15, 2026 - 17:02 vuln.today
CVE Published
Jul 15, 2026 - 16:45 cve.org
CRITICAL

DescriptionCVE.org

MantisBT 2.28.3 and earlier contains a critical authentication bypass in the SOAP API's mci_check_login() function. Any user knowing any valid cookie_string can authenticate as any other user (knowing their username), including the administrator, without knowing the target's password.

The vulnerability is exploitable with zero prior access on default MantisBT installations because self-registration is enabled by default ($g_allow_signup = ON). A self-registered user can use their own cookie_string (readable from their browser's MANTIS_STRING_COOKIE cookie after login) to impersonate the administrator via the SOAP API.

The REST API is NOT affected. The REST API's AuthMiddleware derives the username server-side from the API token or session cookie, so the username cannot be spoofed.

The Web UI is NOT affected. The Web UI authenticates via PHP session cookies (PHPSESSID) and validates the MANTIS_STRING_COOKIE against the logged-in user through auth_is_cookie_valid(). The username is derived server-side from the cookie, not supplied by the client.

Impact

  • Full administrator access to the SOAP API from zero prior access (with self-registration enabled, which is the default)
  • Read/write all issues including private issues and notes across all projects
  • Full data exfiltration of all bug reports, attachments, user accounts (id, name, email), and non-private configuration values via the 71 SOAP operations available
  • Destructive operations: delete projects, issues, attachments, tags, categories, and versions
  • Data manipulation: create/modify issues, impersonate reporters, manage project structure
  • Chains with other vulnerabilities: the SOAP admin access enables exploitation of SOAP vulnerabilities that require administrator privileges

Patches

  • https://github.com/mantisbt/mantisbt/commit/e3571c319b1721b41b0dc4b5b5203cbdcbe0c2ee

Workarounds

None

Resources

  • https://mantisbt.org/bugs/view.php?id=37121

Credits

MantisBT would like to thank McCaulay Hudson (@_McCaulay) of watchTowr for originally identifying and responsibly reporting the issue.

The vulnerability was subsequently discovered by other researchers, while the team was working on fixing and preparing the release. MantisBT credits them here, in chronological order of their reports:

  • Keitaro Yamazaki (@tyage)
  • Harrison Keating (@voraci0us)
  • Chandler Johnson (@chndlrx)
  • Bharat Devasani (@bharatdevasani)

AnalysisAI

Privilege escalation to administrator in MantisBT 2.28.3 and earlier lets a low-privileged or self-registered user impersonate any account, including the administrator, through the SOAP API's flawed mci_check_login() function. Because the function accepts any valid cookie_string without checking that it belongs to the supplied username, an attacker who knows a target username (e.g. 'administrator') and possesses their own MANTIS_STRING_COOKIE can authenticate as that user without a password. With self-registration enabled by default ($g_allow_signup = ON), this is exploitable from zero prior access, granting full read/write and destructive control over all projects, issues, and user data. There is no public exploit identified at time of analysis and it is not listed in CISA KEV, but the underlying bug is trivially reliable.

Technical ContextAI

MantisBT is a widely used open-source PHP web-based bug tracker, distributed via Composer as mantisbt/mantisbt (CPE pkg:composer/mantisbt_mantisbt). The flaw resides in api/soap/mc_api.php, in the SOAP (Mantis Connect) authentication path. MantisBT maintains a per-user secret 'cookie_string' stored in the MANTIS_STRING_COOKIE browser cookie. The vulnerable mci_check_login() validated that the presented cookie_string corresponded to some valid user, but never verified that the resolved user identity matched the $p_username the client claimed to be - the classic CWE-287 (Improper Authentication) root cause. The patch (commit e3571c31) adds a strcasecmp() check comparing user_get_username() of the cookie's owner against the requested username, rejecting the login when they differ. Notably, only the legacy SOAP API is affected; the REST API's AuthMiddleware and the Web UI both derive the username server-side from the token/session cookie rather than trusting a client-supplied username, so they are immune to the same trick.

RemediationAI

Vendor-released patch: upgrade to MantisBT 2.28.4, which contains fix commit e3571c319b1721b41b0dc4b5b5203cbdcbe0c2ee adding a username-to-cookie ownership check in mci_check_login(). The advisory states there are no official workarounds, but if immediate upgrade is impossible, compensating controls include disabling the SOAP API entirely if it is not in use (the REST API and Web UI are unaffected and can continue to serve integrations), and disabling self-registration by setting $g_allow_signup = OFF to remove the zero-prior-access path - note this stops new users from registering and forces admin-created accounts, but does not fully close the hole for anyone who already holds a valid low-privileged account. Additionally restrict network access to the SOAP endpoint (api/soap/) to trusted hosts via reverse-proxy or firewall rules as a stopgap. Advisory and patch: https://github.com/mantisbt/mantisbt/security/advisories/GHSA-c2xg-qjqw-2v98 and https://github.com/mantisbt/mantisbt/commit/e3571c319b1721b41b0dc4b5b5203cbdcbe0c2ee.

More in PHP

View all
CVE-2019-11043 CRITICAL POC
9.8 Oct 28

In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it

CVE-2012-1823 CRITICAL POC
9.8 May 11

sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not

CVE-2016-1555 CRITICAL POC
9.8 Apr 21

(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear

CVE-2018-11138 CRITICAL POC
9.8 May 31

The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by

CVE-2024-11680 CRITICAL POC
9.8 Nov 26

ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C

CVE-2025-49113 CRITICAL POC
9.9 Jun 02

Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au

CVE-2017-9841 CRITICAL POC
9.8 Jun 27

Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c

CVE-2025-0108 HIGH POC
8.8 Feb 12

Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers

CVE-2021-25298 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2021-25296 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2013-4983 CRITICAL POC
10.0 Sep 10

The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

Share

CVE-2026-47156 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy