Skip to content
OpenAdvisories
High · 7.5 CVE-2020-15225 EUVD-2021-0053GHSA-x7gm-rfgv-w973PYSEC-2021-64

Denial of Service vulnerability in django-filter

Published Apr 29, 2021 · Updated Aug 4, 2024 · Assigned by GitHub_M

Description

django-filter is a generic system for filtering Django QuerySets based on user selections. In django-filter before version 2.4.0, automatically generated `NumberFilter` instances, whose value was later converted to an integer, were subject to potential DoS from maliciously input using exponential format with sufficiently large exponents. Version 2.4.0+ applies a `MaxValueValidator` with a a default `limit_value` of 1e50 to the form field used by `NumberFilter` instances. In addition, `NumberFilter` implements the new `get_max_validator()` which should return a configured validator instance to customise the limit, or else `None` to disable the additional validation. Users may manually apply an equivalent validator if they are not able to upgrade.

Affected products

VendorProductAffectedFixed
carltongibson django-filter < 2.4.0 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 django-filter 2.4.0-1 —
Debian 13 django-filter 2.4.0-1 —
Debian 12 django-filter 2.4.0-1 —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 django-filter No fix yet —
Ubuntu 26.04 LTS django-filter No fix yet —
Ubuntu 25.10 django-filter No fix yet —
Ubuntu 24.04 LTS django-filter No fix yet —
Ubuntu 22.04 LTS django-filter No fix yet —
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 20.04 LTS django-filter No fix yet —
Ubuntu 18.04 LTS django-filter No fix yet —
Ubuntu 16.04 LTS django-filter No fix yet —

Affected packages

EcosystemPackageAffectedFixedRecord
PyPI django-filter < 2.4.0 2.4.0 GHSA-x7gm-rfgv-w973

References