Acasă
» Wiki
»
Cum să încerci să spargi singur o parolă pentru a-i testa puterea
Cum să încerci să spargi singur o parolă pentru a-i testa puterea
Articolul a testat 3 parole diferite cu un instrument de spargere a parolelor cu sursă deschisă pentru a afla ce metodă funcționează cu adevărat când vine vorba de securitatea parolei.
Când creați un cont cu un serviciu online, furnizorul criptează de obicei informațiile dvs. de conectare pe serverele lor. Acest lucru se face folosind un algoritm pentru a crea un „hash”, un șir aleatoriu aparent unic de litere și numere pentru parola dvs. Desigur, nu este chiar aleatoriu, ci un șir de caractere foarte specific pe care doar parola ta îl poate genera, dar pentru ochiul neantrenat pare o mizerie.
Transformarea unui cuvânt într-un hash este mult mai rapid și mai ușor decât „decodificarea” din nou a hash-ului într-un cuvânt. Deci, atunci când setați o parolă, serviciul la care vă conectați rulează parola printr-un hash și stochează rezultatul pe serverele lor.
Dacă acest fișier cu parolă este scurs, hackerii vor încerca să-i afle conținutul prin spargerea parolei. Deoarece criptarea parolelor este mai rapidă decât decriptarea lor, hackerii vor configura un sistem care preia parole potențiale ca intrare, le criptează folosind aceeași metodă ca și serverul și apoi compară rezultatele cu o bază de date de parole.
Dacă hash-ul unei parole potențiale se potrivește cu orice intrare din baza de date, hackerul știe că fiecare încercare se potrivește cu parola potențială încercată.
Cum să vă spargeți propriile parole folosind HashCat
Încercați să spargeți unele dintre parolele pe care le-a generat articolul pentru a vedea cât de ușor este. Pentru a face acest lucru, exemplul va folosi Hashcat , un instrument gratuit și open source de spargere a parolelor pe care îl poate folosi oricine.
Pentru aceste teste, exemplul va sparge următoarele parole:
123456 : O parolă clasică și un coșmar al securității cibernetice, 123456 este parola cel mai frecvent utilizată din lume . NordPass a calculat că 3 milioane de conturi au folosit 123456 ca parolă, inclusiv 1,2 milioane care protejează conturile la nivel de companie.
Susan48! : o parolă care urmează modele pe care majoritatea utilizatorilor le-ar folosi pentru a crea parole sigure. Acest lucru îndeplinește, în general, criteriile de protecție prin parolă de bază, dar, după cum vom explora mai târziu, are câteva puncte slabe importante care pot fi exploatate.
t9^kJ$2q9a : O parolă generată folosind instrumentul Bitwarden. Este setat să genereze o parolă de 10 caractere, cu litere mari și mici, simboluri și numere.
Acum, criptați parola folosind MD5. Iată cum ar arăta parolele dacă ar fi într-un fișier de parole salvat:
123456 : e10adc3949ba59abbe56e057f20f883e
Susan48! : df1ce7227606805745ee6cbc644ecbe4
t9^kJ$2q9a : 450e4e0ad3ed8766cb2ba83081c0a625
Acum, este timpul să le spargi.
Efectuați un simplu jailbreak folosind metoda Dictionary Attack
Pentru început, să efectuăm un atac de dicționar, una dintre cele mai comune metode de atac cu parole. Acesta este un atac simplu în care hackerul ia o listă cu potențiale parole, îi cere lui Hashcat să le convertească în MD5 și vede dacă vreuna dintre parole se potrivește cu cele 3 intrări de mai sus. Pentru acest test, să folosim fișierul „rockyou.txt” ca dicționar, care este una dintre cele mai mari scurgeri de parole din istorie.
Pentru a începe cracarea, autorul articolului a mers în folderul Hashcat, a făcut clic dreapta pe un spațiu gol și a făcut clic pe Deschidere în Terminal . Acum că Terminalul este deschis și setat la directorul Hashcat, invocați aplicația Hashcat cu următoarea comandă:
.\hashcat -m 0 -a 0 passwordfile.txt rockyou.txt -o results.txt
Iată ce face comanda:
.\hashcat apelează Hashcat.
-m 0 : Specifică tipul de codificare de utilizat. Acest caz va folosi MD5, listat ca 0 în documentația de ajutor Hashcat.
-a 0 : Specifică atacul de efectuat. Documentația de ajutor Hashcat listează atacul dicționarului ca zero, așa că îl numim aici.
passwordfile.txt rockyou.txt : primul fișier conține cele 3 parole criptate pe care le-am configurat mai devreme. Al doilea fișier este întreaga bază de date de parole rockyou.
-o results.txt : Această variabilă determină unde punem rezultatele. În comandă, pune parolele sparte într-un fișier TXT numit „rezultate”.
Chiar dacă rockyou era imens, Hashcat le-a procesat pe toate în 6 secunde. În fișierul rezultat, Hashcat spune că a spart parola 123456, dar parolele Susan și Bitwarden rămân necracate. Asta pentru că 123456 a fost folosit de altcineva în fișierul rockyou.txt, dar nimeni altcineva nu a folosit parola Susan sau Bitwarden, ceea ce înseamnă că erau suficient de siguri pentru a supraviețui acestui atac.
Efectuați un jailbreak mai complex folosind atacuri ascunse Brute Force
Efectuați un atac de forță brută cu Hashcat
Atacurile de dicționar sunt eficiente atunci când cineva folosește aceeași parolă ca o parolă găsită într-o listă mare de parole. Sunt rapid și ușor de implementat, dar nu pot sparge parolele care nu sunt în dicționar. Prin urmare, dacă doriți cu adevărat să vă testați parola, trebuie să utilizați atacuri Brute Force.
Dacă atacurile de dicționar preiau doar o listă prestabilită și le convertesc una câte una, atunci atacurile Brute Force fac același lucru, dar cu orice combinație imaginabilă. Sunt mai greu de implementat și necesită mai mult timp, dar în cele din urmă vor sparge orice parolă. După cum vom vedea în curând, acea abilitate poate dura uneori mult timp.
Iată comanda folosită pentru a efectua un atac „real” Brute Force:
.\hashcat -m 0 -a 3 target.txt --increment ?a?a?a?a?a?a?a?a?a?a -o output.txt
Iată ce face comanda:
-a 3 : Aceasta variabila defineste atacul pe care vrem sa-l efectuam. Documentația de ajutor Hashcat listează atacurile Brute Force ca numărul 3, așa că este numit aici.
target.txt : Fișier care conține parola criptată pe care dorim să o spargem.
--increment : Această comandă îi spune lui Hashcat să încerce toate parolele care au un caracter, apoi două, apoi trei etc. până când găsește o potrivire.
?a?a?a?a?a?a?a?a?a?a?a?a : Aceasta se numește „mască”. Măștile ne permit să-i spunem lui Hashcat ce caractere sunt folosite în ce poziții. Fiecare semn de întrebare specifică poziția unui caracter în parolă, iar litera specifică ce încercăm la fiecare poziție. Litera „a” reprezintă litere mari și mici, numere și simboluri, așa că această mască spune „Încercați totul pe fiecare poziție”. Aceasta este o mască groaznică, dar vom ajunge să o folosim eficient mai târziu.
-o output.txt : Această variabilă determină unde punem rezultatele. Exemplul de comandă pune parolele sparte într-un fișier TXT numit „ieșire”.
Chiar și cu această mască proastă, parola 123456 este spartă în 15 secunde. Deși este cea mai comună parolă, este una dintre cele mai slabe.
Parolă „Susan48!” mult mai bine - computerul spune că va dura 4 zile să se spargă. Cu toate acestea, există o problemă. Îți amintești când articolul spunea că parola lui Susan avea unele defecte serioase? Cea mai mare greșeală este că parolele sunt construite într-un mod previzibil.
Când creăm parole, adesea punem anumite elemente în anumite locuri. Vă puteți imagina că creatorul parolei Susan a încercat să folosească „susan” la început, dar i s-a cerut să adauge litere mari și cifre. Pentru a fi mai ușor de reținut, au scris prima literă cu majuscule și au adăugat numere la sfârșit. Apoi, poate că un serviciu de conectare a cerut un simbol, așa că setatorul de parole l-a lipit până la sfârșit.
Așadar, putem folosi masca pentru a-i spune lui Hashcat să încerce doar anumite caractere în anumite locuri pentru a exploata cât de ușor este pentru oameni să ghicească atunci când creează parole. În această mască, „?u” va folosi doar litere mari în acea poziție, „?l” va folosi doar litere mici, iar „?a” reprezintă orice caracter:
Cu această mască, Hashcat a spart parola în 3 minute și 10 secunde, mult mai repede decât 4 zile.
Parola Bitwarden are 10 caractere și nu folosește niciun model previzibil, așa că ar fi nevoie de un atac Brute Force fără nicio mască pentru a o sparge. Din păcate, când i-a cerut lui Hashcat să facă asta, a dat o eroare, spunând că numărul de combinații posibile depășește limita întregului. Expertul în securitate IT spune că lui Bitwarden i-a luat 3 ani să spargă parola, așa că este suficient.
Cum să vă păstrați contul în siguranță împotriva spargerii parolelor
Principalii factori care împiedică articolul să spargă parola Bitwarden sunt lungimea acesteia (10 caractere) și imprevizibilitatea. Prin urmare, atunci când creați o parolă, încercați să o faceți cât mai lungă posibil și să distribuiți simbolurile, cifrele și literele mari în mod egal în întreaga parolă. Acest lucru îi împiedică pe hackeri să folosească măști pentru a prezice locația fiecărui element și le face mult mai greu de spart.
Probabil cunoașteți vechile vorbe de parolă precum „utilizați o matrice de caractere” și „faceți-o cât mai lung posibil”. Sperăm că știți de ce oamenii recomandă aceste sfaturi utile – ele reprezintă diferența cheie între o parolă ușor de spart și una sigură.