Django 1.5.2 versionsinformation¶
13 augusti 2013
Detta är Django 1.5.2, en buggfix- och säkerhetsrelease för Django 1.5.
Mildrad möjlig XSS-attack via användartillhandahållna omdirigeringsadresser¶
Django förlitar sig på användarinmatning i vissa fall (t.ex. django.contrib.auth.views.login(), django.contrib.comments, och i18n) för att omdirigera användaren till en ”on success” URL. Säkerhetskontrollerna för dessa omdirigeringar (nämligen django.utils.http.is_safe_url()) kontrollerade inte om schemat är http(s) och som sådan tillät javascript:... URL:er att anges. Om en utvecklare förlitade sig på is_safe_url() för att tillhandahålla säkra omdirigeringsmål och lade in en sådan URL i en länk, kunde de drabbas av en XSS-attack. Denna bugg påverkar inte Django för närvarande, eftersom vi bara lägger in denna URL i svarshuvudet Location och webbläsare verkar ignorera JavaScript där.
XSS-sårbarhet i django.contrib.admin¶
Om en URLField används i Django 1.5, visar den det aktuella värdet för fältet och en länk till målet på adminändringssidan. Visningsrutinen för denna widget var bristfällig och möjliggjorde XSS.
Buggrättningar¶
Fixade en krasch med
prefetch_related()(#19607) samt någrapickleregressioner medprefetch_related(#20157 och #20257).Åtgärdat en regression i
django.contrib.gisi Google Map-utdata på Python 3 (#20773).Gjorde så att
DjangoTestSuiteRunner.setup_databaseskorrekt hanterar alias för standarddatabasen (#19940) och förhindradeteardown_databasesfrån att försöka riva ner alias (#20681).Fixade
django.core.cache.backends.memcached.MemcachedCachebackendget_many()metod på Python 3 (#20722).Åtgärdat
django.contrib.humanizesyntaxfel i översättningen. Berörda språk: Mexikansk spanska, mongoliska, rumänska, turkiska (#20695).Stöd för hjulpaket har lagts till (#19252).
CSRF-token roterar nu när en användare loggar in.
Några Python 3-kompatibilitetsfixar inklusive #20212 och #20025.
Åtgärdat några sällsynta fall där
get()undantag återkom oändligt (#20278).makemessageskraschar inte längre medUnicodeDecodeError(#20354).Fixad
geojson-detektering med SpatiaLite.assertContains()fungerar återigen med binärt innehåll (#20237).Fixat
ManyToManyFieldom den har en Unicodenameparameter (#20207).Säkerställde att WSGI-begärans sökväg är korrekt baserad på miljövariabeln
SCRIPT_NAMEeller inställningenFORCE_SCRIPT_NAME, oavsett om någon av dem har ett efterföljande snedstreck eller inte (#20169).Fixade en obskyr bugg med
override_settings()dekoratorn. Om du får ettAttributeError: 'Settings' object has no attribute '_original_allowed_hosts'undantag, är det förmodligen åtgärdat (#20636).