Kopentasi Oauth | Kumaha cara nerapkeun otorisasi aman dina aplikasi Wéb anjeun

Anonim
Kopentasi Oauth | Kumaha cara nerapkeun otorisasi aman dina aplikasi Wéb anjeun 2740_1

Tulisan ieu bakal nungkulan kerentanan OALE-anu dipikanyaho. Pamiarsa ogé bakal diajar kumaha carana nerapkeun otorisasi aman sareng aman dina aplikasi Wéb.

Oaut mangrupikeun protokol anu tiasa dipercaya, tapi derajat kaamanan hal-hal kaleresan gumantung kasadaran pamekar wéb nalika ngalaksanakeun otorisasi. Ieu nyababkeun luhur ieu penting pisan pikeun professional kaamanan. Aranjeunna kedah masihan tingkat perlindungan anu luhur tina pangguna. Waktosna kanggo kenal sareng praktisi anu épék anu bakal ngabantosan ngahasilkeun bahaya anu goréng jual.

Bubuka

Oauth 2.0 protokol ayeuna seueur dianggo dina sagala rupa aplikasi. Anggo éta, antarmuka pamaké anu pikaresepeun janten sayogi, oténtikasi langkung gampang sareng oténtikasi dibandingkeun kalayan metode tradisional pikeun ngetikkeun Username sareng kecap aksés. Kalayan palaksanaan anu pantes sareng anu saé, protocol ehay bakal langkung aman tibatan otorisasi tradisional, saprak pangguna henteu kedah ngabagi sumber anu katilu sareng aplikasi pihakna pikeun ngaksés sumbernina. Pamak pangguna sering langkung resep logkeun akun Google, Facebook atanapi LinkedI, sanés nyiptakeun akun anyar unggal-unggal waktos anjeun kedah ngadaptar dina sababaraha situs wéb. Ku kituna, protokol OAut anu langkung saé menxayu mangpaat.

Pangabutuh jasa Oauth Living populer pisan dipercaya. Asup sareng akun Google atanapi Facebook inspirasi inspirasi kaamanan anu tangtu, sareng leres. Protokol sacara ati-ati ditujukeun ku ahli. SEMU SEMUA KONSUS KAYU HENTEU HENTEU DIAJUK. Tapi, patut nyatet yén rasa kaamanan lengkep tiasa palsu.

Pauntungan jasa Oauthing Pamekar aplikasi anu ditinggalkeun kusabab seueur alesan pikeun ngatur kasalametan program. Nyatana, layanan kameskaan anu dilindungan, salah-leres dilaksanakeun dina prosés pamasangan éta, tiasa janten target gampang pikeun pengeraha. Preokcupasi sapertos bakal ngakibatkeun maling data pribadi pangguna.

Salajengna, anjeun kedah mertimbangkeun kerangan anu paling umum anu kademasikan dina aplikasi pihak katilu anu ngalaksanakeun protokol OAut pikeun otorisasi pangguna. Éta kedah émut yén protokol sorangan anu aman sareng dipercaya. Ngan saatos palaksanaan Sil, mah janten rentan sareng serangan hacker.

Oauth LoCkey nganggo header referer

Nalika aplikasi pamundut anu otorisasi atas nama pangguna dina server OAuth, hiji jalma nampi kode pikeun ngetik sareng ngirim deui ka server kanggo cek anu salajengna. Upami salami damelan pangguna bakal dialihkeun ka kaca anu sanés, kode bakal aya dina "judul" header "penerbangan http http. Maka, kodeu bakal tumiba dina situsén éksternal, anu bakal ngancem data pangguna anu kadaptar dina server Oagut.

Catetan: Luluger rujukan nyaéta lulugu query http, éta ngirimkeun URL ti mana pamundut anu dikirim.

Mempertan akibat tina kerentanan ieu, Panglembang Silinkeun yén aplikasi wéb na henteu ngandung kacuntas HTMl. Upami suntikan éta deteksi, serender tiasa ngaganti tag gambar kana server Saman sareng mendakan jalan pikeun alihan pangguna ka alihan pangguna ka alihan pangguna ka jerona. Ku kituna, anjeunna bakal nampi kasempetan kanggo maok kode tina "Referber" lulugu pamundut http.

Oauth Locey nganggo parameter redirech_uri

Aplikasi ngamimitian prosés otorisasi ku ngirim pamundut ka Oauth:

HttPs://www.example.com/signin/autorge ihreaze iite... Bayrirect_uri=htTpps://duo.examples.com/loginsuces.

Pertanyaanana sok ngandung "redirech_urece" anu dianggo ku panduan oauth pikeun ngirim token deui ka aplikasi saatos masihan idin. Upami nilai parameter ieu henteu dikawasa atanapi henteu dipariksa, henteu dicarik, serangan parféktar garutan sareng alihan ka situs wéb na pikeun ngolah sumber anu terbatas.

https://www.example.com/signin/autgorize iith.Tah 4..urire=htppps://localhost.com.

Kadang URL anu sami diblokir. Serangkeunna tiasa alihan data anu ditampi dina URL kabuka, sapertos kieu:

https://www.example.com/oauth20_Anhorize.srf? Kolot...Ackirlect_uri=htTpps://accoxs.gexts.gexts./zil.com.

Atanapi ieu:

https://www.example.com/oAAuth2/ajleutrize? [...% IrRect_uri%% 2FTPS.ftblack%%.

Nalika ngalaksanakeun Oauth, anjeun moal tiasa ngalebetkeun sadayana domain dina daptar bodas. Ngan ukur sababaraha URL anu kedah diambel pikeun "Fedirit_urt_uri" henteu di handap pamundut pikeun ngabobokeun alihan.

Antosan pamundut cross-garis

Hapunten pamundut anu relevant tiasa lumangsung nalika serenter suksés dina ngajantenkeun korban ngadaptarkeun tautan na, sahingga, pikeun ngahasilkeun pamundut anu anjeunna bakal ngahasilkeun. Mopohkeun panyebaran cross-garis biasana lemes sareng token CSRF, anu pakait sareng sesi pangguna. Éta ngabantosan aplikasi pikeun mariksa jalma jalma anu ngintunkeun pamundut. Parameter "Ste" dina protokol OAuth janten token CSRF.

Éta yakin ningali kumaha serangan CSRF dilaksanakeun dina OAuth sareng janten "Ste" State "tiasa dianggo pikeun ngaleungitkeun épéktip komparability.

Hacker muka aplikasi Wéb sareng ngaluncurkeun prosés otorisasi pikeun ngakses panyadia jasa nganggo OAHuth. Aplikasi nyuhunkeun panyadia jasa pikeun diakses anu kedah disayogikeun. Gering anjeun dialihkeun ka situs pamiran paréntah, dimana anjeun biasana kedah ngalebetkeun nami Usernal sareng kecap aksés anjeun pikeun nginpokeun aksés. Sabalikna, nangkeupan hacker sareng nyegah pamundut ieu sareng ngahemat URL na. Hacker kumaha waé nyababkeun korban pikeun muka URL ieu. Upami korban ngalebetkeun sistem panyadia jasa nganggo akunna, maka kapercayaanna bakal dianggo pikeun ngaluarkeun kode otorisasi. Kodeu Kodeu Otoritas aksés aksés ka Token Aksés. Ayeuna akun hacker dina aplikasi ieu otorisasi. Éta tiasa ngaksés akun korban.

Janten, kumaha kuring tiasa nyegah kaayaan ieu nganggo parameter "Nagara"?

Aplikasi kedah nyiptakeun ajen anu kumaha waé hubungan ngeunaan akun sumber (contona, nganggo sési widang Fash). Henteu penting pisan naon kitu, hal utama nyaéta nilaina unik sareng dibentuk ngagunakeun inpormasi pribadi ngeunaan pamaké aslina. Éta ditugaskeun kana parameter "nagara".

Nilai ieu dikirimkeun kana panyadia jasa nalika alihan. Ayeuna hacker ngajasan ka korban pikeun muka URL, anu anjeunna tetep.

Kode otorisasi dikaluarkeun sareng dikirim deui ka sési sareng parameter "NEGARA".

Klién ngahasilkeun nilai parameter dumasar kana inpormasi sési sareng ngabandingkeun sareng nami "nagara" anu dikirim deui tina panyadia jasa. Nilai ieu henteu cocog sareng parameter "State dina pamanggih, saprak éta dibioskeun ngan dina kaayaan sési ngeunaan sési ayeuna. Hasilna, nilai pangsaéna teu ditampi ku sistem.

Cacangan sanésna dihubungkeun nalika nerapkeun Oale kalebet kamampuan pikeun ngalakukeun XSS (skripping situs cabang) anu bakal kadangkala nalika ditampi. Kode otorisasi tiasa dianggo langkung ti sakali pikeun ngaluarkeun sababaraha jabatan aksés). Kempurasi ieu kirang umum tibatan anu ngajelaskeun di luhur, tapi henteu janten aranjeunna kurang bahaya. Bingkungan kedah terang sadaya prakték anu peryogi pikeun mastikeun operasi anu dipercaya dina aplikasi wéb na.

Panulis artikel anu ditarjamahkeun: Simon saliba.

PENTING! Inpormasi sakadar pikeun tujuan akademik. Punten janten panerapan sareng henteu nerapkeun inpormasi ieu kanggo tujuan haram.

Bahan anu langkung narik di Cisoclub.ru. Ngalanggokeun ka urang: Facebook | Vk | Twitter | Instagram | Telyfram Zen | Utusan | Icq anyar | YouTube | Pulsa.

Maca deui