# Django 5.2.8 documentation

# 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ågra `pickle` regressioner med `prefetch_related` (#20157 och #20257).

- Åtgärdat en regression i `django.contrib.gis` i Google Map-utdata på Python 3 (#20773).

- Gjorde så att `DjangoTestSuiteRunner.setup_databases` korrekt hanterar alias för standarddatabasen (#19940) och förhindrade `teardown_databases` från att försöka riva ner alias (#20681).

- Fixade `django.core.cache.backends.memcached.MemcachedCache` backend `get_many()` metod på Python 3 (#20722).

- Åtgärdat `django.contrib.humanize` syntaxfel 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).

- `makemessages` kraschar inte längre med `UnicodeDecodeError` (#20354).

- Fixad `geojson`-detektering med SpatiaLite.

- `assertContains()` fungerar återigen med binärt innehåll (#20237).

- Fixat `ManyToManyField` om den har en Unicode `name` parameter (#20207).

- Säkerställde att WSGI-begärans sökväg är korrekt baserad på miljövariabeln `SCRIPT_NAME` eller inställningen `FORCE_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 ett `AttributeError: 'Settings' object has no attribute '_original_allowed_hosts'` undantag, är det förmodligen åtgärdat (#20636).