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 application's 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 vendor's 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.
References
Link | Resource |
---|---|
https://docs.python.org/3/library/email.html | Product |
https://docs.python.org/3/library/email.utils.html | Product |
https://github.com/Daybreak2019/PoC_python3.9_Vul/blob/main/RecursionError-email.utils.parseaddr.py | Product |
https://github.com/python/cpython/issues/103800 | Exploit Issue Tracking |
Configurations
History
07 Nov 2023, 04:16
Type | Values Removed | Values Added |
---|---|---|
Summary | 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 application's 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 vendor's 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. |
06 Jul 2023, 16:00
Type | Values Removed | Values Added |
---|---|---|
CWE | CWE-674 | |
CPE | cpe:2.3:a:python:python:*:*:*:*:*:*:*:* | |
First Time |
Python python
Python |
|
CVSS |
v2 : v3 : |
v2 : unknown
v3 : 7.5 |
References | (MISC) https://docs.python.org/3/library/email.html - Product | |
References | (MISC) https://docs.python.org/3/library/email.utils.html - Product | |
References | (MISC) https://github.com/python/cpython/issues/103800 - Exploit, Issue Tracking | |
References | (MISC) https://github.com/Daybreak2019/PoC_python3.9_Vul/blob/main/RecursionError-email.utils.parseaddr.py - Product |
29 Jun 2023, 13:15
Type | Values Removed | Values Added |
---|---|---|
Summary | ** DISPUTED ** 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 application's 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 vendor's 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. | |
References |
|
25 Jun 2023, 18:15
Type | Values Removed | Values Added |
---|---|---|
New CVE |
Information
Published : 2023-06-25 18:15
Updated : 2024-08-02 17:16
NVD link : CVE-2023-36632
Mitre link : CVE-2023-36632
CVE.ORG link : CVE-2023-36632
JSON object : View
Products Affected
python
- python
CWE
CWE-674
Uncontrolled Recursion