Puncte:1

Sarea poate fi derivată pe baza celorlalte componente ale datelor criptate?

drapel at

Folosesc Fernetul python.cryptography cu hashing al frazei de acces PBKDF2 pentru a cripta o bucată de date (valoarea) care este stocată, criptată, într-o bază de date. Fraza de acces cu hash este nu stocate în baza de date și, din acest motiv, nici sarea nu este. În schimb, sarea provine dintr-un seif de parole din mediul de rulare al aplicației și apoi modificat pentru a-l face unic pe valoare.

O întrebare pe care o am despre aceasta este: dacă un atacator are o frază de acces și date criptate pentru o singură valoare, este posibil ca acesta să facă o inginerie inversă a sarii (ceea ce l-ar ajuta să forțeze brute datele rămase)? Ce se întâmplă dacă au și o copie a versiunii necriptate a datelor pentru acea valoare?

(Vectorul de atac luat în considerare aici este unul în care atacatorul are un cont de utilizator obișnuit în sistem și a obținut o copie a bazei de date cu valorile criptate. Astfel, ei pot crea o singură valoare (a lor) unde știu fraza de acces și valoarea criptată rezultată. De asemenea, au acces la o copie a codului aplicației, deoarece este open source.)

La cerere, iată cum este tratată sarea:

  1. Sarea este generată de un administrator (recomandăm o valoare aleatorie de 32 de octeți).
  2. Sarea este stocată în seiful de parole (serviciu de rețea)
  3. Când aplicația este implementată, sarea este injectată în timpul execuției
  4. Când sunt salvate valori noi, sarea secretă este combinată cu un ID de valoare unic pentru a forma sarea pe valoare
  5. Această sare este apoi utilizată cu fraza de acces furnizată de utilizator pentru a genera o cheie folosind PBKDF2 (cu iterații de 500K).
  6. Valorile utilizatorului sunt apoi criptate fiecare cu cheile lor individuale

Cred că cele de mai sus sunt cunoscute ca modelul „sare și piper”.

kelalaka avatar
drapel in
Dacă atacatorul are expresia de acces, nu o pot folosi pentru a accesa sarea? Aceasta pare mai degrabă o întrebare de securitate a informațiilor...
FuzzyChef avatar
drapel at
@kelalaka asta este întrebarea mea, dacă atacatorul are expresia de acces, o pot folosi pentru a-și da seama de sare?
kelalaka avatar
drapel in
Nu, întreb că interfața nu le permite să folosească sistemul ca de obicei când atacatorii au primit fraza de acces? De ce altceva are nevoie un utilizator pentru a-și accesa datele, în afară de informațiile despre numele de conectare?
FuzzyChef avatar
drapel at
Presupunem aici că ceea ce ataca atacatorul încearcă să obțină sunt frazele de acces ale altor persoane (și, prin urmare, datele acestora). Nu o au deja.
FuzzyChef avatar
drapel at
Sarea nu face parte din date.
drapel kr
@FuzzyChef: Folosiți o formulare greșită. Sarea este o adăugare **cunoscută public** la parolă pentru a preveni precalcularea acesteia. Dacă considerați unele date ca fiind secrete, aceasta este **parolă**. Înseamnă, ceea ce te referi ca *sare*, nu este sare, ci un al doilea cuvânt. Astfel ai schema cu doua parole. Vă rugăm să vă rescrieți întrebarea folosind cuvintele *"prima parolă"* și *"a doua parolă"*.
kelalaka avatar
drapel in
Prima regulă; sarea nu se presupune a fi secretă! Nu stabilim securitatea secretului sării, mai degrabă forțăm/învățăm utilizatorii să aleagă parole bune de utilizat. Ați putea detalia cum este creată, modificată și recreată/accesată sarea? Ce se întâmplă dacă bolta ta se zdrobește și toată sarea ta dispare pentru totdeauna? Aveți un plan de atenuare a unui astfel de risc catastrofal?
Swashbuckler avatar
drapel mc
Cum a fost creată sarea înainte de a o pune într-un seif?
FuzzyChef avatar
drapel at
@kelalaka dacă se pierde sarea, este acceptabil să se piardă accesul la date. Datele sunt relevante doar pentru o perioadă scurtă de timp, indiferent (aproximativ 1 lună), așa că se consideră mai acceptabil să le pierzi decât pentru a risca să le compromiți.
FuzzyChef avatar
drapel at
Dar... vrei să spui că nu există niciun avantaj de securitate în păstrarea secretului sării? Pentru că, dacă da, nu prea am nevoie de răspunsul la întrebarea de mai sus.

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.