Puncte:2

Hash parole și funcții hash

drapel es

Sunt un noob complet. Citeam despre funcțiile hash. Deci, dacă o bancă are parola de utilizator rulată printr-o funcție hash, va produce un hash unic pentru fiecare parolă, nu? Astfel, chiar dacă hackerii reușesc să pună mâna pe anumite date, ei vor avea doar hash-urile și nu parolele originale.

Dar am citit și că, dacă un hacker rulează o mulțime de parole comune printr-o funcție hash și apoi compară hashurile comune pe care le-a generat cu hashurile furate, el poate găsi parolele originale.

Întrebarea mea este că hackerul poate face asta numai dacă știe cum funcționează funcția hash (folosită de bancă). Evident, nu poate genera hash-urile parolelor comune dacă nu știe cum funcționează funcția hash folosită de bancă. Atunci de ce este hashingul fără săruri un pericol pentru securitate? Înseamnă asta că toate funcțiile hash funcționează la fel?

Puncte:1
drapel us

El, evident, nu poate genera hash-urile parolelor comune dacă nu știe cum funcționează funcția hash folosită de bancă.

Aceasta este premisa defectuoasă. Dacă o bancă vrea să aibă Certificare FIPS, de exemplu, atunci trebuie să hash parolele cu unele bune, standardizate funcția hash. Securitatea autentificării bazate pe parolă nu provine din secretul despre cum funcționează o funcție hash --- care ar fi considerat „securitate prin obscuritate”. Indiferent de orice tip de certificare guvernamentală, este doar o practică proastă să lași securitatea prin obscuritate să fie baza principală a securității tale. Vedea Principiul lui Kerckhoffs.

Cu toate acestea, este posibil să se încorporeze informații „secrete” ca intrări în hash -- informații pe care atacatorul nu le are.

  • Sare sunt informații suplimentare utilizate ca intrare în hash, dar stocate alături de hash-urile parolei.Deci, dacă un atacator poate obține hash-urile parolei, în general pot obține și sărurile. Sărurile nu-l împiedică pe atacator să încerce ghiciri comune privind parola. Dar ei previn pre-calcul precum tabelele curcubeu --- atacatorul nu poate începe să încerce ghiciri comune de parole până când după invatarea sarii. De asemenea, Salts „personalizează” funcția hash, astfel încât doi utilizatori cu aceeași parolă să nu aibă același are.

  • Piper sunt informații suplimentare utilizate ca intrare în hash, care nu sunt stocate alături de ieșirile hash. Ardeiul este cu adevărat secret, deoarece este posibil să furați hash-urile parolei fără să furați și ardeii. Sistemul de autentificare trebuie configurat pentru a permite piper. Serverul #1 deține hash-urile parolei și colectează parola de la utilizator. Un server separat #2 (în general mult mai blocat din lumea exterioară decât serverul #1) deține ardeiul și calculează hash-ul. Serverul #1 compară apoi hash-ul nou calculat cu hash-ul stocat și ia decizia de a autoriza utilizatorul.

Puncte:1
drapel in

Întrebarea mea este că hackerul poate face asta numai dacă știe cum funcționează funcția hash (folosită de bancă). Evident, el nu poate genera hash-urile parolelor comune dacă nu știe cum funcționează funcția hash folosită de bancă. Atunci de ce este hashingul fără săruri un pericol pentru securitate? Înseamnă asta că toate funcțiile hash funcționează la fel?

Premisa dvs. este greșită, deoarece presupuneți că băncile sunt în siguranță împotriva piratarii și păstrarea hash-urilor parolei de la atacatori. Dacă băncile folosesc vreodată hashing parole fără săruri, atunci gestionarea riscului lor este foarte proastă, trebuie să declanșeze analizatorii de risc.

Deci, atunci când banca folosește hash-uri de parole fără sare este o chestiune de timp ca acestea să fie atacate și aproape toate parolele să fie ușor dezvăluite.

Sperăm că sistemele bancare nu se bazează doar pe parole, deoarece riscul lor este mai mare. De obicei, necesită autentificare cu doi factori, parole unice etc.

Și rețineți că nu folosim hashuri criptografice ca hash-uri pentru parole, deoarece sunt concepute pentru a fi rapide și sigure. Pe de altă parte, hashurile moderne de parole necesită, sare unică și;

  • iterație controlabilă pentru a reduce paralelizarea masivă a atacatorului,
  • memorie mare pentru a reduce utilizarea masivă a mediului de tip ASIC/GPU și
  • fire reglabile pentru a reduce paralelizarea.

Unii algoritmi buni de hashing a parolelor pe care ar putea dori să-i vezi sunt Argon2, Scrypt și Balloon hashing. În cele din urmă, hashingul parolei fără o sare unică nu este recomandat. Dacă sunt folosite, atunci Rainbow Tables sunt monștrii care pândesc pe următoarea stradă...

kelalaka avatar
drapel in
Și, citiți [Cum să hașez parolele în siguranță?](https://security.stackexchange.com/q/211/86735) de pe site-ul nostru venerabil de securitate a informațiilor.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.