Skip to content

Allure Report allows Improper XXE Restriction via DocumentBuilderFactory

High severity GitHub Reviewed Published Jun 24, 2025 in allure-framework/allure2 • Updated Jun 25, 2025

Package

maven io.qameta.allure.plugins:junit-xml-plugin (Maven)

Affected versions

<= 2.34.0

Patched versions

2.34.1
maven io.qameta.allure.plugins:trx-plugin (Maven)
<= 2.34.0
2.34.1
maven io.qameta.allure.plugins:xunit-xml-plugin (Maven)
<= 2.34.0
2.34.1

Description

Summary

A critical XML External Entity (XXE) vulnerability exists in the xunit-xml-plugin used by Allure 2. The plugin fails to securely configure the XML parser (DocumentBuilderFactory) and allows external entity expansion when processing test result .xml files. This allows attackers to read arbitrary files from the file system and potentially trigger server-side request forgery (SSRF).

Details

In \allure2-main\plugins\xunit-xml-plugin\src\main\java\io\qameta\allure\xunitxml\XunitXmlPlugin.java the application uses DocumentBuilderFactory without disabling DTDs or external entities. By generating a report with a malicious xml file within it, an attacker can perform XXE to leverage SSRF, or to read system files.

PoC

To recreate this vulnerability, you need to install allure for command-line (In my POC I used a Windows 11 Machine).

  1. Create a folder called allure, and within it, create a malicious XML file. I will attach my SSRF and file reading payloads, however, for the rest of the POC, I will focus on reading system files for better screenshots.
    ##SSRF (replace webhook link with your own)
    image

##Reading System Files
image

  1. Put the malicious .xml file into the allure directory created previously
  2. Run the following command to run the report allure generate C:\path\to\directory\allure -o report --clean
  3. To view and confirm the executed payload, run allure open report
  4. When the report opens, confirm the payload executedby going to Categories > Product defects > <payload response>
    image

Impact

The explained XXE vulnerability can lead to Arbitrary File Disclosure and Server-Side Request Forgery. This exploitation can also be carried out silently, meaning it can be carried out without user interaction if the tool is automated within an application, and can go undetected with a carefully crafted payload. This could allow a malicious actor to view other source codes which may contain API or product keys, internal application URLs, or other secret items. This makes it an especially high risk when ran within a CI/CD platform.

References

@baev baev published to allure-framework/allure2 Jun 24, 2025
Published by the National Vulnerability Database Jun 24, 2025
Published to the GitHub Advisory Database Jun 25, 2025
Reviewed Jun 25, 2025
Last updated Jun 25, 2025

Severity

High

CVSS overall score

This score calculates overall vulnerability severity from 0 to 10 and is based on the Common Vulnerability Scoring System (CVSS).
/ 10

CVSS v3 base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

CVSS v3 base metrics

Attack vector: More severe the more the remote (logically and physically) an attacker can be in order to exploit the vulnerability.
Attack complexity: More severe for the least complex attacks.
Privileges required: More severe if no privileges are required.
User interaction: More severe when no user interaction is required.
Scope: More severe when a scope change occurs, e.g. one vulnerable component impacts resources in components beyond its security scope.
Confidentiality: More severe when loss of data confidentiality is highest, measuring the level of data access available to an unauthorized user.
Integrity: More severe when loss of data integrity is the highest, measuring the consequence of data modification possible by an unauthorized user.
Availability: More severe when the loss of impacted component availability is highest.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

EPSS score

Exploit Prediction Scoring System (EPSS)

This score estimates the probability of this vulnerability being exploited within the next 30 days. Data provided by FIRST.
(10th percentile)

Weaknesses

CVE ID

CVE-2025-52888

GHSA ID

GHSA-h7qf-qmf3-85qg

Credits

Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.