WeasyPrint helps web developers to create PDF documents. Prior to 69.0, WeasyPrint embeds unescaped HTML presentational-hint attribute values into CSS in weasyprint/css/__init__.py when presentational_hints=True. The background attribute is inserted into a background-image:url() declaration and parsed by tinycss2.parse_blocks_contents(), allowing untrusted HTML to inject additional CSS declarations. Applications that render untrusted HTML with presentational hints enabled can be affected by CSS injection and server-side requests through injected url() values. This issue is fixed in version 69.0.
CVE-2026-49452
Score 6.5 from GitHub Security Advisory published 2026-07-06. a secondary CVSS source baseline 6.5; sources differ by 0.0.
- Lower severity and no public exploit yet
No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.
- CVSS v3
- 6.5
- EG Score
- 6.5(medium)
- EG Risk
- 60(Attend)EG Risk 60/100SSVC: Attend
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity65% × 45%Exploitation40% × 40%Automatability100% × 15%Action: Remediate soon — notable exploitation risk. - EPSS PROB
- 0%
- EPSS %ILE
- 19%
- KEV
- Not listed
Published
July 6, 2026
Last Modified
August 19, 2026
Advisory Details (4)
Auto-updated Aug 18, 2026CSS Injection via Presentational Hints in WeasyPrint · Advisory · Kozea/WeasyPrint · GitHub
https://github.com/Kozea/WeasyPrint/security/advisories/GHSA-jhhc-3hcp-qhm5v69.0
Patch available: Kozea/WeasyPrint v69.0
https://github.com/Kozea/WeasyPrint/releases/tag/v69.0Use HTML parsers for presentational hints
Patch available: Kozea/WeasyPrint v69.0 (PR #2773 merged 2026-05-25)
https://github.com/Kozea/WeasyPrint/pull/2773commit e158264e33fa (Kozea/WeasyPrint)
Patch available: Kozea/WeasyPrint v69.0 (contains commit e158264e33fa)
https://github.com/Kozea/WeasyPrint/commit/e158264e33fa399b29f415d30719c1d85a55df1dVendor Advisories for CVE-2026-49452(1)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
Patch Availability(1)
| Vendor / Ecosystem | Fixed in / Patch | Released | Source |
|---|---|---|---|
| pip | weasyprint | — | ghsa |
Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.
Affected Packages
(5 across 5 ecosystems)
Debian:11(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| weasyprint | 51-2 ... 69.0-2 (25 versions) | — | — |
Debian:12(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| weasyprint | 57.2-1 ... 69.0-2 (14 versions) | — | — |
Debian:13(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| weasyprint | 62.3-1, 67.0-1, 69.0-1, 69.0-2 | — | — |
Debian:14(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| weasyprint | 62.3-1, 67.0-1 | 69.0-1 | — |
PyPI(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| weasyprint | 0.1 ... 68.1 (118 versions) | — | — |
Weakness Classification(1)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 14× in last 7d / 51× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-08-30 19:17 UTCEPSS rescore
- 2026-08-30 08:14 UTCEG score recompute
- 2026-08-30 08:14 UTCGHSA enrichment
- 2026-08-30 01:22 UTCEPSS rescore
- 2026-08-28 21:41 UTCEPSS rescore
- 2026-08-27 21:59 UTCEG score recompute
- 2026-08-27 21:59 UTCGHSA enrichment
- 2026-08-27 14:25 UTCEPSS rescore
- 2026-08-26 14:46 UTCEPSS rescore
- 2026-08-26 13:55 UTCEG score recompute
- 2026-08-26 13:55 UTCGHSA enrichment
- 2026-08-25 13:49 UTCEPSS rescore
- 2026-08-24 20:48 UTCEG score recompute
- 2026-08-24 20:48 UTCGHSA enrichment
- 2026-08-23 18:31 UTCEG score recompute
- 2026-08-23 18:31 UTCGHSA enrichment
- 2026-08-23 00:19 UTCEPSS rescore
- 2026-08-22 18:02 UTCEG score recompute
- 2026-08-22 18:02 UTCGHSA enrichment
- 2026-08-21 23:49 UTCEPSS rescore
- 2026-08-21 17:24 UTCEG score recompute
- 2026-08-21 17:24 UTCGHSA enrichment
- 2026-08-20 22:55 UTCEPSS rescore
- 2026-08-20 16:55 UTCEG score recompute
- 2026-08-20 16:55 UTCGHSA enrichment
Show 47 moreShow fewer
- 2026-08-19 17:04 UTCEPSS rescore
- 2026-08-19 16:26 UTCEG score recompute
- 2026-08-19 16:26 UTCGHSA enrichment
- 2026-08-19 15:30 UTCEG score recompute
- 2026-08-19 15:29 UTCGHSA enrichment
- 2026-08-18 18:25 UTCEG score recompute
- 2026-08-18 18:25 UTCGHSA enrichment
- 2026-08-18 18:15 UTCGHSA enrichment
- 2026-08-17 23:38 UTCGHSA enrichment
- 2026-08-16 23:09 UTCGHSA enrichment
- 2026-08-15 22:40 UTCGHSA enrichment
- 2026-08-14 22:10 UTCGHSA enrichment
- 2026-08-13 21:41 UTCGHSA enrichment
- 2026-08-12 21:12 UTCGHSA enrichment
- 2026-08-11 20:34 UTCGHSA enrichment
- 2026-08-10 20:06 UTCGHSA enrichment
- 2026-08-09 19:37 UTCGHSA enrichment
- 2026-08-08 19:09 UTCGHSA enrichment
- 2026-08-07 18:40 UTCGHSA enrichment
- 2026-08-06 18:09 UTCGHSA enrichment
- 2026-08-05 17:40 UTCEG score recompute
- 2026-08-05 17:40 UTCGHSA enrichment
- 2026-08-04 17:12 UTCGHSA enrichment
- 2026-08-03 16:43 UTCGHSA enrichment
- 2026-08-02 16:14 UTCGHSA enrichment
- 2026-08-01 15:45 UTCGHSA enrichment
- 2026-07-31 15:16 UTCGHSA enrichment
- 2026-07-30 14:47 UTCEG score recompute
- 2026-07-30 14:47 UTCGHSA enrichment
- 2026-07-29 14:15 UTCGHSA enrichment
- 2026-07-28 13:46 UTCGHSA enrichment
- 2026-07-27 13:16 UTCGHSA enrichment
- 2026-07-26 12:47 UTCEG score recompute
- 2026-07-26 12:47 UTCGHSA enrichment
- 2026-07-23 03:18 UTCEG score recompute
- 2026-07-16 23:13 UTCGHSA enrichment
- 2026-07-15 22:44 UTCGHSA enrichment
- 2026-07-14 22:15 UTCGHSA enrichment
- 2026-07-13 21:46 UTCGHSA enrichment
- 2026-07-12 21:17 UTCGHSA enrichment
- 2026-07-11 20:48 UTCGHSA enrichment
- 2026-07-10 20:19 UTCGHSA enrichment
- 2026-07-09 19:49 UTCGHSA enrichment
- 2026-07-08 19:20 UTCGHSA enrichment
- 2026-07-07 18:51 UTCGHSA enrichment
- 2026-07-06 18:22 UTCEG score recompute
- 2026-07-06 18:21 UTCGHSA enrichment
Related CVEs(same CWE)
Same CWE
10 shownCWE-74
- CVE-2014-8423EG 10.0EPSS p99HIGH
- CVE-2015-10062NVD 5.5EG 9.8CRITICAL
- CVE-2015-10027NVD 5.5EG 9.8CRITICAL
- CVE-2016-15007NVD 5.5EG 9.8CRITICAL
- CVE-2016-15004NVD 7.3EG 9.8CRITICAL
- CVE-2013-4144EG 9.8CRITICAL
- CVE-2013-7487EG 9.8CRITICAL
- CVE-2014-4678EG 9.8EPSS p92CRITICAL
- CVE-2014-4967EG 9.8CRITICAL
- CVE-2014-4966EG 9.8CRITICAL
Frequently asked(5)
What is CVE-2026-49452?
When was CVE-2026-49452 disclosed?
Is CVE-2026-49452 actively exploited?
What is the CVSS score of CVE-2026-49452?
How do I remediate CVE-2026-49452?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-49452
Is Your Infrastructure Affected by CVE-2026-49452?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.