Ključna razlika med XSS in CSRF je, da pri XSS (ali Cross Site Scripting) spletno mesto sprejme zlonamerno kodo, medtem ko je pri CSRF (ali Cross Site Request Forgery) zlonamerna koda shranjena v tretjem strani za zabave. XSS je vrsta računalniške varnostne ranljivosti v spletnih aplikacijah, ki napadalcem omogoča vbrizgavanje skriptov na strani odjemalca na spletne strani, ki si jih ogledujejo drugi uporabniki. Po drugi strani pa je CSRF vrsta zlonamerne dejavnosti hekerja ali spletnega mesta, ki posreduje nepooblaščene ukaze, ki jim bo uporabnikova spletna aplikacija zaupala.
Izdelava spletnih strani je proces programiranja spletne strani v skladu z zahtevami naročnika. Vsaka organizacija vzdržuje spletne strani. Te spletne strani pomagajo izboljšati poslovanje in pridobiti dobiček. Hkrati lahko pride do groženj, ki vplivajo na funkcionalnost spletne strani. Dva od njih sta XSS in CSRF.
Kaj je XSS?
XSS je napad z vbrizgavanjem kode, ki v spletno mesto vbrizga zlonamerno kodo. Gre za enega najpogostejših napadov na spletno stran. Lahko vpliva na spletno mesto in lahko vpliva tudi na uporabnike tega spletnega mesta. Z drugimi besedami, ko pride do napada XSS na spletnem mestu, bo brskalnik to kodo izvedel v uporabnikih tega spletnega mesta.
Slika 01: Napad XSS
Eden pogostih jezikov za pisanje zlonamerne kode za XSS je JavaScript. XSS lahko ukrade uporabnikove piškotke. Spletno stran lahko spremeni tako, da izgleda in se obnaša drugače. Poleg tega lahko prikaže prenose zlonamerne programske opreme in spremeni uporabniške nastavitve.
Obstajata dve vrsti napadov XSS. Imenujejo se vztrajni in neobstojni. Pri vztrajnem napadu XSS se zlonamerna koda shrani v bazo podatkov spletnega mesta. Uporabnik lahko do njega dostopa brez znanja. Neobstojni napad XSS se imenuje tudi Reflected XSS. Zlonamerno skripto pošlje kot zahtevo HTTP. To sta glavni dve vrsti v XSS.
Kaj je CSRF?
Na spletnem mestu obstaja stran odjemalca in stran strežnika. Spletne strani, obrazci so na strani odjemalca. Strežniška stran izvede dejanje, ko uporabnik ukrepa. Strežniška stran prejema zahteve tudi z drugih spletnih mest.
Napad CSRF pretenta uporabnika v interakcijo s stranjo ali skriptom na spletnem mestu tretje osebe. Ustvaril bo zlonamerno zahtevo na uporabnikovem spletnem mestu. Toda strežnik domneva, da gre za zahtevo s pooblaščenega spletnega mesta. Ko jo uporabnik sprejme, lahko napadalec prevzame nadzor nad uporabo podatkov, poslanih v zahtevi.
Primer je naslednji. Uporabnik se prijavi na svoj bančni račun. Banka mu zagotovi sejni žeton. Heker lahko zavede uporabnika, da klikne na lažno povezavo, ki kaže na banko. Ko uporabnik klikne povezavo, ta uporabi žeton prejšnje seje. Nato se hekerjeva zahteva izvrši in uporabniški račun se vdre. Lahko nakaže denar s svojega računa. Zahteva banki je ponarejena, saj uporablja isti žeton seje uporabnika. Na splošno je pomembno vedeti, kako zaščititi spletno mesto pred napadi CSRF v spletnem razvoju.
Kakšna je razlika med XSS in CSRF?
XSS pomeni Cross Site Scripting, CSRF pa Cross Site Request Forgery. XSS je vrsta računalniške varnostne ranljivosti v spletnih aplikacijah, ki napadalcem omogoča vbrizgavanje skriptov na strani odjemalca na spletne strani, ki si jih ogledujejo drugi uporabniki. CSRF je vrsta zlonamerne dejavnosti hekerja ali spletnega mesta, ki posreduje nepooblaščene ukaze, ki jim bo uporabnikova spletna aplikacija zaupala. Poleg tega XSS potrebuje JavaScript za pisanje zlonamerne kode, medtem ko CSRF ne potrebuje JavaScripta.
Poleg tega v XSS spletno mesto sprejme zlonamerno kodo, medtem ko je v CSRF zlonamerna koda shranjena na spletnih mestih tretjih oseb. To je glavna razlika med XSS in CSRF. Običajno je mesto, ki je ranljivo za napad XSS, ranljivo tudi za napad CSRF. Vendar je lahko spletno mesto, ki ima zaščito pred XSS, še vedno ranljivo za napade CSRF.
Povzetek – XSS proti CSRF
XSS in CSRF sta dve vrsti napadov na spletno stran. XSS pomeni Cross Site Scripting, medtem ko CSRF pomeni Cross Site Request Forgery. Razlika med XSS in CSRF je v tem, da pri XSS spletno mesto sprejme zlonamerno kodo, pri CSRF pa je zlonamerna koda shranjena na spletnih mestih tretjih oseb.