GitHub Advisoryadvisory · Packagist
GHSA-mw6p-33vw-46cc MantisBT: SQL Injection via history_order Configuration Value
HIGH
Official page ↗
- Aliases
- CVE-2026-47142
- Ecosystem
- Packagist
- Packages
- mantisbt/mantisbt
- Severity
- High
- CVSS vector
- CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
- Weaknesses
- CWE-89
- Reviewed
- 2026-07-15
Affected packages
• Packagist mantisbt/mantisbt: < 2.28.4 → fixed in 2.28.4
Description
MantisBT 2.28.3 and earlier versions contains a SQL injection vulnerability in core/history_api.php. The history_order configuration value is concatenated directly into a SQL ORDER BY clause without any sanitisation, parameterization, or validation against a whitelist.
An administrator can set this configuration value via the web UI (adm_config_set.php) or the REST API (PATCH /api/rest/config). The injected SQL then executes whenever any user views a bug with history entries.
Impact
• Sensitive data extraction from the entire bugtracker database including user credentials (cookie_string, password hashes), API tokens, and private issue data
• With MySQL FILE privilege: full RCE via INTO OUTFILE writing a PHP webshell to the web root
• The admin plants the payload once; any authenticated user viewing a bug with history triggers the injection
Patches
• https://github.com/mantisbt/mantisbt/commit/6ad20bea2e01f33c6e4170775ae4d9dbe2c75325
Workarounds
_Is there a way for users to fix or remediate the vulnerability without upgrading?_
Resources
• https://mantisbt.org/bugs/view.php?id=37123
Credits
McCaulay Hudson (@McCaulay) of watchTowr
Related
Alias · not in database (1)
Weakness · CWE (1)
- CWE-89 Improper Neutralization of Special Elements used in an SQL Command weakness