GitHub Advisoryadvisory · PyPI

GHSA-fxgq-9m89-cxj9 eml_parser has a URL extraction bypass via HTML entities in URLs

MEDIUM Published 2026-08-25 Modified 2026-08-25 Official page ↗
Aliases
CVE-2026-55618
Ecosystem
PyPI
Packages
eml_parser
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N
Weaknesses
CWE-116
Reviewed
2026-08-25

Affected packages

• PyPI eml_parser: < 3.0.2 → fixed in 3.0.2

Description

Summary `eml_parser` performs certain validations on potential URL strings to discard bogus values. In versions prior to `3.0.2`, this validation was performed before unescaping any HTML entities that might occur in the string. This caused the library to wrongfully reject valid URLs that use HTML entities for the `:`, `/`, or `.` characters. These URLs would then not be included in the list of extracted URLs. Similarly, the host parts of such URLs would not be extracted. For example, neither the URL `https&#58;&#47;&#47;phishing&#46;example&#46;com` nor its host (`phishing.example.com`) would appear in the parsing result. Impact `eml_parser` is used in email security gateways and SOC pipelines to extract URLs as IOCs. Those URLs are then checked against threat-intel feeds, URL reputation services, and sandboxes. A URL that is not extracted is never checked. Patches Since version 3.0.2 the library unescapes all HTML entities in every URL before deciding to accept or reject it. A test was added to prevent regressions.

Related

Alias · CVE (1)

  • CVE-2026-55618 eml_parser serves as a python module for parsing eml files and returning various information found in the e-mail as well as computed… vulnerability

Weakness · CWE (1)

  • CWE-116 Improper Encoding or Escaping of Output weakness

References