CVE-2023-45139 json
fonttools XML External Entity Injection (XXE) Vulnerability
published 2024-01-09 2 y ago modified 2026-09-10 1 mo ago also GHSA-6673-4983-2vx5 , PYSEC-2026-1388 , EUVD-2024-0267
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.2%
- EPSS 1.2% chance of exploitation in 30 days, percentile 69%
- public exploits
- 0
- none known
Summary
fontTools is a library for manipulating fonts, written in Python. The subsetting module has a XML External Entity Injection (XXE) vulnerability which allows an attacker to resolve arbitrary entities when a candidate font (OT-SVG fonts), which contains a SVG table, is parsed. This allows attackers to include arbitrary files from the filesystem fontTools is running on or make web requests from the host system. This vulnerability has been patched in version 4.43.0.
Patch / fix
- pypi fonttools 4.43.0
- fonttools fonttools 4.43.0
- fonttools Debian 12 4.38.0-1+deb12u1
- fonttools Debian 14, Debian 13 4.46.0-1
debian advisories DEBIAN-CVE-2023-45139
- fonttools Ubuntu Pro 22.04 LTS 4.29.1-2ubuntu0.1~esm1
ubuntu advisories UBUNTU-CVE-2023-45139
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- python-FontTools openSUSE Tumbleweed 4.62.1-1.3
opensuse advisories openSUSE-SU-2026:11991-1
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2023-45139 updated cvss 7.5
fonttools: XML External Entity Injection (XXE) Vulnerability
-
Red Hat Enterprise Linux 7 fonttools Red Hat Enterprise Linux 8 google-noto-emoji-fonts, google-noto-emoji-color-fonts Red Hat Enterprise Linux 9 google-noto-emoji-fonts, google-noto-emoji-color-fontsnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 18 mo ago
Exploit prediction
1.23% chance of exploitation in the next 30 days, higher than 69% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/fonttools/fonttools/security/advisories/GHSA-6673-4983-2vx5 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| OSV | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | fonttools | >=4.28.2, <4.43.0 |
4.43.0 |
Affected products
- fonttools fonttools
Classification
- Weakness
-
- CWE-611 Improper Restriction of XML External Entity Reference
References
-
github.com
/fonttools/fonttools/commit/9f61271dc1ca82ed91f529b130fe5dc5c9bf1f4c
web, patch
-
github.com
/fonttools/fonttools/security/advisories/GHSA-6673-4983-2vx5
web, exploit, vendor-advisory
-
github.com
/fonttools/fonttools/releases/tag/4.43.0
web, release-notes
- lists.fedoraproject.org /archives/list/package-announce@lists.fedoraproject.org/message/VY63B4SGY4QOQGUXMECRGD6K3YT3GJ75/
-
openwall.com
/lists/oss-security/2024/03/09/1
web
-
openwall.com
/lists/oss-security/2024/03/08/2
web
-
nvd.nist.gov
/vuln/detail/CVE-2023-45139
advisory
-
github.com
/fonttools/fonttools
package
-
lists.fedoraproject.org
/archives/list/package-announce@lists.fedoraproject.org/message/VY63B4SGY4QOQGUXMECRGD6K3YT3GJ75
web
-
pypi.org
/project/fonttools
package
-
github.com
/advisories/GHSA-6673-4983-2vx5
advisory
Sources
- CVE List CVE-2023-45139
- GitHub Advisory GHSA-6673-4983-2vx5
- NVD CVE-2023-45139
- OSV PYSEC-2026-1388
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.