Description
libexpat through 2.9.0 contains a denial of service vulnerability because billion laughs protection in accountingDiffTolerated() in xmlparse.c detects entity amplification too late. Attackers can supply a moderately sized XML document with a large DTD and nested entity expansions to consume tens of seconds of CPU per parse.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| libexpat | libexpat | ≤ 2.9.0 | — |
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 | expat | 2.10.0-1 | — |
| Debian 13 | expat | No fix yet | — |
| Debian 12 | expat | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | tdom +6 | No fix yet | — |
| Ubuntu 26.04 LTS | tdom +5 | No fix yet | — |
| Ubuntu 24.04 LTS | tdom +4 | No fix yet | — |
| Ubuntu 22.04 LTS | tdom +5 | No fix yet | — |
| Ubuntu 20.04 LTS | tdom +4 | No fix yet | — |
Show 9 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 18.04 LTS | gdcm +7 | No fix yet | — |
| Ubuntu 16.04 LTS | gdcm +6 | No fix yet | — |
| Ubuntu Pro 26.04 LTS | swish-e | No fix yet | — |
| Ubuntu Pro 24.04 LTS | swish-e +2 | No fix yet | — |
| Ubuntu Pro 22.04 LTS | swish-e +2 | No fix yet | — |
| Ubuntu Pro 20.04 LTS | expat +3 | No fix yet | — |
| Ubuntu Pro 18.04 LTS | coin3 +4 | No fix yet | — |
| Ubuntu Pro 16.04 LTS | vtk +8 | No fix yet | — |
| Ubuntu Pro 14.04 LTS | vtk +4 | No fix yet | — |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Red Hat Hardened Images 1 | expat +2 | 2.9.0-1.1.hum1 | RHSA-2026:90325 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | expat | 2.10.0-1.1 | openSUSE-SU-2026:12396-1 |
Alpine
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.24 | expat | 2.10.0-r0 | — |
| Alpine v3.23 | expat | 2.10.0-r0 | — |
| Alpine v3.22 | expat | 2.10.0-r0 | — |
| Alpine v3.21 | expat | 2.10.0-r0 | — |
Azure Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Azure Linux 3 | cmake +1 | No fix yet | — |
Wolfi
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Wolfi rolling | expat +3 | 2.10.0-r0 | — |
Advisories 3
- RHSA-2026:90325 Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update Red Hat Security Advisories (RHSA) · Nov 13, 2026
- openSUSE-SU-2026:12396-1 expat-2.10.0-1.1 on GA media SUSE / openSUSE Security Updates · Nov 4, 2026
- WID-SEC-2026-4123 expat: Schwachstelle ermöglicht Denial of Service BSI CERT-Bund (WID) · Nov 1, 2026
References
- https://github.com/libexpat/libexpat/pull/1433 patch issue-tracking
- https://github.com/libexpat/libexpat/issues/1160 issue-tracking
- https://github.com/hannob/lololol exploit
- https://github.com/libexpat/libexpat product
- VulnCheck Advisory: libexpat through 2.9.0 Denial of Service via Billion Laughs Detection Delay third-party-advisory