CVE-2026-45071 Symfony: XXE (Local File Disclosure) in DomCrawler::addXmlContent() via validateOnParse = true
An attacker can read local files by supplying malicious XML to the DomCrawler component due to enabled external entity resolution.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-45071?
CVE-2026-45071 is a high-severity vulnerability in Sensiolabs Symfony, published on 14 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Symfony is a PHP framework for web and console applications and a set of reusable PHP components. Prior to 5.4.52, 6.4.40, 7.4.12, and 8.0.12, Crawler::addXmlContent() set DOMDocument::$validateOnParse = true before loadXML(), re-enabling external entity resolution and allowing attacker-supplied XML to expand file:// entities such as local files. This issue is fixed in versions 5.4.52, 6.4.40, 7.4.12, and 8.0.12.
Weakness: CWE-611
Which versions are affected by CVE-2026-45071?
16 open source packages ship an affected version, including symfony/dom-crawler and symfony/symfony. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
symfony/dom-crawler Packagist | All versions | 5.4.52 |
symfony/dom-crawler Packagist | All versions | 5.4.52 |
symfony/dom-crawler Packagist | From 6.0.0 | 6.4.40 |
symfony/dom-crawler Packagist | From 6.0.0 | 6.4.40 |
symfony/dom-crawler Packagist | From 7.0.0 | 7.4.12 |
symfony/dom-crawler Packagist | From 7.0.0 | 7.4.12 |
10 more packages
symfony/dom-crawler Packagist | From 8.0.0 | 8.0.12 |
symfony/dom-crawler Packagist | From 8.0.0 | 8.0.12 |
symfony/symfony Packagist | All versions | 5.4.52 |
symfony/symfony Packagist | All versions | 5.4.52 |
symfony/symfony Packagist | From 6.0.0 | 6.4.40 |
symfony/symfony Packagist | From 6.0.0 | 6.4.40 |
symfony/symfony Packagist | From 7.0.0 | 7.4.12 |
symfony/symfony Packagist | From 7.0.0 | 7.4.12 |
symfony/symfony Packagist | From 8.0.0 | 8.0.12 |
symfony/symfony Packagist | From 8.0.0 | 8.0.12 |
Products include Sensiolabs Symfony.
How do I fix CVE-2026-45071?
Upgrade symfony/dom-crawler to a fixed version for your release line: 5.4.52, 6.4.40, 7.4.12 or 8.0.12.
Is CVE-2026-45071 being exploited?
There is no known exploitation of CVE-2026-45071 in the wild and no public exploit code.
Public exploit code: 1 proofs of concept on GitHub.
Other vulnerabilities in Sensiolabs Symfony
Sources
Also known as DEBIAN-CVE-2026-45071, GHSA-x6g4-fwcc-jj8w, MINI-8w79-696m-9683, MINI-qqhp-7395-ww4c, MINI-xvp6-83ch-vmpr, UBUNTU-CVE-2026-45071.