FixVibe
Covered by FixVibehigh

CORS Mì-dhealbhadh: Cunnartan de phoileasaidhean a tha ro cheadach

Tha Co-roinn Ghoireasan Tar-thùs (CORS) na inneal brobhsaidh a chaidh a dhealbhadh gus am Poileasaidh Same-Origin (SOP) a shocrachadh. Ged a tha feum air airson aplacaidean lìn an latha an-diugh, faodaidh buileachadh neo-iomchaidh - leithid mac-talla bann-cinn Tùs an neach-iarrtais no liosta geal an tùs ‘null’ - leigeil le làraich droch-rùnach dàta cleachdaiche prìobhaideach a chuir a-mach.

CWE-942

Buaidh

Faodaidh neach-ionnsaigh dàta mothachail, dearbhte a ghoid bho luchd-cleachdaidh tagradh so-leònte [S2]. Ma thadhlas neach-cleachdaidh air làrach-lìn droch-rùnach fhad ‘s a tha e air logadh a-steach don app so-leònte, faodaidh an làrach droch-rùnach iarrtasan tar-thùs a dhèanamh gu API an aplacaid agus leugh na freagairtean [S1][S2]. Faodaidh seo leantainn gu goid fiosrachadh prìobhaideach, a’ gabhail a-steach pròifilean luchd-cleachdaidh, comharran CSRF, no teachdaireachdan prìobhaideach [S2].

Bun-adhbhar

Tha CORS na inneal stèidhichte air cinn HTTP a leigeas le frithealaichean sònrachadh dè na tùsan (àrainn, sgeama, no port) a tha ceadaichte goireasan a luchdachadh [S1]. Mar as trice bidh so-leòntachd ag èirigh nuair a tha poileasaidh CORS frithealaiche ro shùbailte no air a dhroch ghnìomhachadh [S2]:

  • Ceann-cinn Tùs Meòrachail: Bidh cuid de luchd-frithealaidh a’ leughadh bann-cinn Origin bho iarrtas teachdaiche agus mar mhac-talla air ais ann am bann freagairt Access-Control-Allow-Origin (ACAO) [S2]. Leigidh seo gu h-èifeachdach le làrach-lìn sam bith faighinn chun ghoireas [S2].
  • Cairtean-fiadhaich mì-dhealbhaichte: Fhad ‘s a tha cairt-fiadhaich * a’ leigeil le tùs sam bith faighinn gu goireas, chan urrainnear a chleachdadh airson iarrtasan a dh’ fheumas teisteanasan (leithid briosgaidean no bann-cinn ùghdarrais) *. Bidh luchd-leasachaidh gu tric a’ feuchainn ri seo a sheachnadh le bhith a’ gineadh bann-cinn ACAO gu fiùghantach stèidhichte air an iarrtas [S2].
  • Liosta geal ‘null’: Tha cuid de thagraidhean a’ dèanamh liosta geal den tùs null, a dh’ fhaodar a bhrosnachadh le iarrtasan ath-stiùiridh no faidhlichean ionadail, a’ leigeil le làraich droch-rùnach masquerade mar thùs null gus faighinn gu ZXCVFIXVIBETOKEN2ZVENXCV.
  • Mearachdan parsaidh: Faodaidh mearachdan ann an regex no maidseadh sreang nuair a thathar a’ dearbhadh bann-cinn Origin leigeil le luchd-ionnsaigh raointean mar trusted-domain.com.attacker.com [S2] a chleachdadh.

Tha e cudromach cuimhneachadh nach eil CORS na dhìon an aghaidh Forgery Iarrtas Thar-làraich (CSRF) [S2].

Ceartachaidhean concrait

  • Cleachd Liosta Geal Statach: Seachain a bhith a’ gineadh bann-cinn Access-Control-Allow-Origin bho cheann-cinn Origin an iarrtais [S2]. An àite sin, dèan coimeas eadar tùs an iarrtais agus liosta le còd cruaidh de raointean earbsach [S3].
  • Seachain an tùs ‘null’: Na cuir a-steach null gu bràth air do liosta geal de thùsan ceadaichte [S2].
  • Cuir casg air teisteanasan: Na suidhich ach Access-Control-Allow-Credentials: true ma tha sin riatanach airson an eadar-obrachadh sònraichte tar-thùs [S3].
  • Cleachd Dearbhadh Ceart: Ma dh’ fheumas tu taic a thoirt do ghrunn thùsan, dèan cinnteach gu bheil an loidsig dearbhaidh airson bann-cinn Origin làidir agus nach gabh faighinn seachad air le fo-roinnean no raointean le coltas coltach ris [S2].

Mar a nì FixVibe deuchainn air a shon

Tha FixVibe a-nis a’ toirt a-steach seo mar sgrùdadh gnìomhach le gata. Às deidh dearbhadh fearainn, bidh active.cors a ’cur iarrtasan den aon thùs API le tùs ionnsaigh synthetigeach agus a’ dèanamh lèirmheas air cinn-cinn freagairt CORS. Tha e ag aithris a’ nochdadh tùsan neo-riaghailteach, le creideas cairt fiadhaich CORS, agus CORS fosgailte farsaing air puingean crìochnachaidh API neo-phoblach fhad ‘s a tha iad a’ seachnadh fuaim maoin poblach.