FixVibe
Covered by FixVibehigh

CORS Fa'atonu sese: Tulaga lamatia o Faiga Fa'ataga

Cross-Origin Resource Fetufa'i (CORS) ose masini su'esu'e ua fuafuaina e fa'amalieina le Same-Origin Policy (SOP). E ui ina mana'omia mo polokalame i luga ole laiga fa'aonaponei, ole fa'atinoga le talafeagai-e pei o le fa'aigoaina o le Origin header po'o le fa'a-pa'epa'eina o le 'null' fa'apogai-e mafai ona fa'atagaina nofoaga leaga e aveese fa'amatalaga patino tagata fa'aoga.

CWE-942

Aafiaga

E mafai e se tagata osofa'i ona gaoia fa'amatalaga ma'ale'ale, fa'amaonia mai tagata fa'aoga o se talosaga vaivai [S2]. Afai e asiasi se tagata fa'aoga i se 'upega tafa'ilagi leaga a'o saini i totonu o le app ma'ale'ale, e mafai e le 'upega tafa'ilagi leaga ona faia ni talosaga fa'asaga i le API o le app ma faitau tali [S1][S2]. O lenei mea e mafai ona taʻitaʻia ai le gaoi o faʻamatalaga patino, e aofia ai faʻamatalaga faʻaoga, faʻailoga CSRF, poʻo feʻau tumaoti [S2].

Mafua'aga

CORS ose HTTP-header faʻavae masini e mafai ai e 'auʻaunaga ona faʻamaonia po o fea tupuaga (ituaiga, polokalame, poʻo le taulaga) e faʻatagaina e utaina punaoa [S1]. E masani ona alia'e fa'aletonu pe a matua fetuutuuna'i pe le lelei le fa'atinoina o le [S2] faiga fa'avae a le server [S2]:

  • Ulutala Origin Reflected: E faitau e nisi saini le ulutala Origin mai se talosaga a le tagata o tausia ma toe faaleo mai i le Access-Control-Allow-Origin (ACAO) ulutala tali [S2]. O lenei mea e mafai ai e soʻo se upega tafaʻilagi ona maua le punaoa [S2].
  • Seseconfigured Wildcards: E ui o le * wildcard e mafai ai e soʻo se amataga ona maua se punaoa, e le mafai ona faʻaogaina mo talosaga e manaʻomia ai faʻamaoniga (pei o kuki poʻo ulutala Faʻatagaina) [S3]. E masani ona taumafai le au atiaʻe e faʻafefe lenei mea e ala i le faʻatupuina malosi o le ulutala ACAO e faʻavae i luga ole talosaga [S2].
  • Pa'epa'e 'null': O nisi tusi talosaga e fa'amana'omia le null tupuaga, lea e mafai ona fa'aosoina e talosaga toe fa'asa'o po'o faila fa'apitonu'u, fa'atagaina nofoaga leaga e fa'afoliga o se null tupuaga e maua ai le avanoa ZXCVFIXVICVIZBE2CVIXVIZBE3CVFIXVIBETOKEN1ZXCV.
  • Sese Fa'avasega: O mea sese i le regex po'o le fetaui o manoa pe a fa'amaonia le ulutala Origin e mafai ona fa'ataga ai tagata osofa'i e fa'aoga vaega e pei o le trusted-domain.com.attacker.com [S2].

E taua le maitauina o le CORS e le o se puipuiga mai le Cross-Site Request Forgery (CSRF) [S2].

Fa'atonu Sima

  • Fa'aoga se Lisi Pa'epa'e: Alo'ese mai le fa'atupuina malosi o le ulutala Access-Control-Allow-Origin mai le ulutala Origin ole talosaga [S2]. Nai lo lena, fa'atusatusa le amataga ole talosaga ile lisi fa'amalo ole igoa ole fa'atuatuaina [S3].
  • Aloese mai le 'null' Origin: Aua ne'i aofia ai le null i lau lisi pa'epa'e o amataga faataga [S2].
  • Fa'atapula'a Fa'amatalaga: Na'o le seti Access-Control-Allow-Credentials: true pe afai e matua mana'omia mo le feso'ota'iga fa'atupu fa'asagatau fa'apitoa [S3].
  • Fa'aoga Fa'amaoniaga Talafeagai: Afai e tatau ona e lagolagoina le tele o fa'apogai, fa'amautinoa le fa'amaoniaina o manatu mo le ulutala Origin e malosi ma e le mafai ona pasia e subdomains po'o vaega foliga tutusa [S2].

Fa'afefea ona su'e le FixVibe

O le FixVibe o lo'o aofia ai le mea lea e pei o se siaki fa'amalosi. A mae'a le fa'amaoniga a le vaega, e tu'uina atu e le active.cors talosaga e tasi a le API fa'atasi ai ma se fa'atupu fa'atupu osofa'iga ma toe iloilo fa'aulutala tali a le CORS. O lo'o fa'ailoa mai ai le fa'apogai fa'apea, CORS fa'amaonia, ma CORS fa'alatalata i luga ole API fa'ailo a'o aloese mai le pisapisao o aseta lautele.