CVE-2026-106443 json
WeasyPrint: EPS images reach the Ghostscript interpreter resulting in RCE
published last mo. modified 25d ago also EUVD-2026-93668 , GHSA-r543-q48m-4c9j , PYSEC-2026-4311
- cvss
- 8.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.9%
- EPSS 0.9% chance of exploitation in 30 days, percentile 60%
- public exploits
- 0
- none known
Summary
WeasyPrint helps web developers to create PDF documents. Prior to 70.0, the image-loading path in weasyprint/images.py passes fetched image bytes from HTML img URLs, CSS image values, SVG image references, and data URIs to Pillow's generic image dispatcher without excluding EPS or PostScript formats. On hosts with Ghostscript installed, Pillow EpsImagePlugin invokes the interpreter for attacker-controlled PostScript, which can produce interpreter-permitted effects and can lead to remote code execution when the installed Ghostscript version has a usable sandbox bypass. Hosts without Ghostscript do not reach this rasterization path. This issue is fixed in version 70.0.
Patch / fix
- pypi weasyprint 70.0
- kozea weasyprint 70.0
- weasyprint Debian 14 70.0-1
debian advisories DEBIAN-CVE-2026-106443
Is CVE-2026-106443 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-106443 updated cvss 8.1
weasyprint: WeasyPrint: Arbitrary code execution via unsafe PostScript image processing
-
Red Hat Ansible Automation Platform 2 ansible-automation-platform/automation-dashboard-rhel9not 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
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- last mo.
Exploit prediction
0.92% chance of exploitation in the next 30 days, higher than 60% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| GitHub | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| OSV | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | weasyprint | <70.0 |
70.0 |
Affected products
- Kozea WeasyPrint
Classification
- Weakness
-
- CWE-20 Improper Input Validation
References
-
github.com
/Kozea/WeasyPrint/commit/39cd37ce1610bd890388e26591c569db1cbab542
web
-
github.com
/Kozea/WeasyPrint/security/advisories/GHSA-r543-q48m-4c9j
web
-
github.com
/Kozea/WeasyPrint/releases/tag/v70.0
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-106443
advisory
-
github.com
/Kozea/WeasyPrint
package
-
pypi.org
/project/weasyprint
package
-
github.com
/advisories/GHSA-r543-q48m-4c9j
advisory
Sources
- CVE List CVE-2026-106443
- GitHub Advisory GHSA-r543-q48m-4c9j
- NVD CVE-2026-106443
- OSV PYSEC-2026-4311
Fencer Intel 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.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.