Summary
CVE-2026-55471 is a high-severity XML External Entity (XXE) injection vulnerability in HAPI FHIR’s org.hl7.fhir.utilities library, affecting all versions prior to 6.9.10. The flaw resides in XsltUtilities.saxonTransform() overloads, which instantiate an unrestricted Saxon TransformerFactoryImpl and thereby allow an attacker who controls or can tamper with transformed XML to read arbitrary files from the server and conduct blind XXE/Server-Side Request Forgery (SSRF) attacks against internal and external URLs reachable from the host. The vulnerability carries a CVSS 3.1 base score of 8.6 (HIGH) and requires no authentication or user interaction.
Technical details
- Root cause: The
saxonTransform()overloads inorg.hl7.fhir.utilities.XsltUtilitiesinstantiate a barenew net.sf.saxon.TransformerFactoryImpl()with noACCESS_EXTERNAL_DTDorACCESS_EXTERNAL_STYLESHEETrestrictions applied. The siblingtransform()methods correctly useXMLUtil.newXXEProtectedTransformerFactory(), which enforces both restrictions — but this hardened pattern was not applied to the Saxon-specific code paths. - Trigger conditions: An attacker must be able to supply or tamper with XML content that is passed into a
saxonTransform()call. In HAPI FHIR server deployments, FHIR resources can be submitted in XML format as a standard content type, making this a realistic attack surface on internet-facing FHIR API endpoints. - Attack vector: Network-accessible; no authentication, privileges, or user interaction required (CVSS:3.1/AV:N/AC:L/PR:N/UI:N).
- Impact — local file disclosure: Files readable by the JVM process (e.g., configuration files, credentials, system files) can be exfiltrated via external general XML entities injected into the transform input.
- Impact — blind XXE / SSRF: External parameter entities can trigger out-of-band HTTP requests to attacker-controlled servers or to internal network resources, enabling internal network probing and access to cloud instance metadata services.
Affected software
ca.uhn.hapi.fhir:org.hl7.fhir.utilities(part oforg.hl7.fhir.core) — all versions prior to 6.9.10
Severity
- CVSS 3.1 Base Score: 8.6 (HIGH)
- Vector:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
Mitigation and recommended actions
- Immediate: Upgrade
org.hl7.fhir.core(and theorg.hl7.fhir.utilitiesartifact) to version 6.9.10 or later, which introduces a hardened Saxon factory helper that mirrors the existingnewXXEProtectedTransformerFactory()pattern and replaces all bareTransformerFactoryImplinstantiations inXsltUtilities.saxonTransform(). - If immediate patching is not possible: Restrict internet-facing FHIR endpoints from accepting XML-format request bodies (e.g., by blocking
Content-Type: application/fhir+xmlandapplication/xmlat the network or API gateway layer), and ensure outbound HTTP from the FHIR server host is filtered to deny access to internal resources and metadata endpoints.
IONIX Status
The IONIX research team is tracking ongoing exploitation attempts and recommends immediate patching. Potentially affected assets are outlined in this post.

