CVE-2026-55620
CVE-2026-55620 · eml_parser: DoS via deeply nested parens in Received headers
This page contains facts from public vulnerability sources. Check the original advisory before updating.
eml_parser serves as a python module for parsing eml files and returning various information found in the e-mail as well as computed information. Prior to 3.0.2, eml_parser.routing.noparenthesis in eml_parser/routing.py removes parenthesized CFWS comments from Received: headers with a regex-based fix-point loop whose running time is quadratic in the nesting depth. A single Received: header with 5,000 nested parentheses causes approximately 1.3 seconds of CPU saturation per parsed message, and doubling the nesting depth approximately quadruples the running time. An attacker can submit relatively small EML files that consume multiple seconds of processing time, causing worker latency, queue backpressure, and possible service-level outages in synchronous gateways, sandboxes, and real-time triage pipelines. This issue is fixed in version 3.0.2.
CVSS 7.5 · High · EPSS 0.6% · Fix available
- Published
- Updated
Stack: python
Affected products and versions
eml_parser
- Versions
- < 3.0.2: Affected
No fix published
eml-parser PyPI
- Versions
- 0.9
- 1.0
- 1.1
- 1.10
- 1.11
- 1.11.1
- 1.11.2
- 1.11.4
- 1.11.5
- 1.11.6
- 1.11.7
- 1.12.0
- 1.13.0
- 1.14.0
- 1.14.1
- 1.14.2
- 1.14.3
- 1.14.4
- 1.14.5
- 1.14.6
- 1.14.7
- 1.14.8
- 1.15.0
- 1.16.0
- 1.17.0
- 1.17.1
- 1.17.2
- 1.17.3
- 1.17.4
- 1.17.5
- 1.3
- 1.4
- 1.5
- 1.6
- 1.7
- 1.8
- 1.9
- 2.0.0
- 2.0.1
- 3.0.0
- 3.0.1
- Affected ranges
- ECOSYSTEM: < 3.0.2
Update to 3.0.2
Original sources
- https://github.com/GOVCERT-LU/eml_parser/security/advisories/GHSA-g7gc-gmgp-wgqg
- https://github.com/GOVCERT-LU/eml_parser/pull/90
- https://github.com/GOVCERT-LU/eml_parser/commit/746a69f86443eb0b6a47f77db3cfe727c21f92b3
- https://github.com/GOVCERT-LU/eml_parser/releases/tag/v3.0.2
- https://nvd.nist.gov/vuln/detail/CVE-2026-55620