miercuri, 16 iulie 2008

Password security

Din motive care încă nu îmi sunt prea clare, lumea înconjurătoare mă consideră un "hecăr". Nu, nu spun asta ca laudă, ci ca să clarific un lucru: în afară de parola unei arhive .zip, nu am "spart" niciodată coduri de securitate, servere NASA, conturi de Yahoo! şi alte chestii ce au de-a face cu securitatea. Nu am făcut flooding, scam-uri, viruşi şi alte tâmpenii din astea - dacă ştiu să folosesc regedit-ul din Windows şi să configurez X-server-ul din Linux, nu înseamnă că sunt "hecăr" sau mai ştiu eu ce. Nu m-a pasionat niciodată găsirea de breşe de securitate şi nici nu cred că mă va pasiona vreodată. Se pare că mentalitatea românului depăşeşte orice barieră uneori.

Şi acum hai să mă dau un pic mare şi să vă vorbesc despre mitul "spargerii parolelor de Yahoo".

Oricât aţi spera, NU EXISTĂ PROGRAME CARE SĂ SPARGĂ PAROLELE DE YAHOO! Sau, dacă acestea totuşi există, fiţi sigur că nu o să ajungă în mainile voastre. Nimeni nu e prost să lucreze un an - doi la un algoritm de decriptare a unei parole, ca apoi să îşi facă programul public pe NET ca a doua zi să se trezească că breşa de securitate pe care a exploatat-o a fost acoperită. Fiţi siguri că dacă ar exista un astfel de program nu aţi fi primii care ar pune mâna pe el şi că "duşmanii" voştri care vă dau târcoale (păsări rapitoare - vorba unei "artiste") v-ar fi desfiinţat de mult contul de Yahoo Messenger.

Hai să spunem totuşi că aţi reuşi să intraţi pe serverele Yahoo (LOL) şi să aveţi acces la toate parolele. Voi de ce credeţi că atunci când vă uitaţi parola, nu o puteţi recupera, CI DOAR RESETA? Pentru că pe serverele Yahoo (şi majoritatea serviciilor serioase procedează aşa) parolele voastre sunt criptate cu un algoritm destul de puternic. Chiar dacă "vărul prietenului prietenei amicii tale" ar lucra la Yahoo nu ar putea să îţi afle ţie parola. O parolă criptată nu e imposibil de decriptat: sunt diverse metode prin care aceasta poate fi decriptată. Una din ele e "atacul pe bază de dicţionar". Prin această metodă se criptează un set de cuvinte (de obicei din dicţionarul unei limbi) folosind acelaşi algoritm cu cel de criptare a parolei şi apoi se compară cele 2 sintagme. Atacul de tip "brute-force" este mai eficace decât cel de tip dicţionar pentru că încearcă, pe rând, combinaţii de caractere în loc de cuvinte. Însă acest tip de atac durează mult timp (chiar şi ani). Haideţi să exemplificăm puţin:

Majoritatea site-urilor folosesc MD5 pentru a cripta parolele. MD5 este un algoritm de hash-ing, deseori folosit pentru creeare de checksumuri (şiruri de caractere prin care se verifică integritatea unui fişier). MD5 este considerat invincibil la ora actuală, ceea ce înseamnă că algoritmul este ireversibil.

Deci, să zicem că vă creeaţi un cont pe un site ce foloseşte MD5 pentru criptarea parolelor. Şi să zicem că parola pe care o folosiţi este "napolitana". În baza de date a site-ului, parola dumneavoastră va arăta aşa: 531ee59f9d75a2528fce63efb678d453. Cam mare diferenţa, nu? Acest şir de caractere nu poate fi descifrat de vreun program. Singurele metode prin care puteţi afla ce cuvânt se ascunde în spatele acelui şir de caractere este "dictionary-attack" sau "brute-force attack". Atacul pe bază de dicţionar practic va lua fiecare cuvânt dintr-o anumită limbă, îl va cripta cu MD5 şi îl va compara cu şirul de caractere de mai sus. Dacă va folosi un dicţionar în limba română, va începe cu cuvintele de la litera A, apo B, C, D, ş.a.m.d. până va ajunge la cuvântul "napolitana". Însă o parolă de genul "agsbSjaQUAsna21js7" nu va mai putea fi aflată cu ajutorul atacului de tip "dictionary". Aici intervine atacul cu forţă-brută. Acesta va încerca pe rând fiecare combinaţie posibilă de caractere "aaaaaa", "aaaaab", "aaaaac", etc., până va genera un hash asemănător cu cel oferit spre decriptare.

"Totuşi, lui X i-a fost spartă parola de Yahoo", vor zice unii. Da, e posibil. Oricât de puternică ar fi o parolă, aceasta nu este bună de nimic în preajma unui utilizator idiot. Atâta vreme cât îţi bagi parola prin toate scam-urile (vezi mai jos ce înseamnă), programele magice de aflat parole, site-uri dubioase, etc. e normal să te trezeşti că nu mai ai acces la contul tău. Cum pot unii să creadă în mail-urile gen "trimite un mesaj de genul id-ul_tau:::?:::parola_ta:::?:::id-ul celui căruia vrei să îi spargi parola::::boot_yahoo::::_mai_ştiu_eu_ce:::"? Sunt sute de astfel de mesaje ce circulă pe internet, care promit că mesajul tău va deruta serverele Yahoo (asta e, dacă nu au busolă cu ele) şi le va face să creadă că eşti un administrator Yahoo. Păi acei utilizatori chiar cred că administratorii Yahoo îşi administrează serverele prin... e-mail?! Eu cred că nici măcar SSH nu folosesc, cel mai probabil având un protocol propriu pe care îl utilizează în aceste scopuri. O altă metodă prin care mulţi utilizatori se trezesc cu parolele furate (NU SPARTE!) e introducerea acestora în diverse aplicaţii magice de anti-securitate. Ce poate fi mai frumos decât să vezi bucuria de pe faţa unui utilizator care a găsit un "super program de aflat parole de Yahoo" şi care, în starea euforică în care se află, completează editbox-urile respectivei aplicaţii cu id-ul şi parola sa?
Cea mai "reuşită" metodă de a fura parola cuiva de messenger e scam-ul. Scam-ul e o pagina care se aseamănă (deseori asemănarea e izbitoare) cu pagina pe care o falsifică. De exemplu, la pagina http://coffa.trial.csoft.net/Yahoo!%20Mail%20The%20best%20web-based%20email!.htm se află un scam al Yahoo Mail. NU INTRODUCEŢI CONTUL ŞI PAROLA DUMNEAVOASTRĂ DE YAHOO ÎN ACEA PAGINĂ!! Acea pagină e doar un fals, iar parola dumneavoastră va ajunge la cel care a creeat acea pagină. Fiţi foarte atenţi la URL-ul paginilor când introduceţi date personale (URL-ul este adresa site-ului pe care îl accesaţi). Mii de utilizatori cad în plasa acestor tipuri de falsuri, iar atunci când este copiată pagina unei bănci... ei bine, atunci poţi să te arzi la buzunar.
Desigur sunt şi alte metode de furt a unei parole (cookie stealing, sniffing, etc.), iar în cazul multora dintre ele e destul de dificil să te protejezi.

Să mai spun că nişte prieteni au creeat o pagină web care promitea că va sparge parola unui ID în schimbul parolei tale, şi că zeci de utilizatori au dat crezare acestei farse? :)

Un scam Yahoo. A se observa adresa paginii


1 comentarii :

Anonim spunea...

salut! am o problema! cineva mi-a spart parola si nu stiu cum sa o recuperez. am nevoie de datele din inbox si nu pot sa fac rost de ele in alt mod. si as vrea , totodata sa imi desfiintez adresa sparta. ma poti ajuta in acest sens cumva?