View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0036974 | mantisbt | security | public | 2026-03-16 08:46 | 2026-05-09 19:56 |
| Reporter | ninjasec | Assigned To | dregad | ||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Product Version | 2.28.0 | ||||
| Target Version | 2.28.2 | Fixed in Version | 2.28.2 | ||
| Summary | 0036974: CVE-2026-33052: Authorization Bypass in Global Profile Creation via account_prof_update.php | ||||
| Description | MantisBT allows a low-privileged authenticated user to create a global profile by tampering with the user_id parameter in a valid profile creation request. The intended permission model distinguishes between:
In the vulnerable add handler, account_prof_update.php:72 only applies the personal-profile permission check when user_id != ALL_USERS. If an attacker submits user_id = ALL_USERS, the handler skips that branch and calls profile_create() directly. In this build, ALL_USERS is 0, defined in core/constant_inc.php:184. As a result, a user who is allowed to create their own profile, such as REPORTER, can create a global profile without having manage_global_profile_threshold. Affected Code
Root Cause The vulnerable logic is: $t_user_id = gpc_get_int( 'user_id' ); if( ALL_USERS != $t_user_id ) { profile_create( $t_user_id, $f_platform, $f_os, $f_os_build, $f_description ); If user_id == ALL_USERS, no authorization check for global profile creation is enforced. | ||||
| Steps To Reproduce | Prerequisites
| ||||
| Tags | No tags attached. | ||||
|
Vulnerability confirmed. Bug was introduced in 2.28.0 by commit MantisBT master b1fe6a00 (see 0034640) Advisory created https://github.com/mantisbt/mantisbt/security/advisories/GHSA-68w5-w573-q2r8 and CVE ID requested. |
|
|
PR https://github.com/mantisbt/mantisbt-ghsa-68w5-w573-q2r8/pull/1 for review |
|
|
CVE-2026-33052 assigned. |
|
|
MantisBT: master-2.28 3f952e68 2026-03-16 13:40 Details Diff |
Only authorized users can create global profiles Due to a missing access level check, an authenticated user allowed to create personal profiles (add_profile_threshold) was able to create a global profile despite not having manage_global_profile_threshold privilege. Adding access_ensure_global_level() to prevent auth bypass. Fixes 0036974, GHSA-68w5-w573-q2r8 |
Affected Issues 0036974 |
|
| mod - account_prof_update.php | Diff File | ||