FixVibe
Covered by FixVibehigh

Fiarovana CSRF: Fiarovana amin'ny fanovana fanjakana tsy nahazoana alalana

Mijanona ho loza mitatao ho an'ny rindranasa tranonkala ny Cross-Site Request Forgery (CSRF). Ity fikarohana ity dia manadihady ny fomba ampiharan'ny rafitra maoderina toa an'i Django ny fiarovana sy ny fomba ahafahan'ny toetran'ny navigateur toy ny SameSite manome fiarovana amin'ny fangatahana tsy nahazoana alalana.

CWE-352

Fiantraikany

Cross-Site Request Forgery (CSRF) dia ahafahan'ny mpanafika mamitaka ny mpitety tranonkalan'ny niharam-boina hanao hetsika tsy ilaina amin'ny tranokala hafa izay anamarinana ilay niharam-boina amin'izao fotoana izao. Satria ny navigateur dia mampiditra ho azy ny fahazoan-dàlana manodidina toy ny cookies amin'ny fangatahana, ny mpanafika dia afaka mamorona asa manova fanjakana — toy ny fanovana tenimiafina, famafana angon-drakitra, na fanombohana fifampiraharahana — tsy fantatry ny mpampiasa.

Antony fototra

Ny antony fototra mahatonga ny CSRF dia ny fitondran-tenan'ny mpitety tranonkala amin'ny fandefasana cookies mifandray amin'ny sehatra iray isaky ny misy fangatahana atao amin'io sehatra io, na inona na inona fiavian'ny fangatahana [S1]. Raha tsy misy ny fanamarinana manokana fa niniana nipoitra avy amin'ny interface interface an'ny rindranasa manokana ny fangatahana, dia tsy afaka manavaka ny hetsika ataon'ny mpampiasa ara-dalàna sy ny hosoka ny mpizara.

Mekanisma fiarovana Django CSRF

Django dia manome rafitra fiarovana naorina mba hanalefahana ireo risika ireo amin'ny alàlan'ny fampidirana middleware sy modely [S2].

Fampahavitrihana Middleware

Ny django.middleware.csrf.CsrfViewMiddleware dia tompon'andraikitra amin'ny fiarovana CSRF ary matetika dia alefa amin'ny alàlan'ny default [S2]. Tsy maintsy apetraka alohan'ny fijerena middleware izay mihevitra fa efa voakarakara ny fanafihana CSRF [S2].

Fampiharana môdely

Ho an'ny endrika POST anatiny, ny mpamorona dia tsy maintsy mampiditra ny marika {% csrf_token %} ao anatin'ny singa <form> [S2]. Izany dia miantoka fa misy marika tsy manam-paharoa sy miafina tafiditra ao amin'ny fangatahana, izay ankatoavin'ny mpizara amin'ny fotoam-pivorian'ny mpampiasa.

Ny loza mety hitranga amin'ny fiparitahan'ny Token

Ny antsipirian'ny fampiharana manan-danja dia ny hoe ny {% csrf_token %} dia tsy tokony hampidirina mihitsy amin'ny endrika mikendry URL ivelany [S2]. Ny fanaovana izany dia hamoaka ny famantarana CSRF miafina amin'ny antoko fahatelo, mety hanimba ny fiarovana ny fotoam-piasan'ny mpampiasa [S2].

Fiarovana amin'ny ambaratonga navigateur: Cookies SameSite

Ny navigateur maoderina dia nampiditra ny toetra SameSite ho an'ny lohatenin'ny Set-Cookie mba hanomezana sosona fiarovana amin'ny [S1].

  • Hentitra: Ny cookie dia alefa amin'ny contexte an'ny antoko voalohany ihany, midika izany fa ny tranokala ao amin'ny bara URL dia mifanandrify amin'ny sehatry ny cookie [S1].
  • Lax: Ny cookie dia tsy alefa amin'ny fangatahana sub-site (toy ny sary na sary) fa alefa rehefa misy mpampiasa mandeha mankany amin'ny toerana niaviany, toy ny fanarahana rohy mahazatra [S1].

Ahoana no andrana FixVibe momba izany

FixVibe izao dia ahitana ny fiarovana CSRF ho fisavana mavitrika misy vavahady. Taorian'ny fanamarinana ny sehatra, active.csrf-protection dia nanara-maso nahita endrika manova fanjakana, manamarina ny fidirana miendrika CSRF-token sy ny mari-pamantarana cookie SameSite, avy eo dia manandrana mandefa ny fiaviana hosoka tsy misy fiatraikany ary mitatitra fotsiny rehefa manaiky izany ny mpizara. Ny fanaraha-maso ny cookie ihany koa dia manondro ireo toetra malemy SameSite izay mampihena ny fiarovana amin'ny CSRF.