Description
HAPI FHIR is a complete implementation of the HL7 FHIR standard for healthcare interoperability in Java. Prior to 6.9.11, XhtmlParser.java imposes no maximum element nesting depth, so a deeply nested text.div narrative triggers unbounded recursion between parseElementInner() and parseElement(), raising a StackOverflowError. An attacker who can submit FHIR resources containing such narratives can thus crash a parsing or validation worker thread, affecting validator services and any application that parses attacker-supplied FHIR JSON or XML. This issue is fixed in version 6.9.11.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| hapifhir | org.hl7.fhir.core | < 6.9.11 | — |
| hapifhir | ca.uhn.hapi.fhir:org.hl7.fhir.r5 | < 6.9.11 | — |
| hapifhir | ca.uhn.hapi.fhir:org.hl7.fhir.utilities | < 6.9.11 | — |
| hapifhir | ca.uhn.hapi.fhir:org.hl7.fhir.validation | < 6.9.11 | — |
| hapifhir | ca.uhn.hapi.fhir:org.hl7.fhir.validation.cli | < 6.9.11 | — |