Django 4.0.1 release notes

4 januari 2022

Django 4.0.1 åtgärdar ett säkerhetsproblem med allvarlighetsgrad ”medium”, två säkerhetsproblem med allvarlighetsgrad ”låg” och flera buggar i 4.0.

CVE-2021-45115: Denial-of-service-möjlighet i UserAttributeSimilarityValidator

UserAttributeSimilarityValidator orsakade betydande omkostnader när den utvärderade inskickade lösenord som var artificiellt stora i förhållande till jämförelsevärdena. Under förutsättning att åtkomsten till användarregistreringen var obegränsad utgjorde detta en potentiell vektor för en överbelastningsattack.

För att mildra detta problem ignoreras nu relativt långa värden av UserAttributeSimilarityValidator.

Detta problem har allvarlighetsgrad ”medium” enligt Django säkerhetspolicy.

CVE-2021-45116: Potentiellt informationsavslöjande i mallfiltret dictsort

På grund av utnyttjandet av Django Template Language’s variabelupplösningslogik, var dictsort mallfiltret potentiellt sårbart för informationsavslöjande eller oavsiktliga metodanrop, om det skickades en lämpligt utformad nyckel.

För att undvika denna möjlighet arbetar dictsort nu med en begränsad upplösningslogik, som inte anropar metoder eller tillåter indexering på ordböcker.

Som en påminnelse bör alla otillförlitliga användarinmatningar valideras före användning.

Detta problem har allvarlighetsgraden ”låg” enligt Django säkerhetspolicy.

CVE-2021-45452: Möjlig katalogtraversering via Storage.save()

Storage.save() tillät katalogtraversering om lämpligt utformade filnamn skickades direkt.

Detta problem har allvarlighetsgraden ”låg” enligt Django säkerhetspolicy.

Buggrättningar

  • Åtgärdade en regression i Django 4.0 som orsakade en krasch av assertFormsetError() på ett formulär med namnet form (#33346`).

  • Åtgärdat ett fel i Django 4.0 som orsakade en krasch på booleaner med RedisCache backend (#33361).

  • Lättade på kontrollen som lades till i Django 4.0 för att tillåta användning av en HttpRequest av typen duck i django.views.decorators.cache.cache_control() och never_cache() decorators (#33350).

  • Åtgärdat en regression i Django 4.0 som orsakade skapande av falska migreringar för modeller som refererar till utbytbara modeller som auth.User (#33366`).

  • Åtgärdat ett långvarigt fel i Geometri Samlingar och Polygon som orsakade en krasch på vissa plattformar (rapporterat på macOS baserat på ARM64-arkitekturen) (#32600).