Forțele de atac brute sunt destul de simple de înțeles, dar sunt greu de protejat. Criptarea este matematică, iar computerele devin mai rapide la matematică, devin mai repede la încercarea tuturor soluțiilor și pentru a vedea care dintre acestea se potrivește.
Aceste atacuri pot fi folosite împotriva oricărui tip de criptare, cu grade diferite de succes. Atacurile de forță brute devin mai rapide și mai eficiente cu fiecare zi care trece, fiind lansat un hardware mai nou, mai rapid.
Atacurile brute sunt ușor de înțeles. Un atacator are un fișier criptat - de exemplu, baza de date pentru parolele LastPass sau KeePass. Ei știu că acest fișier conține date pe care doresc să le vadă și știu că există o cheie de criptare care o deblochează. Pentru a le decripta, pot începe să încerce fiecare parolă posibilă și să vadă dacă rezultă într-un fișier decriptat.
Ei fac acest lucru automat cu un program de calculator, astfel încât viteza cu care cineva poate forța brute-forța de criptare crește, pe măsură ce hardware-ul disponibil al computerului devine mai rapid și mai rapid, capabil să facă mai multe calcule pe secundă. Atacul brutal ar putea începe cu parole de o singură cifră înainte de a trece la parole de două cifre și așa mai departe, încercând toate combinațiile posibile până când unul nu funcționează.
Un "atac de dicționar" este similar și încearcă cuvinte într-un dicționar - sau o listă de parole comune - în loc de toate parolele posibile. Acest lucru poate fi foarte eficient, deoarece mulți oameni utilizează astfel de parole slabe și comune.
Există o diferență între atacurile de forță brute online și offline. De exemplu, dacă un atacator dorește să-și forțeze drumul în contul Gmail, poate începe să încerce fiecare parolă posibilă - dar Google le va tăia rapid. Serviciile care oferă acces la astfel de conturi vor accelera încercările de acces și vor interzice adresele IP care încearcă să se conecteze de atâtea ori. Astfel, un atac împotriva unui serviciu online nu ar funcționa prea bine, deoarece se pot face foarte puține încercări înainte ca atacul să fie oprit.
De exemplu, după câteva încercări de conectare eșuate, Gmail vă va afișa o imagine CATPCHA pentru a verifica dacă nu sunteți un computer care încearcă să parcurgă automat parole. Probabil că vă vor opri complet încercările de conectare dacă ați reușit să continuați pentru suficient timp.
Pe de altă parte, să presupunem că un atacator a lovit un fișier criptat de pe computerul dvs. sau a reușit să compromită un serviciu online și să descarce astfel de fișiere criptate. Atacatorul are acum datele criptate pe propriul hardware și poate încerca cât mai multe parole pe care le doresc în timpul lor liber. Dacă au acces la datele criptate, nu există nicio modalitate de a le împiedica să încerce un număr mare de parole într-o perioadă scurtă de timp. Chiar dacă utilizați o criptare puternică, este în beneficiul dvs. să păstrați datele în siguranță și să vă asigurați că alții nu au acces la acestea.
Algoritmii de hashing puternici pot încetini atacurile de forță brute. În esență, algoritmii hash execută o lucrare matematică suplimentară asupra unei parole înainte de a stoca o valoare derivată din parola pe disc. Dacă se folosește un algoritm de hash mai lent, va fi nevoie de mii de ori mai multă muncă matematică pentru a încerca fiecare parolă și pentru a încetini dramatic atacurile de forță brute. Cu toate acestea, cu cât este nevoie de mai multă muncă, cu atât trebuie să lucreze mai mult un server sau alt computer, de fiecare dată când utilizatorul se conectează cu parola. Software-ul trebuie să echilibreze rezistența împotriva atacurilor de forță brute cu utilizarea resurselor.
Viteza tot depinde de hardware. Agențiile de informații pot construi hardware specializat doar pentru atacuri de forță brute, la fel cum minerii Bitcoin își construiesc propriul hardware specializat optimizat pentru exploatarea Bitcoin. Când vine vorba de hardware-ul de consum, cel mai eficient tip de hardware pentru atacurile de forță brute este o placă grafică (GPU). Deoarece este ușor să încercați simultan multe chei de criptare diferite, multe plăci grafice care rulează în paralel sunt ideale.
La sfârșitul anului 2012, Ars Technica a raportat că un cluster de 25 de GPU-uri ar putea sparge orice parolă Windows sub 8 caractere în mai puțin de șase ore. Algoritmul NTLM utilizat de Microsoft nu era suficient de rezistent. Cu toate acestea, atunci când a fost creat NTLM, ar fi trebuit mult mai mult să încercați toate aceste parole. Acest lucru nu a fost considerat suficient de o amenințare pentru Microsoft de a face criptarea mai puternică.
Viteza crește, iar în câteva decenii am putea descoperi că și cei mai puternici algoritmi criptografici și cheile de criptare pe care le folosim astăzi pot fi rapid sparte de computerele cuantice sau de orice alt echipament hardware pe care îl folosim în viitor.
Nu există nicio modalitate de a vă proteja complet. Este imposibil să spunem cât de rapid va fi hardware-ul calculatorului și dacă oricare dintre algoritmii de criptare pe care îi folosim astăzi au deficiențe care vor fi descoperite și exploatate în viitor. Totuși, aici sunt elementele de bază:
Forțele de atac brute sunt ceva de care trebuie să vă faceți griji atunci când vă protejați datele, alegeți algoritmi de criptare și selectați parole.Ele sunt, de asemenea, un motiv pentru a continua să dezvolte algoritmi criptografici mai puternici - criptarea trebuie să țină pasul cu cât de repede este redus ineficient de noul hardware.
Image Credit: Johan Larsson pe Flickr, Jeremy Gosney