Reality.sys corrupted! Universe halted! Reboot?

XSS sau cross-site scripting XSS sau cross-site scripting

Lecţie de XSS în 3 paşi simplii:

  1. alegi un site suficient de important, că nu e frumos să te iei de ăia mici
  2. intri pe pagină, dai “view source” şi te uiţi pe acolo, cauţi o scăpare a programatorului prin locurile clasice unde apar (formulare de căutare, loginuri prin Cookie, etc.)
  3. dacă găseşti scăparea respectivă, o exploatezi!

Foarte simplă teoria, nu? Şi acum, în practică:

  1. aleg site-ul Neogen
  2. mă uit pe la căutari după o scăpare, o găsesc relativ repede, în cca. 2 minute
  3. le-o dau! (screenshot)

Detalierea atacului XSS

Codul original arăta în genul:

<td><input type='text' name='searchtext' value='******' style='width: 100%;' onfocus='this.select();'></td>

Unde în loc de ****** este inserat conţinutul variabilei GET “searchtex” fără a fi testat. Iar în linkul de mai sus, respectivul parametru conţinea un string de forma

'> <img src="adresa" />

Şi astfel imaginea a fost inserată în pagină. Evident că atacul putea fi mult mai complex şi cu consecinţe mult mai nefaste dacă eram ceva mai prost dispus şi nu mi se termina pauza de masă.

O posibilă metodă de atac cu consecinţe mai grave ar fi fost să injectez cod HTML în pagină astfel încât când cineva încerca să se logheze să primesc pe e-mail informaţiile lor de login (nume de utilizator şi parola). Cam atât pentru acum, continuarea în episodul următor…

Mulţumiri lui Viorel Mocanu pentru “partea grafică”. Eroarea a fost semnalată la Neogen azi, 8 Octombrie 2007, ora 16:40. Sunt curios în cât timp o vor rezolva…

similarposts (presented by Monkey)

Monkey

comments...comments...15comments

  1. alexandraNo Gravatar said:

    esti un nesuferit …asa esti…nu mai poate omu’ sa faca bani cu un site ca vii tu cu pretentii sa fie facut “ca la carte” :)

  2. TudorNo Gravatar said:

    Se mai întâmplă. Ca lider de piaţă, Neogen chiar ar trebui să fie “spotless”. Mai ales cu infuzia aia de câteva milioane de dolari pe care au primit-o de curând, te gândeşti că şi-ar permite şi ei o auditare a site-ului din punct de vedere al securităţii…

  3. necenzuratNo Gravatar said:

    bravo tudorica asa te vreau lasa ca si asa neogen e varza :)

    poate mai gases si eu ceva erori :)

  4. TudorNo Gravatar said:

    Problema a fost reparată în mai puţin de 2 ore! Respect Neogen!

  5. TudorNo Gravatar said:

    Later: mai apar nişte mici probleme în pagină. Se pare că s-au grăbit…

  6. necenzuratNo Gravatar said:

    acuma ce vrei ma sa fie si valida W3… ceri mult prea multe

  7. XSS la .ro | necenzurat - The BLog said:

    […] s-a parut penibil postul lui Tudor, faptul ca un site ca neogen poate sa aiba asa buguri in el, adevarat ca aia habar nu au ce e aia […]

  8. IskanderNo Gravatar said:

    Da pi bunni ca nu ai ce face sa-ti pui mintea cu toti programatorii de 2 lei. Nu ca tin eu cu Neogen, dar ce vrei, daca astia sunt singurii disponibii pe piata…

  9. TudorNo Gravatar said:

    Păi în weekend, în loc să se dea cu Hummer-ul pus la dispoziţie de Neogen, ar putea să mai citească şi ei nişte tutoriale PHP…

  10. AcidNo Gravatar said:

    Pey, ca sa fiu sincer nu vad care-i marea buba. Nu ai stricat site-ul in nici un fel pentru oricine altcineva in afara de tine, deci din punctul meu de vedere impactul e inexistent.

  11. TudorNo Gravatar said:

    Acid> acum, că au reparat problema da! Nu mai e mare bubă…Dar atunci, oricine apăsa link-ul ăla, vedea site-ul exact ca în screenshot-ul meu.

  12. Atacuri informatice în România :: Phishing şi XSS said:

    […] ceva timp, am postat un articol referitor la o problemă de securitate pe site-ul Neogen. Iar unii din cititori, mi-au spus că […]

  13. XSS, sau ce am învățat de la Tudor « The Ready Room said:

    […] am învățat de la Tudor 12 02 2008 Tudor, 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 […]

  14. Just4FunNo Gravatar said:

    Tudorica ai putea sa imi dai si mie un add la Yahoo! Messenger ID: robert.cristea … as avea nevoie de putin ajutor… Te rog frumos!
    Good job si tot asa!

  15. PbNo Gravatar said:

    hai recunoaste, te uitai de fapt dupa un mic sql injection, nu? :)

yourReply