Django 3.2.4 release notes¶
2 juni 2021
Django 3.2.4 åtgärdar två säkerhetsproblem och flera buggar i 3.2.3.
CVE-2021-33203: Möjlig katalogtraversering via admindocs
¶
Personalen kan använda vyn admindocs
TemplateDetailView
för att kontrollera förekomsten av godtyckliga filer. Dessutom, om (och endast om) standardmallarna för admindocs har anpassats av utvecklarna för att även exponera filinnehållet, så skulle inte bara existensen utan även filinnehållet ha exponerats.
För att mildra effekterna tillämpas nu sökvägssanering och endast filer i mallens rotkataloger kan laddas.
CVE-2021-33571: Möjliga obestämda SSRF-, RFI- och LFI-attacker eftersom validerare accepterade inledande nollor i IPv4-adresser¶
URLValidator
, validate_ipv4_address()
, och validate_ipv46_address()
förbjöd inte ledande nollor i oktala literaler. Om man använde sådana värden kunde man utsättas för obestämda SSRF-, RFI- och LFI-attacker.
validatorerna validate_ipv4_address()
och validate_ipv46_address()
påverkades inte i Python 3.9.5+.
Buggrättningar¶
Åtgärdade en bugg i Django 3.2 där en slutlig catch-all-vy i admin inte respekterade det servertillhandahållna värdet för
SCRIPT_NAME
när oautentiserade användare omdirigerades till inloggningssidan (#32754`).Åtgärdat ett fel i Django 3.2 där en systemkontroll kraschade på en abstrakt modell (#32733).
Förhindrade onödig initialisering av oanvända cacheminnen efter en regression i Django 3.2 (#32747).
Åtgärdade en krasch i Django 3.2 som kunde inträffa när
mod_wsgi
kördes med de rekommenderade inställningarna medan Windows-biblioteketcolorama
var installerat (#32740).Åtgärdat ett fel i Django 3.2 som skulle utlösa den automatiska omladdaren för malländringar när katalogvägar anges med strängar (#32744).
Åtgärdade en regression i Django 3.2 som orsakade en krasch av automatisk laddare med
AttributeError
, t.ex. i enConda
-miljö (#32783`).Åtgärdat en regression i Django 3.2 som orsakade en förlust av precision för operationer med
DecimalField
på MySQL (#32793).