Django 5.0.7 versionsinformationLink to this heading

9 juli 2024

Django 5.0.7 åtgärdar två säkerhetsproblem med allvarlighetsgrad ”måttlig”, två säkerhetsproblem med allvarlighetsgrad ”låg” och en bugg i 5.0.6.

CVE-2024-38875: Potentiell sårbarhet för övergrepp i tjänsten i django.utils.html.urlize()Link to this heading

urlize och urlizetrunc var föremål för en potentiell överbelastningsattack via vissa indata med ett mycket stort antal parenteser.

CVE-2024-39329: Uppräkning av användarnamn genom tidsskillnad för användare med oanvändbara lösenordLink to this heading

The authenticate() method allowed remote attackers to enumerate users via a timing attack involving login requests for users with unusable passwords.

CVE-2024-39330: Potentiell katalogtraversering via Storage.save()Link to this heading

Härledda klasser av basklassen Storage som åsidosätter generate_filename() utan att replikera valideringen av filvägar som finns i den överordnade klassen, möjliggjorde potentiell katalogtraversering via vissa ingångar vid anrop av save().

Inbyggda underklasser av Storage påverkades inte av denna sårbarhet.

CVE-2024-39614: Potentiell sårbarhet för överbelastningsattack i get_supported_language_variant()Link to this heading

get_supported_language_variant() var föremål för en potentiell överbelastningsattack när den användes med mycket långa strängar som innehöll specifika tecken.

För att mildra denna sårbarhet analyseras nu språkkoden som tillhandahålls till get_supported_language_variant() upp till en maximal längd på 500 tecken.

När språkkoden är över 500 tecken kommer nu ett ValueError att visas om strict är True, eller om det inte finns någon generisk variant och strict är False.

BuggrättningarLink to this heading

  • Åtgärdat ett fel i Django 5.0 som orsakade en krasch av Model.full_clean() på osparade modellinstanser med en GeneratedField och vissa definierade Meta.constraints (#35560`).