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
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
Update mantisbt/mantisbt to 2.28.4 if you use the affected versions. Test the change in a non-production environment first.
Local check
hol-guard supply-chain scanMantisBT: SQL Injection via history_order Configuration Value affects mantisbt/mantisbt (composer). Severity is high. 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
AI coding agents often install or upgrade packages automatically in composer. A high vulnerability in a dependency can be pulled into a project through a normal install or update without a human reviewing the change, expanding the blast radius from a single package to every agent workspace that depends on it.
| Package | Affected range | Fixed version |
|---|---|---|
| mantisbt/mantisbtcomposer | <=2.28.3 | 2.28.4 |
Fixed versions are reported by the source feed; confirm compatibility before updating.
Reported by GitHub Security Advisories (ghsa).
HOL Guard can help your team review package activity against supported protection paths.
Explore HOL GuardUpdate mantisbt/mantisbt to 2.28.4 if you use the affected versions. Test the change in a non-production environment first.
Local check
hol-guard supply-chain scanMantisBT: SQL Injection via history_order Configuration Value affects mantisbt/mantisbt (composer). Severity is high. 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
AI coding agents often install or upgrade packages automatically in composer. A high vulnerability in a dependency can be pulled into a project through a normal install or update without a human reviewing the change, expanding the blast radius from a single package to every agent workspace that depends on it.
| Package | Affected range | Fixed version |
|---|---|---|
| mantisbt/mantisbtcomposer | <=2.28.3 | 2.28.4 |
Fixed versions are reported by the source feed; confirm compatibility before updating.
Reported by GitHub Security Advisories (ghsa).
HOL Guard can help your team review package activity against supported protection paths.
Explore HOL Guard