Skip to main content

Mantisbt CVE-2026-33548

| EUVDEUVD-2026-14525 HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-03-23 GitHub_M GHSA-73vx-49mv-v8w5
8.6
CVSS 4.0 · GitHub Advisory
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Login to MantisBT instance
  2. Delivery
    Rename or delete issue tag
  3. Exploit
    Inject HTML/JavaScript in tag name
  4. Execution
    View Timeline in my_view_page.php
  5. Impact
    Execute arbitrary JavaScript in victim browser

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires authenticated user login to MantisBT 2.28.0. Victim must view the Timeline/History section in my_view_page.php displaying a renamed or deleted tag. Attacker injects malicious HTML/JavaScript into tag name; execution depends on CSP settings permitting inline scripts.

Impact

The real-world risk is moderate to high despite the absence of a CVSS score or EPSS data. The attack vector is network-based and requires no special privileges (any user viewing an issue with a renamed/deleted tag can trigger the vulnerability), making it easily exploitable. The technical complexity is low—the vulnerability is stored XSS triggered by simply viewing the Timeline, requiring no user interaction beyond visiting a page. The impact depends critically on CSP configuration: in environments with weak or absent CSP headers, arbitrary JavaScript execution is possible, leading to session hijacking, credential theft, or administrative actions. However, modern deployments with strict CSP may limit exploitation to HTML injection without script execution. The patch availability in 2.28.1 and the presence of a public GitHub security advisory indicate this has received vendor attention. The lack of evidence of active in-the-wild exploitation or public POC code, combined with the requirement to view specific historical tag changes, suggests this is a lower-urgency priority than a pre-authentication RCE, but organizations running 2.28.0 should still prioritize patching to eliminate the attack surface entirely.

Exploit ScenarioDerived

An attacker with MantisBT user access (or any user on a public instance) creates a tag with an embedded HTML/JavaScript payload such as '<img src=x onerror="alert(document.cookie)">'. When another user (especially an administrator) views the issue's Timeline after the tag is renamed or deleted, the malicious tag name is rendered without escaping in the History section, executing the injected JavaScript if CSP permits. This could allow the attacker to steal session tokens, perform unauthorized administrative actions, or inject further malicious content. No public proof-of-concept code has been identified, but the vulnerability is trivial to exploit for any authenticated user with tag management permissions.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Mar 23, 2026

MantisBT version 2.28.0 contains a stored cross-site scripting (XSS) vulnerability in the Timeline view of my_view_page.php where tag names are improperly escaped when retrieved from the History table, allowing attackers to inject arbitrary HTML and potentially execute JavaScript if Content Security Policy permits. This affects users viewing issues with renamed or deleted tags, and version 2.28.1 contains the patch. No CVSS score or EPSS data is currently available, but the vulnerability is classified as CWE-79 (Improper Neutralization of Input During Web Page Generation) and carries moderate to high risk in environments without strict CSP enforcement.

RemediationAI

Immediately upgrade MantisBT from version 2.28.0 to version 2.28.1 or later, using the patch available at https://github.com/mantisbt/mantisbt/commit/f32787c14d4518476fe7f05f992dbfe6eaccd815 as reference. For organizations unable to patch immediately, apply the workaround by manually editing offending History entries in the database using SQL queries to remove or sanitize malicious tag names, and apply a temporary code fix by wrapping the $this->tag_name variable in a string_html_specialchars() call within the IssueTagTimelineEvent::html() method. Additionally, enforce strict Content Security Policy (CSP) headers to prevent inline script execution, disable script sources to untrusted origins, and restrict administrative access to the MantisBT application pending patching. Monitor the official MantisBT security advisories at https://github.com/mantisbt/mantisbt/security/advisories for related vulnerabilities.

Affected VersionsENISA

mantisbt = 2.28.0

Affected Packages

composer mantisbt/mantisbt fix: 2.28.2
euvd mantisbt no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in composer, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability exists in the PHP-based MantisBT application (cpe:2.3:a:mantisbt:mantisbt:*:*:*:*:*:*:*:*) within the IssueTagTimelineEvent class, specifically in the html() method where the $this->tag_name variable is output to the page without proper HTML entity encoding. The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation), a classic stored XSS flaw where user-controlled data (in this case, tag names stored in the History table) reaches the output context without sanitization. The data flows from the database History table through the Timeline rendering logic in my_view_page.php, where renamed or deleted tags retain their original names in history records but lack escaping when rendered. The recommended remediation involves wrapping $this->tag_name in the string_html_specialchars() function, which is the application's standard HTML escaping mechanism.

Know when Mantisbt gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

GitHub Advisory PRIMARY 8.6 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from GitHub Advisory · only source for this CVE.

CVSS VectorGitHub Advisory

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
Passive
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch released
Mar 31, 2026 - 21:13 nvd
Patch available
CVE Published
Mar 23, 2026 - 19:15 nvd
HIGH 8.6

DescriptionGitHub Advisory

Mantis Bug Tracker (MantisBT) is an open source issue tracker. In version 2.28.0, improper escaping of tag names retrieved from History in Timeline (my_view_page.php) allows an attacker to inject HTML and, if CSP settings permit, achieve execution of arbitrary JavaScript, when displaying a tag that has been renamed or deleted. Version 2.28.1 contains a patch. Workarounds include editing offending History entries (using SQL) and wrapping $this->tag_name in a string_html_specialchars() call in IssueTagTimelineEvent::html().

Executive ViewAI

Why It Matters

CVE-2026-33548 presents significant security risk, a cross-site scripting vulnerability rated CVSS 8.6. Attackers could inject malicious scripts to steal user sessions, credentials, or perform actions on behalf of authenticated users. Organizations should apply vendor updates when available and consider compensating controls in the interim.

Business Impact: Severe
Compensating Controls

Apply vendor patch. If immediate patching is not feasible: (1) Implement Content-Security-Policy headers; (2) Enable HttpOnly and SameSite cookie attributes; (3) Deploy WAF XSS/CSRF rules.

Threat Intelligence Overview

EPSS Score
0.1%
Top 79% exploitable
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Very High
Technical Impact
Total

Priority Score

43
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +43
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

Related Vulnerabilities in Mantis Bug Tracker XSS and Authentication Flaws

View all 3
CVE-2017-7615 HIGH POC
8.8 Apr 16

MantisBT through 2.3.0 allows arbitrary password reset and unauthenticated admin access via an empty confirm_hash value

CVE-2014-7146 HIGH POC
7.5 Nov 18

The XmlImportExport plugin in MantisBT 1.2.17 and earlier allows remote attackers to execute arbitrary PHP code via a cr

CVE-2014-8598 MEDIUM POC
6.4 Nov 18

The XML Import/Export plugin in MantisBT 1.2.x does not restrict access, which allows remote attackers to (1) upload arb

CVE-2014-2238 MEDIUM POC
6.5 Mar 05

SQL injection vulnerability in the manage configuration page (adm_config_report.php) in MantisBT 1.2.13 through 1.2.16 a

CVE-2019-15074 CRITICAL POC
9.6 Aug 21

The Timeline feature in my_view_page.php in MantisBT through 2.21.1 has a stored cross-site scripting (XSS) vulnerabilit

CVE-2024-23830 HIGH POC
8.3 Feb 20

MantisBT is an open source issue tracker. Rated high severity (CVSS 8.3), this vulnerability is remotely exploitable, no

CVE-2012-2691 HIGH POC
7.5 Jun 17

The mc_issue_note_update function in the SOAP API in MantisBT before 1.2.11 does not properly check privileges, which al

CVE-2014-9280 HIGH POC
7.5 Dec 08

The current_user_get_bug_filter function in core/current_user_api.php in MantisBT before 1.2.18 allows remote attackers

CVE-2014-8554 HIGH POC
7.5 Nov 13

SQL injection vulnerability in the mc_project_get_attachments function in api/soap/mc_project_api.php in MantisBT before

CVE-2014-9089 HIGH POC
7.5 Nov 28

Multiple SQL injection vulnerabilities in view_all_bug_page.php in MantisBT before 1.2.18 allow remote attackers to exec

CVE-2014-1608 HIGH POC
7.5 Mar 18

SQL injection vulnerability in the mci_file_get function in api/soap/mc_file_api.php in MantisBT before 1.2.16 allows re

Vendor StatusVendor

Debian

mantis
Release Status Fixed Version Urgency
(unstable) fixed (unfixed) -

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