Catatan terbitan Django 1.5.2¶
Agustus 13, 2013
Ini adalah Django 1.5.2, terbitan perbaikan kesalahan dan keamanan untuk Django 1.5.
Mengurangi kemungkinan serangan XSS melalui mengalihkan URL penyediaan-pengguna¶
Django bergantung pada masukan pengguna di beberapa kasus (sebagai contoh django.contrib.comments() dan i18n) untuk mengalihkan pengguna ke URL “on success”. Pemeriksaan keamanan untuk pengalihan ini (dinamai django.utils.http.is_safe_url()) tidak memeriksa jika skema adalah https(s) dan seperti diperbolehkanURL javascript:... untuk dimasukkan. Jika seorang pengembang bergantung pada is_safe_url() untuk menyediakan sasaran pengalihan aman dan menaruh URL seperti itu kedalam sebuah tautan, mereka dapat menderita dari serangan XSS. Kesalahan ini tidak mempengaruhi Django saat ini, karena kami hanya menaruh URL ini kedalam kepala tanggapan Location dan peramban melihat untuk mengabaikan JavaScript disana.
Kerentanan XSS di django.contrib.admin¶
Jika sebuah URLField di Django 1.5, itu menampilkan nilai saat ini dari bidang dan sebuah tautan pada sasaran di halaman merubah admin. Rutin tampilan dari widget ini telah cacar dan diizinkan untuk XSS.
Perbaikan kesalahan¶
Diperbaiki sebuah kegagalan dengan
prefetch_related()(#19607) sama halnya beberapa pemulihanpickledenganprefetch_related(#20157 and #20257).Diperbaiki sebuah pemulihan di
django.contrib.gisdi keluaran Google Map pada Pyhton 3 (#20773).Dibuat DjangoTestSuiteRunner.setup_databases` dengan benar menangani nama lain untuk basisdata awalan (#19940) dan dicegah
teardown_databasesuntuk mencoba merobohkan nama lain (#20681).Diperbaiki
django.core.cache.backends.memcached.MemcachedCachemetodeget_many()backend pada Python 3 (#20722).Diperbaiki kesalahan sintaksis terjemahan
django.contrib.humanize. Bahasa terpengaruh: Meksiko Spanyol, Mongolia, Rumania, Turki (#20695).Ditambahkan dukungan untuk paket wheel (#19252).
Token CSRF sekarang berputar ketika pengguna masuk.
Beberapa perbaikan kesesuaian Python 3 termasuk #20212 dan #20025.
Diperbaiki beberapa kasus jarang dimana pengecualian
get()berulang tidak terbatas (#20278).makemessagestidak lagi gagal denganUnicodeDecodeError(#20354).Diperbaiki penemuan
geojsondengan SpatiaLite.assertContains()sekali lagi bekerja denganisi biner (#20237).Diperbaiki
ManyToManyFieldjika itu mempunyai parameternameunicode (#20207).Pastikan bahwa jalur permintaan WSGI benar berdasarkan di variabel lingkungan
SCRIPT_NAMEatau pengaturanFORCE_SCRIPT_NAME, terlepas dari apapun atau tidak baik mempunyai buntutan garis miring (#20169).Diperbaiki sebuah kesalahan mengaburkan dengan penghias
override_settings(). Jika anda mengenai sebuah pengecualian ``AttributeError: ‘Settings’ object has no attribute ‘_original_allowed_hosts’`, itu mungkin diperbaiki (#20636).