A missing authorization check in MantisBT's file visibility function allows any authenticated user (REPORTER+) to download attachments on private bugnotes they should not be able to access, via the REST API endpoint GET /api/rest/issues/{id}/files and SOAP API mc_issue_attachment_get endpoint.
Impact
REPORTER (access level 25) can view file attachments that were uploaded to private bugnotes by DEVELOPER/MANAGER/ADMIN users
Private bugnotes are intended for internal developer discussion; their attachments (logs, screenshots, patches) should be equally protected
The web UI is NOT affected — it filters through bugnote_get_all_visible_bugnotes() first
Patches
029d9d203d9e4ae96b3e59d552fa7395cc1e5071
Workarounds
None
Credits
Thanks to the following security researchers for independently discovering and responsibly reporting the issue.
Vishal Shukla
Tristan Madani (@TristanInSec) from Talence Security
Tang Cheuk Hei (@siunam321)
This advisory's contents was largely copied from Tristan's well-written report.