Kako preprečim ponarejanje med spletnimi mesti?

Ponarejanje med spletnimi mesti (XSRF ali CSRF), znano tudi pod različnimi imeni, vključno s ponarejanjem zahtev na več mestih, upravljanjem seje in napadom z enim klikom, je težko preprečiti izkoriščanje spletnega mesta. Deluje tako, da spletni brskalnik zavede, da pošlje nepooblaščene ukaze oddaljenemu strežniku. Napadi ponarejanja med spletnimi mesti delujejo samo proti uporabnikom, ki so se prijavili na spletna mesta z verodostojnimi poverilnicami; posledično je lahko odjava s spletnih mest preprost in učinkovit preventivni ukrep. Spletni razvijalci lahko uporabljajo naključno ustvarjene žetone, da preprečijo tovrstni napad, vendar se morajo izogibati preverjanju napotitelja ali zanašanju na piškotke.

Običajno je, da izkoriščanja ponarejanja med spletnimi mesti ciljajo na spletne brskalnike v tako imenovanem »napadu zmedenega namestnika«. Ker verjame, da deluje v imenu uporabnika, je brskalnik zaveden v pošiljanje nepooblaščenih ukazov oddaljenemu strežniku. Ti ukazi so lahko skriti znotraj navidez nedolžnih delov označevalne kode spletne strani, kar pomeni, da brskalnik, ki poskuša prenesti slikovno datoteko, morda dejansko pošilja ukaze banki, spletnemu prodajalcu ali mestu za družabno omrežje. Nekateri brskalniki zdaj vključujejo ukrepe, namenjene preprečevanju napadov ponarejanja med spletnimi mesti, programerji tretjih oseb pa so ustvarili razširitve ali vtičnike, ki nimajo teh ukrepov. Morda bi bilo dobro, da izklopite e-pošto v jeziku za označevanje hiperbesedila (HTML) v želenem odjemalcu, ker so tudi ti programi ranljivi za napade ponarejanja med spletnimi mesti.

Ker se napadi ponarejanja med spletnimi mesti zanašajo na uporabnike, ki so se zakonito prijavili na spletno mesto. S tem v mislih je eden najlažjih načinov za preprečevanje takšnega napada, da se preprosto odjavite s spletnih mest, ki ste jih končali z uporabo. Številna spletna mesta, ki se ukvarjajo z občutljivimi podatki, vključno z bankami in borznoposredniškimi družbami, to storijo samodejno po določenem obdobju nedejavnosti. Druga spletna mesta imajo nasproten pristop in omogočajo uporabnikom, da so vztrajno prijavljeni več dni ali tednov. Čeprav se vam to morda zdi priročno, vas izpostavi napadom CSRF. Poiščite možnost »zapomni si me v tem računalniku« ali »ohrani me prijavljen« in jo onemogočite ter ne pozabite klikniti povezave za odjavo, ko končate sejo.

Za spletne razvijalce je lahko odprava ranljivosti zaradi ponarejanja med spletnimi mesti še posebej zahtevna naloga. Preverjanje informacij o napotiteljih in piškotkih ne zagotavlja veliko zaščite, ker izkoriščanja CSRF izkoriščajo legitimne uporabniške poverilnice in je te informacije enostavno ponarediti. Boljši pristop bi bil naključno generiranje žetona za enkratno uporabo vsakič, ko se uporabnik prijavi, in zahtevati, da se žeton vključi v vsako zahtevo, ki jo pošlje uporabnik. Za pomembne zahteve, kot so nakupi ali prenosi sredstev, lahko zahteva, da uporabnik znova vnese uporabniško ime in geslo, pomaga zagotoviti pristnost zahteve.