Nótaí scaoilte Django 1.7.3Link to this heading

13 Eanáir, 2015

Socraíonn Django 1.7.3 roinnt saincheisteanna slándála agus fabhtanna i 1.7.2.

Ceanntásc WSGI trí chomhcheangal fo-scór/dashLink to this heading

Nuair a chuirtear ceanntásca HTTP isteach sa timpeallacht WSGI, déantar iad a normalú trí thiontú go uachchlitreacha, gach ceann a thiontú go béim, agus HTTP_` a réamhfheidhmiú. Mar shampla, bheadh ceannteideal X-Auth-User ina HTTP_X_AUTH_USER` sa timpeallacht WSGI (agus dá bhrí sin freisin i bhfoclóir request.meta Django).

Ar an drochuair, ciallaíonn sé seo nach féidir leis an timpeallacht WSGI idirdhealú a dhéanamh idir ceanntásca ina bhfuil ceanntáin agus ceanntásca ina bhfuil béim: X-Auth-User agus X-Auth_User araon ina HTTP_X_AUTH_USER. Ciallaíonn sé seo má úsáidtear ceanntásc ar bhealach íogair ó shlándáil (mar shampla, faisnéis fíordheimhnithe a chur ar sheachfhreastalaí tosaigh), fiú má bhíonn an seachfhreastalaí luach ag teacht isteach ar X-Auth-User` go cúramach, d'fhéadfadh go mbeadh ionsaitheoir in ann ceannteideal X-Auth_User` a sholáthar agus an chosaint seo.

D'fhonn ionsaithe den sórt sin a chosc, scriosann Nginx agus Apache 2.4+ gach ceanntásc ina bhfuil béim ó iarratais ag teacht isteach de réir réamhshocraithe. Déanann freastalaí forbartha ionsuite Django an rud céanna anois. Ní mholtar freastalaí forbartha Django le húsáid táirgeachta, ach laghdaíonn meaitseáil iompar freastalaithe táirgeachta coitianta an t-achar dromchla le haghaidh athruithe iompraíochta le linn imscartha.

Ionsaí XSS féideartha a mhaolú trí URLanna atreoraithe a sholáthraíonn an úsáideLink to this heading

Braitheann Django ar ionchur úsáideora i roinnt cásanna (m.sh. django.contrib.auth.views.login () ``agus:doc: `i18n`) chun an t-úsáideoir a atreorú chuig URL “ar rath”. </topics/i18n/index> Níor scriosadh na seiceálacha slándála do na haatreoruithe seo (eadhon ``django.utils.http.is_safe_url () ``) spás bán tosaigh ar an URL tástáilte agus mar sin meastar go bhfuil URLanna marn javascript:... ``sábháilte. Má bhí forbróir ag brath ar ``is_safe_url () ``chun spriocanna athsheolta sábháilte a sholáthar agus URL den sórt sin a chur i nasc, d'fhéadfadh siad a bheith ag fulaingt ó ionsaí XSS. Ní chuireann an fabht seo i bhfeidhm ar Django faoi láthair, ós rud é nach gcuirimid an URL seo ach sa cheannteideal freagartha ``Suíomh ``agus is cosúil go ndéanann brabhsálaithe neamhaird ar JavaScript ansin.

Ionsaí diúltaithe seirbhíse i gcoinne django.views.static.serveLink to this heading

I leaganacha níos sine de Django, léigh an amharc: func: django.views.static.serve na comhaid a d'fhreastail sé líne amháin ag an am. Dá bhrí sin, bheadh úsáid cuimhne cothrom le méid an chomhaid sin mar thoradh ar chomhad mór gan aon línte nua. D'fhéadfadh ionsaitheoir leas a bhaint as seo agus ionsaí diúltaithe seirbhíse a sheoladh trí go leor comhaid mhóra a iarraidh ag Léann an dearcadh seo anois an comhad i gcodanna chun úsáid mór cuimhne a chosc.

Tabhair faoi deara, áfach, go raibh rabhadh i gcónaí ag an dearcadh seo nach bhfuil sé cruaite le haghaidh úsáide táirgeachta agus gur chóir é a úsáid ach mar chúnamh forbartha. B'fhéidir gur am maith é anois do thionscadal a iniúchadh agus freastal ar do chuid comhad i dtáirgeadh ag baint úsáide as fíor-fhreastalaí gréasáin tosaigh mura bhfuil tú ag déanamh amhlaidh.

Diúltú seirbhíse bunachar sonraí le ``ModelMultipleChoicefield`Link to this heading

Mar gheall ar fhoirm a úsáideann ModelMultipleChoiceField agus show_hidden_initial=true (ní API doiciméadaithe), bhí sé indéanta d'úsáideoir líon míréasúnta fiosrúcháin SQL a chur faoi deara trí luachanna dúblacha a chur isteach do shonraí an réimse. Déanann an loighic bailíochtaithe in ModelMultipleChoiceField luachanna curtha isteach a dhídhúbailt anois chun aghaidh a thabhairt ar an gceist seo.

BuigdheisiúcháinLink to this heading

  • Méadaíodh 25% an líon athraithe réamhshocraithe don hasher pasfhocal PBKDF2. Cuireadh an chuid seo den ghnáthphróiseas scaoilte mór ar fágáil go neamhthuiscint i 1.7. Ní dhéanfaidh an t-athrú comhoiriúnach ar chúl difear d'úsáideoirí a bhfuil fo-aicmithe ag Django.contrib.auth.hashers.pbkdf2PasswordHasher chun an luach réamhshocraithe a athrú.

  • Socraigh timpiste sa mheán-earraí CSRF agus ceannteideal tagairtí neamh-ASCII á láimhseáil (:ticket: 23815).

  • Socraigh timpiste sa radharc django.contrib.auth.redirect_to_login nuair a chuirtear toradh ``reverse_lazy () ``ar Python 3 (:ticket: 24097).

  • Cuireadh formáidí cearta leis an nGréigis (el) (:ticket: 23967).

  • Socraigh timpiste imirce nuair a dhíchuirtear imirce i bhfeidhm ina n-idirghníomhaíonn oibríochtaí iolracha leis an tsamhail chéanna (:ticket: 24110).