Kiber Howpsuzlyk gündeligi, Gün 3: Sessions, CSRF atakasy, SameSite Cookie-lar barada.

Bu gezek web applicationlar-da datalary, ulanyjy maglumatlary saklamakda kömek etýän emma dogry ulanylmasa gaty uly howplar döredip bilýän meselelere serederis.

Mar 20, 2025 - 08:20
Mar 20, 2025 - 08:35
 0  71
Kiber Howpsuzlyk gündeligi, Gün 3: Sessions, CSRF atakasy, SameSite Cookie-lar barada.
Salam ildeşler! Bu gün ýene bir gyzykly tema bilen Kiber Howpsuzlyk gündeligine dowam etýäris. Bu gezek web applicationlar-da datalary, ulanyjy maglumatlary saklamakda kömek etýän emma dogry ulanylmasa gaty uly howplar döredip bilýän meselelere serederis. Ilki bilen hemme zady has giňişleýin düşünmek üçin gelin ilki temanyň düýp bölegine seredeliň.

HTTP näme?

HTTP(Hypertext Transfer Protocol) bu web application-larda, web browser bilen web serwerlar arasynda informasiýalaryň gelip gidimini sazlaýan bir protocoldyr(Meselem: POST, GET, PUT). Bu protocol kiçi amallary ýerine ýetirmek üçin döredilendigi sebäpli häzirki wagt web applicationlarda uly meseleler ýüze çykmasyna sebäp bolýar. Bu protocol informasiýany ulanyjydan bilen serwer arasynda alyp getirende, ulanyjynyň authentication ýagdaýyny barlanok. Eger protocol authentication geçirmese, ýa her alynan informasiýa hemme kişi tarapyndan elýeterli bolmaly bolýar, ýa-da her bir informasiýa request-i soralanda ulanyjy dowamly login edip durmaly bolýar. Ýagny gysgaça aýdanymyzda, HTTP protocol-y her bir request-i özbaşdak saklaýar we serwer öňki aragatnaşygy ýatda saklap bilenok. Beýle ýagdaýlar hem ulanyja we developer-lara kynçylyk döretýär.

Session näme?

Emma biziň ulanýan web browser-larymyz indi bu meseläni çözdi. Ähli web browser, haçanda ulanyjy login etse, login eden ulanyja degişli täze bir session id döretýär we bu döreden session id-syny browser-yň öz local database-ynda saklaýar. Bu database hem köplenç cookie diýp atlandyrylýar. Browser-laryň bu döreden sistemasy biz ulanyjylara website ulanmagy has hem aňsatlaşdyrýar.

CSRF (Cross-Site Request Forgery) näme?

CSRF atakasy ýokarda belläp geçen HTTP protocol-ynda authentication ýokdygy we bu authentication sistemasynyň ýerine gurulan session cookie-laryň nädogry yzygiderlikde işlemesi sebäpli ýüze çykýan uly bir meseledir.
Meselem:
Siz bank.com web sahypasynda töleg etmek islediňiz, we ähli kart informasiýalaryňyzy bir ýere doldurdyňyz, bu ýazan informasiýalaryňyzyň ählisi hem session id-y bilen web browseryň cookie-syna bellenilýär. Indi siz şol bir wagtyň dowamynda, indiki hepde howalaryň nähili boljakdygyny görmek üçin hem howalar.com web sahypasyna girdiňiz, we bu web sahypada siziň cookie-ňyzdaky bellenilen ähli informasiýalary alýan bir zeperli kod goýulan bolsa, siziň kart informasiýalaryňyzy arkaýynlyk bilen alyp bilýär.
Ine aşakdaky meselemde, zeperli koduň nähili bolup biljekdigi görkezilýar.
form action="https://bank.com/transfer" method="POST" id="csrf-form">
    input type="hidden" name="amount" value="1000"/>                 
    input type="hidden" name="to_account" value="attacker_account"/> 
script>                                                              
document.getElementById("csrf-form").submit();                       

Beýle atakalaryň nädip öňüni almaly?

Developer-lar SameSite Cookies diýp bir gorag mekanizmasyny döretdiler. Bu mekanizma başga bir web sahypalardan edilen request-lary bloklaýar we diňe birine rugsat berýär.

res.cookie('session', 'user123', { httpOnly: true, sameSite: 'Strict' });

Ýokardaky görkezilen merkanizmalary ulanyp developer-lar ulanyjylary aňsatlyk bilen beýle atakalardan gorap bilerler.

Netije

Görüşimiz ýaly CSRF atakasy biz ulanyjylar üçin örän zeperli bolup biler. Beýle atakalardan özümizi goramak islesek, hökmän login/register bolan website-laryňyzdan çykyp durun(has wajyp informasiýalaryňyzy saklaýan bolsa). Ynamly däl web sahypalara girmäň. Has wajyp informasiýalaryňyzy saklaýan web sahypalara incognito mode giriň. Nätanyş linklere basman hereket etseňiz, bular ýaly atakalardan özüňizi gorap bilersiňiz. Wagtyňyzy aýyryp okanyňyz üçin örän minnetdar! Soraglaryňyz bolsa arkaýyn kommentariýa belläp bilersiňiz.

ahmetakyyev yadow, yone umutly