Description
dom4j before 2.0.3 and 2.1.x before 2.1.3 allows external DTDs and External Entities by default, which might enable XXE attacks. However, there is popular external documentation from OWASP showing how to enable the safe, non-default behavior in any application that uses dom4j.
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | dom4j | 2.1.3-1 | — |
| Debian 13 | dom4j | 2.1.3-1 | — |
| Debian 12 | dom4j | 2.1.3-1 | — |
| Debian 8 | dom4j | 1.6.1+dfsg.3-2+deb8u2 | DLA-2191-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 20.04 LTS | dom4j | No fix yet | — |
| Ubuntu 18.04 LTS | dom4j | No fix yet | — |
| Ubuntu 16.04 LTS | dom4j | 1.6.1+dfsg.3-2ubuntu1.1 | USN-4575-1 |
| Ubuntu 14.04 LTS | dom4j | No fix yet | — |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Red Hat JBoss EAP 7 | eap7-dom4j | 2.1.3-1.redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-elytron-web +1 | 1.2.5-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-glassfish-jsf | 2.3.5-13.SP3_redhat_00011.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-hal-console | 3.0.23-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-hibernate +4 | 5.3.17-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-hibernate-validator +1 | 6.0.20-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-infinispan +8 | 9.4.19-1.Final_redhat_00001.1.el6eap | RHSA-2020:3463, RHSA-2020:3462, RHSA-2020:3461 |
| Red Hat JBoss EAP 7 | eap7-ironjacamar +8 | 1.4.22-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-jackson-core +9 | 2.10.4-1.redhat_00001.1.el6eap | RHSA-2020:3463, RHSA-2020:3462, RHSA-2020:3461 |
| Red Hat JBoss EAP 7 | eap7-jackson-databind | 2.9.10.4-1.redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-jboss-genericjms | 2.0.6-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-jboss-jsf-api_2.3_spec | 2.3.5-7.SP2_redhat_00005.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-jboss-logmanager | 2.1.15-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-jboss-modules | 1.8.10-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-jboss-server-migration +23 | 1.3.1-13.Final_redhat_00014.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-jboss-server-migration-eap7.3-server +6 | 1.7.1-7.Final_redhat_00009.1.el6eap | RHSA-2020:3463, RHSA-2020:3462, RHSA-2020:3461 |
| Red Hat JBoss EAP 7 | eap7-jboss-xnio-base | 3.7.6-4.SP3_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-netty +1 | 4.1.48-1.Final_redhat_00001.1.el6eap | RHSA-2020:3463, RHSA-2020:3462, RHSA-2020:3461 |
| Red Hat JBoss EAP 7 | eap7-resteasy +19 | 3.6.1-10.SP9_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-undertow | 2.0.30-4.SP4_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-weld-ejb +6 | 3.0.6-4.Final_redhat_00004.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-wildfly +2 | 7.2.9-4.GA_redhat_00003.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-wildfly-common | 1.5.2-1.Final_redhat_00002.1.el6eap | RHSA-2020:3463, RHSA-2020:3462, RHSA-2020:3461 |
| Red Hat JBoss EAP 7 | eap7-wildfly-elytron | 1.6.8-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-wildfly-elytron-tool | 1.10.7-1.Final_redhat_00001.1.el6eap | RHSA-2020:3463, RHSA-2020:3462, RHSA-2020:3461 |
| Red Hat JBoss EAP 7 | eap7-wildfly-http-client +4 | 1.0.22-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
| Red Hat JBoss EAP 7 | eap7-wildfly-java-jdk8 +1 | 7.2.9-4.GA_redhat_00003.1.el7eap | RHSA-2020:3638, RHSA-2020:3462 |
| Red Hat JBoss EAP 7 | eap7-wildfly-transaction-client | 1.1.11-1.Final_redhat_00001.1.el6eap | RHSA-2020:3639, RHSA-2020:3638, RHSA-2020:3637 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SUSE Manager Server Module 4.0 | dom4j | 1.6.1-4.9.4 | SUSE-SU-2020:1383-1 |
| SUSE Manager Server 3.2 | dom4j | 1.6.1-27.7.2 | SUSE-SU-2020:1382-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | dom4j | 1.6.1-33.6 | openSUSE-SU-2024:10724-1 |
| openSUSE Leap 15.1 | dom4j | 1.6.1-lp151.6.3.1 | openSUSE-SU-2020:0719-1 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Maven | dom4j:dom4j | <= 1.6.1 | — | GHSA-hwj3-m3p6-hj38 |
| Maven | org.dom4j:dom4j | < 2.0.3 | 2.0.3 | GHSA-hwj3-m3p6-hj38 |
| Maven | org.dom4j:dom4j | >= 2.1.0, < 2.1.3 | 2.1.3 | GHSA-hwj3-m3p6-hj38 |
Advisories 16
- RHSA-2020:3462 Red Hat Security Advisory: Red Hat JBoss Enterprise Application Platform 7.3.2 security update Red Hat Security Advisories (RHSA) · Oct 13, 2026
- RHSA-2020:3463 Red Hat Security Advisory: Red Hat JBoss Enterprise Application Platform 7.3.2 security update Red Hat Security Advisories (RHSA) · Oct 13, 2026
- RHSA-2020:3461 Red Hat Security Advisory: Red Hat JBoss Enterprise Application Platform 7.3.2 security update Red Hat Security Advisories (RHSA) · Oct 13, 2026
- RHSA-2020:3639 Red Hat Security Advisory: Red Hat JBoss Enterprise Application Platform 7.2.9 on RHEL 8 security update Red Hat Security Advisories (RHSA) · Oct 9, 2026
- RHSA-2020:3638 Red Hat Security Advisory: Red Hat JBoss Enterprise Application Platform 7.2.9 on RHEL 7 security update Red Hat Security Advisories (RHSA) · Oct 9, 2026
- RHSA-2020:3637 Red Hat Security Advisory: Red Hat JBoss Enterprise Application Platform 7.2.9 on RHEL 6 security update Red Hat Security Advisories (RHSA) · Oct 9, 2026
- USN-4575-1 dom4j vulnerability Ubuntu Security Notices (USN) · Apr 27, 2026
- DLA-2191-1 dom4j - security update Debian Security (DSA / DLA) · Mar 9, 2026
- SUSE-SU-2020:1382-1 Security update for dom4j SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2020:0719-1 Security update for dom4j SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:10724-1 dom4j-1.6.1-33.6 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2020:1383-1 Security update for dom4j SUSE / openSUSE Security Updates · Feb 4, 2026
- WID-SEC-2025-1459 Dell Data Protection Advisor: Mehrere Schwachstellen BSI CERT-Bund (WID) · Jul 3, 2025
- WID-SEC-2022-1912 Red Hat JBoss Enterprise Application Platform: Mehrere Schwachstellen BSI CERT-Bund (WID) · Feb 23, 2025
- WID-SEC-2024-0068 IBM Business Automation Workflow: Mehrere Schwachstellen BSI CERT-Bund (WID) · Nov 11, 2024
- WID-SEC-2023-0119 Oracle Utilities Applications: Mehrere Schwachstellen BSI CERT-Bund (WID) · Jan 17, 2023
References
- openSUSE-SU-2020:0719 vendor-advisory
- https://www.oracle.com/security-alerts/cpujul2020.html
- https://cheatsheetseries.owasp.org/cheatsheets/XML_External_Entity_Prevention_Cheat_Sheet.html
- https://bugzilla.redhat.com/show_bug.cgi?id=1694235
- https://github.com/dom4j/dom4j/releases/tag/version-2.1.3
- https://github.com/dom4j/dom4j/commit/a8228522a99a02146106672a34c104adbda5c658
- https://security.netapp.com/advisory/ntap-20200518-0002/
- USN-4575-1 vendor-advisory
- https://www.oracle.com/security-alerts/cpuoct2020.html
- https://github.com/dom4j/dom4j/issues/87
- https://github.com/dom4j/dom4j/commits/version-2.0.3
- [velocity-dev] 20201203 Use of external DTDs - CVE-2020-10683 mailing-list
- [velocity-dev] 20201203 Re: Use of external DTDs - CVE-2020-10683 mailing-list
- https://www.oracle.com/security-alerts/cpujan2021.html
- https://www.oracle.com/security-alerts/cpuApr2021.html
- https://www.oracle.com//security-alerts/cpujul2021.html
- [freemarker-notifications] 20210906 [jira] [Created] (FREEMARKER-190) The jar dom4j has known security issue that Freemarker compiles dependend on it mailing-list
- https://www.oracle.com/security-alerts/cpuoct2021.html
- https://www.oracle.com/security-alerts/cpujan2022.html
- https://www.oracle.com/security-alerts/cpujul2022.html