CVE-2021-4249: xml-conduit unbounded entity expansion

xml-conduit Updated 02 Oct 2025

Summary

18/07/2023
Yes i
Unrated
Not published

CVE-2021-4249: xml-conduit unbounded entity expansion. Affects xml-conduit versions >= 0.5.0, < 1.9.1.0. Fixed in 1.9.1.0. How to fix ↓

Also tracked for

The same CVE-2021-4249 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Sponsored MarkAI Find prospects already talking about the problem you solve AI watches the communities your customers use to find qualified prospects, then alerts you when a conversation is worth joining. See MarkAI

Background

The xml-conduit package is a Haskell library that provides a simple and efficient way to parse and generate XML documents. It is commonly used for XML processing tasks in Haskell applications. However, a vulnerability has been discovered in the DOCTYPE Entity Expansion Handler of xml-conduit, which can lead to an infinite loop when processing unbounded entity expansions. This vulnerability can be exploited remotely.

Vulnerability Detail

The vulnerability in xml-conduit arises from an unknown function in the file xml-conduit/src/Text/XML/Stream/Parse.hs. By manipulating the XML input, an attacker can trigger an infinite loop in the entity expansion process. This can result in resource exhaustion and denial of service attacks. The vulnerability has been assigned a CVSSv3 score of 7.5 (High severity). Upgrading to version 1.9.1.0 of xml-conduit resolves this issue.

How To Fix

Minimum fixed version

1.9.1.0

This is the first release that contains the fix.

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Conclusion

The xml-conduit package is vulnerable to an unbounded entity expansion issue, which can be exploited remotely to cause denial of service attacks. Upgrading to version 1.9.1.0 of xml-conduit is recommended to address this vulnerability. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for xml-conduit →

Share this vulnerability

FAQ

xml-conduit is a Haskell library for parsing and generating XML documents. It provides an efficient and easy-to-use interface for XML processing tasks.

The vulnerability in xml-conduit can lead to resource exhaustion and denial of service attacks. An attacker can exploit this vulnerability remotely to cause an infinite loop in the entity expansion process.

You can use Vulert's playground (https://vulert.com/scanner) to check if your application is affected by this vulnerability. Simply upload your manifest file (e.g., package-lock.json) and Vulert will analyze it for open-source vulnerabilities in real-time.

No, there is no known workaround for this vulnerability. It is recommended to upgrade the xml-conduit package to the fixed version (1.9.1.0) to mitigate the issue.

You can find more information about this vulnerability in the security advisory generated by Haskell's security advisories database. The advisory can be accessed at: [link to the advisory]

How To Fix

Minimum fixed version

1.9.1.0

This is the first release that contains the fix.

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback