Lucene search
+L

Debian dla-4827 : idle-python3.11 - security update

🗓️ 08 Oct 2026 00:00:00Reported by TenableType 
nessus
 nessus
🔗 www.tenable.com👁 1 Views

Multiple vulnerabilities in Python 3.11, including DoS and HTTP header injection.

Related
Refs
Code
#%NASL_MIN_LEVEL 80900
#
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Debian Security Advisory dla-4827. The text
# itself is copyright (C) Software in the Public Interest, Inc.
#

include('compat.inc');

if (description)
{
  script_id(364182);
  script_version("1.1");
  script_set_attribute(attribute:"plugin_modification_date", value:"2026/10/08");

  script_cve_id(
    "CVE-2021-4189",
    "CVE-2025-69534",
    "CVE-2026-1502",
    "CVE-2026-3276",
    "CVE-2026-6019",
    "CVE-2026-8328",
    "CVE-2026-9669",
    "CVE-2026-15308",
    "CVE-2026-15310",
    "CVE-2026-15806",
    "CVE-2026-17084",
    "CVE-2026-18503",
    "CVE-2026-19445",
    "CVE-2026-19553"
  );

  script_name(english:"Debian dla-4827 : idle-python3.11 - security update");

  script_set_attribute(attribute:"synopsis", value:
"The remote Debian host is missing one or more security-related updates.");
  script_set_attribute(attribute:"description", value:
"The remote Debian 12 host has packages installed that are affected by multiple vulnerabilities as referenced in the
dla-4827 advisory.

    - -------------------------------------------------------------------------
    Debian LTS Advisory DLA-4827-1                [email protected]
    https://www.debian.org/lts/security/                       Andrej Shadura
    October 08, 2026                              https://wiki.debian.org/LTS
    - -------------------------------------------------------------------------

    Package        : python3.11
    Version        : 3.11.2-6+deb12u9
    CVE ID         : CVE-2025-69534 CVE-2026-1502 CVE-2026-3276 CVE-2026-6019
                     CVE-2026-8328 CVE-2026-9669 CVE-2026-15308 CVE-2026-15310
                     CVE-2026-15806 CVE-2026-17084 CVE-2026-18503 CVE-2026-19445
                     CVE-2026-19553
    Debian Bug     : 1131896

    Multiple vulnerabilities in Python 3.11.

    CVE-2025-69534

        Malformed markup declarations could make html.parser.HTMLParser
        raise an unhandled AssertionError. Applications parsing untrusted
        HTML, such as Python-Markdown rendering untrusted input, could
        crash, resulting in denial of service.

    CVE-2026-1502

        http.client did not reject CR/LF bytes in the proxy tunnel host or
        in tunnel request headers, which could allow HTTP header injection.

    CVE-2026-3276

        unicodedata.normalize() could take excessive CPU time when
        processing specially crafted Unicode input containing long runs of
        combining characters with alternating canonical combining class
        values. This affected all normalization forms.

    CVE-2026-6019

        http.cookies.Morsel.js_output() returned an inline <script> snippet
        in which the cookie value was only escaped for the JavaScript string
        context, without neutralising the </script> sequence, so
        attacker-controlled cookie values could inject markup into the page.

    CVE-2026-8328

        ftplib.ftpcp() was not updated when CVE-2021-4189 was fixed and
        still passed the address returned by the source server for PASV to
        the target server. A malicious source FTP server could use this to
        direct the target server's data connection to an arbitrary host and
        port.

    CVE-2026-9669

        bz2.BZ2Decompressor objects could be reused after a decompression
        error. If an application caught the resulting OSError and retried
        with the same decompressor, crafted input could cause out-of-bounds
        writes to a stack buffer, crashing the process.

    CVE-2026-15308

        Feeding html.parser.HTMLParser incrementally with long unterminated
        constructs, such as tags or comments, took quadratic time, allowing
        denial of service through CPU exhaustion.

    CVE-2026-15310

        When decompressing crafted zip files using bzip2 or LZMA
        compression, zipfile could use an attacker-controlled size to
        pre-allocate memory, possibly resulting in memory exhaustion.

    CVE-2026-15806

        urllib.request.HTTPPasswordMgr and its subclasses did not take the
        URL scheme into account when matching stored credentials.
        Credentials added for an https:// URL were also sent to the same
        host over http://, so an attacker able to redirect or downgrade a
        client to plain HTTP could capture them in cleartext.

    CVE-2026-17084

        The stringprep module used current Unicode codepoint attributes
        instead of those of Unicode 3.2.0, as required by RFC 3454, when
        checking tables B.2 and B.3. This could cause mismatches when
        processing domain names with the IDNA 2003 (idna) codec.

    CVE-2026-18503

        Attacker-controlled CSV samples could trigger super-linear regular
        expression matching in csv.Sniffer.sniff(), consuming significant
        CPU time.

    CVE-2026-19445

        A remote, unauthenticated TLS client could make a server crash or
        call through a freed pointer if the server's sni_callback assigned a
        different context to SSLSocket.context and nothing else kept the
        original ssl.SSLContext alive.


    CVE-2026-19553

        ssl.SSLContext.wrap_bio() did not require the server_hostname
        argument when check_hostname was enabled, so hostname verification
        could be silently skipped; asyncio's create_connection() and
        loop.start_tls() were affected as well. For compatibility, Python
        3.11 now emits a DeprecationWarning in this case instead of raising
        ValueError, so applications still need to pass a valid
        server_hostname.

    For Debian 12 bookworm, these problems have been fixed in version
    3.11.2-6+deb12u9.

    In addition, this update includes the following related upstream fixes:

      * csv.Sniffer.sniff() could take exponential time on samples with many
        quote characters while detecting doubled quotes (gh-109638).

      * Regular expressions with possessive quantifiers could give wrong
        matches when the repeated sub-pattern contained backtracking
        (gh-100061, gh-106052).

      * html.parser.HTMLParser did not parse start and end tags according
        to the HTML5 standard, and could lose data after an unclosed script
        or style tag (gh-135661, gh-86155). As a result of the fix, some
        malformed markup is parsed differently; for example, </ script>
        no longer ends a script element.

    We recommend that you upgrade your python3.11 packages.

    For the detailed security status of python3.11 please refer to
    its security tracker page at:
    https://security-tracker.debian.org/tracker/python3.11

    Further information about Debian LTS security advisories, how to apply
    these updates to your system and frequently asked questions can be
    found at: https://wiki.debian.org/LTS

Tenable has extracted the preceding description block directly from the Debian security advisory.

Note that Nessus has not tested for these issues but has instead relied only on the application's self-reported version
number.");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/source-package/python3.11");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2021-4189");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2025-69534");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-1502");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-15308");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-15310");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-15806");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-17084");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-18503");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-19445");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-19553");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-3276");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-6019");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-8328");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-9669");
  script_set_attribute(attribute:"see_also", value:"https://packages.debian.org/source/bookworm/python3.11");
  script_set_attribute(attribute:"solution", value:
"Upgrade the idle-python3.11 packages.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:N");
  script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
  script_set_attribute(attribute:"cvss4_vector", value:"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N");
  script_set_attribute(attribute:"cvss4_threat_vector", value:"CVSS:4.0/E:P");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2026-6019");
  script_set_attribute(attribute:"cvss4_score_source", value:"CVE-2026-19445");

  script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"true");

  script_set_attribute(attribute:"vuln_publication_date", value:"2021/08/24");
  script_set_attribute(attribute:"patch_publication_date", value:"2026/10/08");
  script_set_attribute(attribute:"plugin_publication_date", value:"2026/10/08");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:idle-python3.11");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libpython3.11");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libpython3.11-dbg");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libpython3.11-dev");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libpython3.11-minimal");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libpython3.11-stdlib");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libpython3.11-testsuite");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3.11");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3.11-dbg");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3.11-dev");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3.11-doc");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3.11-examples");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3.11-full");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3.11-minimal");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3.11-nopie");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:python3.11-venv");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:12.0");
  script_set_attribute(attribute:"generated_plugin", value:"current");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Debian Local Security Checks");

  script_copyright(english:"This script is Copyright (C) 2026 and is owned by Tenable, Inc. or an Affiliate thereof.");

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/Debian/release", "Host/Debian/dpkg-l");

  exit(0);
}

include('debian_package.inc');

if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
if (!get_kb_item("Host/Debian/dpkg-l")) audit(AUDIT_PACKAGE_LIST_MISSING);

var debian_release = get_kb_item('Host/Debian/release');
if ( isnull(debian_release) ) audit(AUDIT_OS_NOT, 'Debian');
debian_release = chomp(debian_release);
if (! preg(pattern:"^(12)\.[0-9]+", string:debian_release)) audit(AUDIT_OS_NOT, 'Debian 12.0', 'Debian ' + debian_release);
var cpu = get_kb_item('Host/cpu');
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if ('x86_64' >!< cpu && cpu !~ "^i[3-6]86$" && 'aarch64' >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'Debian', cpu);

var pkgs = [
    {'release': '12.0', 'prefix': 'idle-python3.11', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'libpython3.11', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'libpython3.11-dbg', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'libpython3.11-dev', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'libpython3.11-minimal', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'libpython3.11-stdlib', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'libpython3.11-testsuite', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'python3.11', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'python3.11-dbg', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'python3.11-dev', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'python3.11-doc', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'python3.11-examples', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'python3.11-full', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'python3.11-minimal', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'python3.11-nopie', 'reference': '3.11.2-6+deb12u9'},
    {'release': '12.0', 'prefix': 'python3.11-venv', 'reference': '3.11.2-6+deb12u9'}
];

var flag = 0;
foreach package_array ( pkgs ) {
  var _release = NULL;
  var prefix = NULL;
  var reference = NULL;
  if (!empty_or_null(package_array['release'])) _release = package_array['release'];
  if (!empty_or_null(package_array['prefix'])) prefix = package_array['prefix'];
  if (!empty_or_null(package_array['reference'])) reference = package_array['reference'];
  if (_release && prefix && reference) {
    if (deb_check(release:_release, prefix:prefix, reference:reference)) flag++;
  }
}

if (flag)
{
  security_report_v4(
    port       : 0,
    severity   : SECURITY_WARNING,
    extra      : deb_report_get()
  );
  exit(0);
}
else
{
  var tested = deb_pkg_tests_get();
  if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
  else audit(AUDIT_PACKAGE_NOT_INSTALLED, 'idle-python3.11 / libpython3.11 / libpython3.11-dbg / etc');
}

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation