Lucene search

K
openvasCopyright (C) 2023 Greenbone AGOPENVAS:1361412562310104816
HistoryJun 26, 2023 - 12:00 a.m.

Python <= 3.12.1 'RecursionError' Vulnerability - Windows

2023-06-2600:00:00
Copyright (C) 2023 Greenbone AG
plugins.openvas.org
4
python
recursionerror
vulnerability
windows
cve-2023-36632
legacy api
email.utils.parseaddr
solution options

7.5 High

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

NONE

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

8.7 High

AI Score

Confidence

High

0.001 Low

EPSS

Percentile

31.9%

Python is prone to a

# SPDX-FileCopyrightText: 2023 Greenbone AG
# Some text descriptions might be excerpted from (a) referenced
# source(s), and are Copyright (C) by the respective right holder(s).
#
# SPDX-License-Identifier: GPL-2.0-only

CPE = "cpe:/a:python:python";

if(description)
{
  script_oid("1.3.6.1.4.1.25623.1.0.104816");
  script_version("2024-02-05T14:36:57+0000");
  script_tag(name:"last_modification", value:"2024-02-05 14:36:57 +0000 (Mon, 05 Feb 2024)");
  script_tag(name:"creation_date", value:"2023-06-26 13:02:27 +0000 (Mon, 26 Jun 2023)");
  script_tag(name:"cvss_base", value:"7.8");
  script_tag(name:"cvss_base_vector", value:"AV:N/AC:L/Au:N/C:N/I:N/A:C");
  script_tag(name:"severity_vector", value:"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H");
  script_tag(name:"severity_origin", value:"NVD");
  script_tag(name:"severity_date", value:"2023-07-06 16:00:00 +0000 (Thu, 06 Jul 2023)");

  script_cve_id("CVE-2023-36632"); # nb: See insight tag on the disputed status.

  script_tag(name:"qod_type", value:"remote_banner");

  script_tag(name:"solution_type", value:"WillNotFix");

  script_name("Python <= 3.12.1 'RecursionError' Vulnerability - Windows");

  script_category(ACT_GATHER_INFO);

  script_copyright("Copyright (C) 2023 Greenbone AG");
  script_family("General");
  script_dependencies("gb_python_consolidation.nasl", "os_detection.nasl");
  script_mandatory_keys("python/detected", "Host/runs_windows");

  script_tag(name:"summary", value:"Python is prone to a 'RecursionError' vulnerability.");

  script_tag(name:"vuldetect", value:"Checks if a vulnerable version is present on the target host.");

  script_tag(name:"insight", value:"The legacy email.utils.parseaddr function 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: 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.");

  # nb: As no fix seems to be available yet according to the advisory the current latest available
  # version listed here was taken:
  # https://www.python.org/doc/versions/
  script_tag(name:"affected", value:"The legacy email.utils.parseaddr function in Python through
  3.12.1.");

  script_tag(name:"solution", value:"No known solution was made available for at least one year
  since the disclosure of this vulnerability. Likely none will be provided anymore. General solution
  options are to upgrade to a newer release, disable respective features, remove the product or
  replace the product by another one.

  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.");

  script_xref(name:"URL", value:"https://github.com/psf/advisory-database/blob/main/advisories/python/PSF-2023-4.json");
  script_xref(name:"URL", value:"https://osv.dev/list?ecosystem=&q=CVE-2023-36632");
  script_xref(name:"URL", value:"https://github.com/github/advisory-database/pull/2722");
  script_xref(name:"URL", value:"https://github.com/python/cpython/issues/103800");

  exit(0);
}

include("host_details.inc");
include("version_func.inc");

if (isnull(port = get_app_port(cpe: CPE)))
  exit(0);

if (!infos = get_app_version_and_location(cpe: CPE, port: port, exit_no_version: TRUE, version_regex:"^[0-9]+\.[0-9]+\.[0-9]+"))
  exit(0);

version = infos["version"];
location = infos["location"];

if (version_is_less_equal(version: version, test_version: "3.12.1")) {
  report = report_fixed_ver(installed_version: version, fixed_version: "None", install_path: location);
  security_message(port: port, data: report);
  exit(0);
}

exit(0);

7.5 High

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

NONE

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

8.7 High

AI Score

Confidence

High

0.001 Low

EPSS

Percentile

31.9%