Win NT SP3 si TearDrop2    
 

Inainte de a va povesti pe larg ce se face, cum shi de ce, o sa va spun ca pe vremea cand ieram shi io mic shi neexperimentat (nu mai shtiu sigur daca ieri sau alaltaieri) am patzit-o shi io la randul meu. Cine este victima ? Un Windows NT, care ruleaza Service Pack 3. O sa zicetzi ca asha ceva nu mai exista. Ei bine, exista. Io cel putzin am. Shi cum nu am reushit sa ii conving pe shefii mei sa imi bage linux pentru serviciile pe care le face NT-ul respectiv....

Ce se intampla de fapt ? Victima moare subit, fara sa apuce sa lase mesaje de adio sau alte minunatzii de genul asta. Ecranul ingheatza, stiva ie plina pana la refuz, butonul ala pe care scrie "reset" ie ultima solutzie de resuscitare. Cine ie de vina ? Pai daca patzitzi chestia asta, in afara de Microsoft care scoate produse cum nu se poate mai bune, este posibil sa mai avetzi shi un "prieten" care sa va vrea "binele" :)).

Cum reusheshte ? Simplu. Exista pe web un programel pe care il chiama 'teardrop' (il gasitzi pe la rootshell) care face toata treaba. Cine este teardrop shi de ce ? Pentru cint nu shtie, teardrop a aparut prin '97. Programul are la baza o chestie care se chiama "IP Fragments" -- nu shtiu exact o traducere in limba romana, dar gasiti mai multe detalii in RFC1858 (http://www.faqs.org/rfcs/rfc1858.html). Bun. Si acuma care ie shmenul: RFC 791 (http://www.faqs.org/rfcs/rfc791.html) zice ca pachetele IP nu pot sa fie mai mari decat 65535 octeti, drept pentru care pachetele mai mari trebuiesc fragmentate astfel incat, cu tot cu headere sa nu depaseasca numarul de octeti stabilit in RFC 791. Una dintre versiunile de TearDrop care exista in zilele noastre (da, exista fro doua) shi care m-a afectat pe mine functioneaza (cu aproximatie de 99%) pe principiul urmator:

Atacatorul trimite perechi de "fragmente ip" construite in asa fel incat NT-ul care le primeste si care incearca sa le puna cap la cap intr-o diagrama UDP o sa obtina o diagrama invalida. Acest lucru se intampla deoarece al doilea fragment va suprascrie datele scrise de primul fragment in headerul datagramei UDP.

Cand un NT primeste astfel de datagrame, incepe sa aloce memorie. Daca primeste suficient de multe astfel de datagrame (1-2 minute de teardropuit sunt suficiente, zic io), NT-ul va zice STOP, shi STOP va ramane pana la primul reset de buton. Si gata. ie suficient sa pui atacu asta sa se faca cam de doua ori pe zi (din cron de pilda) si sa zicem la 11 la pranz si la 1 noaptea, ca adminu retzelei victima sa nu mai doarma bine. Este adevarat ca cei de la Microsft s-au grabit sa scoata patch-uri pentru atacul asta, da' se gasesc retzele cu NT-uri cu SP3 nepatchuite cu duiumul :p

Shi ca tot vorbeam de patchuri. Patchuri pentru astfel de atacuri, se gaseau pe vremea cand io ieream mai mic cu fro 3 zile AICI.

Ashea. Shi ca sa va mai documentazti un pic despre tipurile astea de atacuri, mai ie un articol, scris de Edix cam pe aceeashi tema, pe care il cititzi AICI

   

BloomY