django/docs
Shai Berger 0db9ea4669 [5.1.x] Fixed CVE-2025-64460 -- Corrected quadratic inner text accumulation in XML serializer.
Previously, `getInnerText()` recursively used `list.extend()` on strings,
which added each character from child nodes as a separate list element.
On deeply nested XML content, this caused the overall deserialization
work to grow quadratically with input size, potentially allowing
disproportionate CPU consumption for crafted XML.

The fix separates collection of inner texts from joining them, so that
each subtree is joined only once, reducing the complexity to linear in
the size of the input. These changes also include a mitigation for a
xml.dom.minidom performance issue.

Thanks Seokchan Yoon (https://ch4n3.kr/) for report.

Co-authored-by: Jacob Walls <jacobtylerwalls@gmail.com>
Co-authored-by: Natalia <124304+nessita@users.noreply.github.com>

Backport of 50efb718b3 from main.
2025-12-02 09:40:12 -03:00
..
_ext
_theme
faq [5.1.x] Fixed #35908 -- Retired the django-developers and django-users mailing lists. 2025-02-19 12:18:12 +01:00
howto [5.1.x] Fixed #36200 -- Clarified MIDDLEWARE setting updates when using a custom RemoteUserMiddleware. 2025-02-20 16:16:29 +01:00
internals [5.1.x] Added GitHub Actions linter (zizmor). 2025-11-21 14:54:08 -05:00
intro [5.1.x] Fixed #35961 -- Migrated license metadata in pyproject.toml to conform PEP 639. 2025-10-08 16:44:11 -03:00
man
misc [5.1.x] Fixed #35908 -- Retired the django-developers and django-users mailing lists. 2025-02-19 12:18:12 +01:00
ref [5.1.x] Refs #36646 -- Doc'd that oracledb < 3.3.0 is required. 2025-10-10 23:08:19 +02:00
releases [5.1.x] Fixed CVE-2025-64460 -- Corrected quadratic inner text accumulation in XML serializer. 2025-12-02 09:40:12 -03:00
topics [5.1.x] Fixed CVE-2025-64460 -- Corrected quadratic inner text accumulation in XML serializer. 2025-12-02 09:40:12 -03:00
conf.py [5.1.x] Fixed #36320 -- Ignored "duplicated_toc_entry" for ePub docs build. 2025-04-12 19:40:16 +02:00
contents.txt
glossary.txt
index.txt
make.bat
Makefile [5.1.x] Fixed #36162 -- Fixed the black Makefile docs rule to work on macOS. 2025-02-01 22:29:22 -03:00
README.rst
requirements.txt
spelling_wordlist [5.1.x] Expanded contributor docs on getting feedback from the wider community. 2024-10-16 13:25:43 +02:00

The documentation in this tree is in plain text files and can be viewed using
any text file viewer.

It uses `ReST`_ (reStructuredText), and the `Sphinx`_ documentation system.
This allows it to be built into other forms for easier viewing and browsing.

To create an HTML version of the docs:

* Install Sphinx (using ``python -m pip install Sphinx`` or some other method).

* In this docs/ directory, type ``make html`` (or ``make.bat html`` on
  Windows) at a shell prompt.

The documentation in ``_build/html/index.html`` can then be viewed in a web
browser.

.. _ReST: https://docutils.sourceforge.io/rst.html
.. _Sphinx: https://www.sphinx-doc.org/