Mmetụta
Onye na-awakpo nwere ike izu ohi nwere mmetụta, data ezitere na n'aka ndị ọrụ nke ngwa adịghị ike [S2]. Ọ bụrụ na onye ọrụ gara na webụsaịtị ọjọọ mgbe ọ banyere na ngwa adịghị ike, saịtị ọjọọ ahụ nwere ike ịrịọ arịrịọ sitere na ngwa API wee gụọ nzaghachi [S1][S2]. Nke a nwere ike bute izu ohi ozi nkeonwe, gụnyere profaịlụ onye ọrụ, akara CSRF, ma ọ bụ ozi nzuzo [S2].
Ihe kpatara ya
CORS bụ usoro dabere na isi HTTP nke na-enye ndị ọrụ ohere ịkọwapụta mmalite (ngalaba, atụmatụ, ma ọ bụ ọdụ ụgbọ mmiri) ekwenyere ibu akụrụngwa [S1]. Ọdịmma na-ebilite mgbe amụma CORS nke ihe nkesa na-agbanwe nke ukwuu ma ọ bụ emejuputaghị ya nke ọma [S2]:
- Isi mmalite nke egosipụtara: Ụfọdụ sava na-agụ isi okwu
Originsite na arịrịọ ndị ahịa wee kwughachi ya naAccess-Control-Allow-Origin(ACAO) nkụnye eji isi mee nzaghachi [S2]. Nke a na-enye ohere ka webụsaịtị ọ bụla nweta akụrụngwa [S2]. - Kaadị ọhịa na-ahazighị nke ọma: Ọ bụ ezie na
*wildcard na-enye ohere mmalite ọ bụla ịnweta akụrụngwa, enweghị ike iji ya maka arịrịọ chọrọ nzere (dị ka kuki ma ọ bụ nkụnye ikike ikike) [S3]. Ndị mmepe na-agbalịkarị ịgafe nke a site n'ịmepụta nkụnye eji isi mee ACAO dabere na arịrịọ [S2].
** Ụfọdụ ngwa na-edepụta aha mbụ null, nke enwere ike ịkpalite site na arịrịọ ebugharị ma ọ bụ faịlụ mpaghara, na-ekwe ka saịtị ọjọọ megharịa dị ka ebe null si nweta ohere. [S2][S3].
- Mmehie njehie: Mmejọ dị na regex ma ọ bụ dakọtara eriri mgbe ị na-akwado isi isi
Originnwere ike ikwe ka ndị mwakpo jiri ngalaba dịkatrusted-domain.com.attacker.com[S2].
Ọ dị mkpa iburu n'uche na CORS abụghị ihe nchebe megide Arịrịọ Arịrịọ nke saịtị-Site (CSRF) [S2].
Concrete ndozi
- Jiri a Static Whitelist: Zenarị ike na-emepụta
Access-Control-Allow-Originnkụnye eji isi mee site na arịrịọOriginnkụnye eji isi mee [S2]. Kama, tulee ebe arịrịọ ahụ si malite na ndepụta ngalaba ntụkwasị obi siri ike [S3]. - Zenarị mmalite 'null': etinyela
nulln'ime akwụkwọ ọcha nke mmalite ekwenyere [S2]. - Machibido nzere: Naanị tọọ
Access-Control-Allow-Credentials: truema ọ bụrụ na ọ dị oke mkpa maka mkparịta ụka sitere na mmalite [S3]. - Jiri nkwado kwesịrị ekwesị: Ọ bụrụ na ị ga-akwadorịrị ọtụtụ mmalite, hụ na mgbagha nkwado maka nkụnye eji isi mee
Originsiri ike na ngalaba ngalaba ma ọ bụ ngalaba ndị yiri ya [S2] agaghị agabiga ya.
Kedu ka FixVibe si nwalee ya
FixVibe gụnyere nke a dị ka nlele na-arụ ọrụ gated. Mgbe nkwenye ngalaba gasịrị, active.cors na-eziga arịrịọ API sitere na onye mbuso synthetic yana nyocha ndị isi nzaghachi CORS. Ọ na-akọ na egosipụtara mmalite aka ike, akara ngosi CORS, yana CORS mepere emepe na njedebe API na-abụghị nke ọha ma na-ezere mkpọtụ akụ ọha.
