CVE-2022-2309: NULL Pointer Dereference in lxml/lxml
NULL Pointer Dereference allows attackers to cause a denial of service (or application crash). This only applies when lxml is used together with libxml2 2.9.10 through 2.9.14. libxml2 2.9.9 and earlier are not affected. It allows triggering crashes through forged input data, given a vulnerable code sequence in the application. The vulnerability is caused by the iterwalk function (also used by the canonicalize function). Such code shouldn't be in wide-spread use, given that parsing + iterwalk would usually be replaced with the more efficient iterparse function. However, an XML converter that serialises to C14N would also be vulnerable, for example, and there are legitimate use cases for this code sequence. If untrusted input is received (also remotely) and processed via iterwalk function, a crash can be triggered.
Affected Software
Remediation
Event History
Frequently Asked Questions
What is CVE-2022-2309?
CVE-2022-2309 is a vulnerability that allows attackers to cause a denial of service or application crash in lxml when used with libxml2 2.9.10 through 2.9.14.
What is the severity of CVE-2022-2309?
The severity of CVE-2022-2309 is medium with a CVSS score of 5.3.
Which software versions are affected by CVE-2022-2309?
CVE-2022-2309 affects lxml when used with libxml2 2.9.10 through 2.9.14. libxml2 2.9.9 and earlier versions are not affected.
How can an attacker exploit CVE-2022-2309?
An attacker can exploit CVE-2022-2309 by triggering crashes through forged input data when vulnerable code is executed.
How can I fix CVE-2022-2309?
To fix CVE-2022-2309, update lxml to version 4.9.1 using pip.