CVE Vulnerabilities

CVE-2023-36632

Uncontrolled Recursion

Published: Jun 25, 2023 | Modified: Nov 21, 2024
CVSS 3.x
7.5
HIGH
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS 2.x
RedHat/V2
RedHat/V3
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:N
Ubuntu
MEDIUM

The legacy email.utils.parseaddr function in Python through 3.11.4 allows attackers to trigger RecursionError: maximum recursion depth exceeded while calling a Python object via a crafted argument. This argument is plausibly an untrusted value from an applications input data that was supposed to contain a name and an e-mail address. NOTE: email.utils.parseaddr is categorized as a Legacy API in the documentation of the Python email package. Applications should instead use the email.parser.BytesParser or email.parser.Parser class. NOTE: the vendors perspective is that this is neither a vulnerability nor a bug. The email package is intended to have size limits and to throw an exception when limits are exceeded; they were exceeded by the example demonstration code.

Weakness

The product does not properly control the amount of recursion that takes place, consuming excessive resources, such as allocated memory or the program stack.

Affected Software

Name Vendor Start Version End Version
Python Python * 3.11.4 (including)
Python Ubuntu bionic *
Python Ubuntu trusty *
Python Ubuntu xenial *
Python2.7 Ubuntu bionic *
Python2.7 Ubuntu trusty *
Python2.7 Ubuntu xenial *
Python3.4 Ubuntu trusty *
Python3.5 Ubuntu trusty *
Python3.5 Ubuntu xenial *
Python3.6 Ubuntu bionic *
Python3.7 Ubuntu bionic *
Python3.8 Ubuntu bionic *

Potential Mitigations

References