CVE-2024-45294 Overview
CVE-2024-45294 is an XML External Entity (XXE) injection vulnerability affecting the HL7 FHIR Core Artifacts repository, which provides the Java core object handling code and utilities (including validator) for the Fast Healthcare Interoperability Resources (FHIR) specification. Prior to version 6.3.23, XSLT transforms performed by various components are vulnerable to XML external entity injections, allowing a processed XML file with a malicious DTD tag to produce XML containing sensitive data from the host system.
This vulnerability is particularly concerning for healthcare organizations and developers using FHIR implementations, as it could lead to unauthorized access to sensitive healthcare data and system information in environments where external clients can submit XML content.
Critical Impact
Attackers can exploit this XXE vulnerability to extract sensitive data from host systems processing FHIR XML content, potentially exposing protected health information (PHI) and system credentials in healthcare environments.
Affected Products
- HL7 FHIR Core Artifacts (org.hl7.fhir.core) versions prior to 6.3.23
- HL7 FHIR IG Publisher versions prior to 1.6.22
- Applications implementing FHIR specification using vulnerable org.hl7.fhir.core library
Discovery Timeline
- 2024-09-06 - CVE-2024-45294 published to NVD
- 2024-09-06 - Last updated in NVD database
Technical Details for CVE-2024-45294
Vulnerability Analysis
This XXE vulnerability exists in the XSLT transformation functionality within the HL7 FHIR Core library. The root issue stems from improper configuration of the XML parser used during XSLT transforms, which fails to disable external entity processing. When the library processes XML input containing malicious Document Type Definition (DTD) declarations, the parser follows external entity references, enabling attackers to read arbitrary files from the host system or perform server-side request forgery (SSRF) attacks.
The vulnerability is classified under CWE-611 (Improper Restriction of XML External Entity Reference), indicating that the affected components do not properly restrict XML external entities when parsing untrusted XML input.
Root Cause
The vulnerability originates from insecure default configurations in the XML parsing components used by org.hl7.fhir.core. Specifically, the XSLT transformation handlers do not disable external entity processing, DOCTYPE declarations, or external DTD loading. This allows XML parsers to resolve external entities, which can reference local files using file:// protocol handlers or remote resources using http:// or other protocols.
In Java-based XML processing, secure configuration typically requires explicitly disabling features such as XMLConstants.FEATURE_SECURE_PROCESSING, disabling external general entities, and preventing access to external DTDs. The absence of these security controls in the affected FHIR Core components creates the XXE attack surface.
Attack Vector
The attack vector is network-based, requiring no authentication or user interaction. An attacker can exploit this vulnerability by submitting a specially crafted XML document containing a malicious DTD to any application endpoint that processes FHIR XML content using the vulnerable library.
A typical XXE attack against this vulnerability would involve an XML document with an external entity declaration referencing a sensitive file such as /etc/passwd on Linux systems or C:\Windows\system.ini on Windows systems. When the FHIR Core library processes this document through its XSLT transformation pipeline, the parser resolves the external entity and includes the file contents in the resulting output.
The attack is particularly effective in healthcare environments where FHIR-compliant applications commonly accept XML submissions from external sources for data exchange purposes. For detailed technical information about this vulnerability, see the GitHub Security Advisory GHSA-6cr6-ph3p-f5rf.
Detection Methods for CVE-2024-45294
Indicators of Compromise
- Unusual XML payloads containing DOCTYPE declarations or ENTITY definitions in FHIR API requests
- Outbound connections from FHIR processing servers to unexpected external hosts
- Log entries showing file access attempts to sensitive system files like /etc/passwd, /etc/shadow, or application configuration files
- Error messages in application logs referencing XML parsing failures with external entity resolution
Detection Strategies
- Implement Web Application Firewall (WAF) rules to detect and block XML payloads containing DOCTYPE or ENTITY declarations
- Monitor network traffic for unusual outbound connections from servers running FHIR applications
- Deploy application-layer monitoring to detect XML parsing anomalies and external entity resolution attempts
- Review application logs for XML processing errors that may indicate exploitation attempts
Monitoring Recommendations
- Enable detailed logging for XML processing operations in FHIR-based applications
- Configure alerting for file system access attempts to sensitive directories from application processes
- Monitor for increased error rates in FHIR XML validation endpoints
- Implement network segmentation monitoring to detect data exfiltration attempts from FHIR processing systems
How to Mitigate CVE-2024-45294
Immediate Actions Required
- Upgrade org.hl7.fhir.core to version 6.3.23 or later immediately
- Upgrade HL7 FHIR IG Publisher to version 1.6.22 or later
- Audit all applications using FHIR Core library to identify vulnerable deployments
- Implement input validation to reject XML documents containing DOCTYPE declarations at the application perimeter
Patch Information
The vulnerability has been patched in org.hl7.fhir.core version 6.3.23 and HL7 FHIR IG Publisher version 1.6.22. Organizations should update their dependencies to these versions or later. The patched versions implement secure XML parser configurations that disable external entity processing and prevent DTD-based attacks.
Patch releases are available from:
Workarounds
- No known workarounds are available according to the security advisory
- As a temporary measure, implement strict network egress controls to limit data exfiltration risk
- Deploy WAF rules to block incoming requests containing XML external entity patterns
- Consider disabling XSLT transformation features if not required for your implementation until patching is complete
# Verify your org.hl7.fhir.core version in Maven projects
mvn dependency:tree | grep org.hl7.fhir.core
# Update to patched version in pom.xml
# Change version to 6.3.23 or later for org.hl7.fhir.core dependencies
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.


