CVE-20XX-?

Python CVEs.

Published CVEs affecting Python, ranked by exploit odds.

15 CVEs · updated 2026-11-06 01:19 UTC

  1. CVE-2025-13836

    When reading an HTTP response from a server, if no read amount is specified, the default behavior will be to use Content-Length. This allows a malicious server to cause the client to read large amounts of data into memory, potentially causing OOM or other DoS.

    Python

    6.3 MEDIUM 2% exploit odds Fix listed
  2. CVE-2025-12781

    When passing data to the b64decode(), standard_b64decode(), and urlsafe_b64decode() functions in the "base64" module the characters "+/" will always be accepted, regardless of the value of "altchars" parameter, typically used to establish an "alternative base64 alphabet" such as the URL safe alphabet. This behavior matches what is recommended in earlier base64 RFCs, but newer RFCs now recommend either dropping characters outside the specified base64 alphabet or raising an error. The old behavior has the possibility of causing data integrity issues. This behavior can only be insecure if your application uses an alternate base64 alphabet (without "+/"). If your application does not use the "altchars" parameter or the urlsafe_b64decode() function, then your application does not use an alternative base64 alphabet. The attached patches DOES NOT make the base64-decode behavior raise an error, as this would be a change in behavior and break existing programs. Instead, the patch deprecates the behavior which will be replaced with the newly recommended behavior in a future version of Python. Users are recommended to mitigate by verifying user-controlled inputs match the base64 alphabet they are expecting or verify that their application would not be affected if the b64decode() functions accepted "+" or "/" outside of altchars.

    Python

    6.3 MEDIUM 0.9% exploit odds Fix listed
  3. CVE-2025-12084

    When building nested elements using xml.dom.minidom methods such as appendChild() that have a dependency on _clear_id_cache() the algorithm is quadratic. Availability can be impacted when building excessively nested documents.

    Python

    6.3 MEDIUM 0.9% exploit odds Fix listed
  4. CVE-2026-4224

    When an Expat parser with a registered ElementDeclHandler parses an inline document type definition containing a deeply nested content model a C stack overflow occurs.

    Python

    6.0 MEDIUM 0.7% exploit odds Fix listed
  5. CVE-2026-7210

    `xml.parsers.expat` and `xml.etree.ElementTree` use insufficient entropy for Expat hash-flooding protection, which allows a crafted XML document to trigger hash flooding.\r\n\r\nFully mitigating this vulnerability requires both updating libexpat to 2.8.0 or later and applying this patch.

    Python

    6.3 MEDIUM 0.7% exploit odds Fix listed
  6. CVE-2026-15308

    The incremental HTML parser (html.parser.HTMLParser) allows for CPU denial-of-service through repeated unterminated markup declarations when processing uncontrolled data.

    Python

    8.7 HIGH 0.6% exploit odds Fix listed
  7. CVE-2026-3087

    If `shutil.unpack_archive()` is given a ZIP archive with an absolute Windows path containing a drive (`C:\\...`) then the archive will be extracted outside the target directory which is different than other operating systems. Only Windows is affected by this vulnerability.

    Python

    6.0 MEDIUM 0.6% exploit odds Fix listed
  8. CVE-2026-3644

    The fix for CVE-2026-0672, which rejected control characters in http.cookies.Morsel, was incomplete. The Morsel.update(), |= operator, and unpickling paths were not patched, allowing control characters to bypass input validation. Additionally, BaseCookie.js_output() lacked the output validation applied to BaseCookie.output().

    Python

    6.0 MEDIUM 0.5% exploit odds Fix listed
  9. CVE-2026-4360

    In the Tarfile.extract() function, the filter parameter is not passed properly when extracting hardlinks. An affected system that extracts content from untrusted tar files could end up writing files with an unexpected uid/gid despite the user passing filter='data' to the extract() function.

    Python

    2.0 LOW 0.5% exploit odds Fix listed
  10. CVE-2026-4519

    The webbrowser.open() API would accept leading dashes in the URL which could be handled as command line options for certain web browsers. New behavior rejects leading dashes. Users are recommended to sanitize URLs prior to passing to webbrowser.open().

    Python

    7.0 HIGH 0.3% exploit odds Fix listed
  11. CVE-2025-13837

    When loading a plist file, the plistlib module reads data in size specified by the file itself, meaning a malicious file can cause OOM and DoS issues

    Python

    2.1 LOW 0.2% exploit odds Fix listed
  12. CVE-2026-6019

    http.cookies.Morsel.js_output() returns an inline <script> snippet and only escapes " for JavaScript string context. It does not neutralize the HTML parser-sensitive sequence </script> inside the generated script element. Mitigation base64-encodes the cookie value to disallow escaping using cookie value.

    Python

    2.1 LOW 0.2% exploit odds Fix listed
  13. CVE-2025-13462

    The "tarfile" module would still apply normalization of AREGTYPE (\x00) blocks to DIRTYPE, even while processing a multi-block member such as GNUTYPE_LONGNAME or GNUTYPE_LONGLINK. This could result in a crafted tar archive being misinterpreted by the tarfile module compared to other implementations.

    Python

    2.0 LOW 0.2% exploit odds Fix listed
  14. CVE-2025-6075

    If the value passed to os.path.expandvars() is user-controlled a performance degradation is possible when expanding environment variables.

    Python

    1.8 LOW 0.1% exploit odds Fix listed
  15. CVE-2026-0864

    When using the "configparser" module to write configuration files containing multi-line text values with carriage return characters (\r) the resulting file could be injected with unexpected keys and values if the attacker controls the written value.

    Python

    4.1 MEDIUM 0.1% exploit odds Fix listed

All CVEs affecting Python that appear in CVE.org and NVD, sorted by how likely they are to be exploited (EPSS), with fix status and timeline.