Skip to content

Potential DoS with NumberFilter conversion to integer values.

Moderate
carltongibson published GHSA-x7gm-rfgv-w973 Sep 27, 2020

Package

django-filter (pypi)

Affected versions

< 2.4.0

Patched versions

2.4.0

Description

Impact

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.

Patches

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.

Workarounds

Users may manually apply an equivalent validator if they are not able to upgrade.

For more information

If you have any questions or comments about this advisory:

Thanks to Marcin Waraksa for the report.

Severity

Moderate

CVE ID

CVE-2020-15225

Weaknesses

No CWEs