Pytanie:
Ponowne używanie haseł, których prawdopodobnie nigdy nie można złamać
user173331
2018-05-20 14:39:38 UTC
view on stackexchange narkive permalink

Ponowne użycie haseł stanowi straszne zagrożenie dla użytkowników, ponieważ w przypadku naruszenia bezpieczeństwa danych, gdy hasła nie są wystarczająco bezpiecznie przechowywane, oznacza to, że domyślnie wszystkie inne usługi, do których używają tego hasła, również są zagrożone. Zazwyczaj w przypadku tych włamań przechowują hasło za pomocą tylko algorytmu haszującego, takiego jak SHA-1, a nawet ostatnio MD5 w niektórych przypadkach (które nigdy nie były przeznaczone do bezpiecznego przechowywania haseł), co ułatwia atakującym brutalne forsowanie haseł za pomocą samego skrótu GPU moc.

Jeśli ktoś miał stworzyć odpowiednio losowe hasło o wystarczającej długości (np. 100+) o bardzo wystarczającej entropii, która jest zmieszana z wieloma typami symboli, liczb i liter; w przypadku, gdy ich komputer nie jest zagrożony w tym sensie, że jest zainstalowany keylogger lub podobny, a wszystkie sesje przeglądania odbywają się przez zaszyfrowany tunel, czy istnieje ryzyko ponownego użycia tego hasła w wielu witrynach internetowych, jeśli może prawdopodobnie nigdy nie zostaną złamani w ciągu swojego życia, jeśli doszło do naruszenia danych w jednej z używanych przez nich usług?

Komentarze nie służą do rozszerzonej dyskusji;ta rozmowa została [przeniesiona do czatu] (https://chat.stackexchange.com/rooms/77955/discussion-on-question-by-azxdreuwa-reusing-passwords-that-can-possably-never-be).
Dwanaście odpowiedzi:
#1
+76
reed
2018-05-20 15:50:14 UTC
view on stackexchange narkive permalink

Nie musisz brutalnie wymuszać skrótu, aby ukraść hasło. Witryna internetowa może zostać przejęta przez atakującego, aby mógł odczytać hasła bezpośrednio z formularza logowania, w postaci zwykłego tekstu. Lub właściciel witryny może to robić, zawsze mógłby to zrobić, gdyby chciał, to od Ciebie zależy, czy ufasz właścicielowi, czy nie (nie chciałbyś używać tego samego hasła na Facebooku i SomeBlackHatCommunity dot com). Poza tym zawsze istnieje stare, dobre surfowanie po ramieniu w celu kradzieży haseł. Hasło jest jak klucz, a używając tego samego hasła, w rzeczywistości dajesz ten sam klucz różnym drzwiom różnym osobom. Widać, że to nigdy nie jest dobry pomysł.

Dlatego nigdy nie należy używać tego samego hasła w różnych miejscach, chyba że to hasło chroni te same dane lub daje takie same uprawnienia, więc na przykład uważam, że możesz użyć tego samego hasła do ochrony swoich kopii zapasowych.

obowiązkowy XKCD https://xkcd.com/792/
„To samo hasło do ochrony kopii zapasowych” Jeśli masz wiele kopii zapasowych, równie dobrze możesz użyć oddzielnych haseł.W przeciwnym razie wszystkie mogłyby zostać naruszone razem, co jest sprzeczne z celem posiadania wielu kopii zapasowych, przynajmniej z punktu widzenia bezpieczeństwa.
Zobacz ostatni przykład: https://twitter.com/twittersupport/status/992132808192634881
@jpaugh, tak, to był przykład, oczywiście wszystko zależy od tego, jak łatwo jest uzyskać dostęp do wszystkich kopii zapasowych i czy prawdopodobne jest wykrycie włamania.Jeśli wszystkie są przechowywane w tym samym miejscu, jest to rzeczywiście problem.
#2
+71
Petro
2018-05-21 04:23:14 UTC
view on stackexchange narkive permalink

TL; DR: Nie muszę odzyskiwać TWOJEGO hasła, po prostu muszę znaleźć ciąg, który generuje ten sam hash, a ponieważ nie kontrolujesz skrótu używanego przez programistę witryny, dopóki wszyscy nie użyją bezpiecznego , to nie pomaga tak bardzo, jak kosztuje. A jeśli szukam Ciebie , hakuję witryny, z których korzystasz, dopóki nie znajdę słabej. Albo używam innej metody.

Odpowiedni XKCD:

https://www.xkcd.com/936/

Ponieważ jeśli nie ma odpowiedniego XKCD wkrótce będzie.

Ponowne użycie haseł stanowi straszne zagrożenie dla użytkowników, ponieważ w przypadku naruszenia bezpieczeństwa danych

Tylko jeśli to hasło chroni coś, co ma znaczenie.

Do ogólnego korzystania z forum internetowego mam pseudonim z własnym adresem e-mail i czterema lub pięcioma hasłami do wszystkiego.

Te hasła nie chronią niczego . Nawet włamanie się do konta e-mail za nimi nie daje nic poza możliwością sprawienia, że ​​mój pseudonim wygląda głupiej, niż już wygląda.

hasła nie są przechowywane wystarczająco bezpiecznie,

Hasło nie jest przechowywane. Wrócimy do tego.

oznacza to, że domyślnie wszystkie inne usługi, do których używają tego hasła, również są przejęte.

Mówiąc dokładniej, powinno to być sformułowane:

... oznacza to, że domyślnie wszystkie inne usługi używające tego adresu e-mail i hasło powinny być uważane za przejęte ORAZ jeśli atakujący zna Twój inny adres e-mail, należy wziąć pod uwagę każde używające tego hasła ...

Tożsamość (w tych celach) to, kim jesteś (adres e-mail) oraz to, co wiesz (hasło).

Jeśli wiem, że jesteś „[email protected]” na somerandomforum.com i wellsfargo.com ORAZ Ty użyj tego samego hasła dla wszystkich trzech, z którymi masz połączenie.

Jeśli jednak używasz adresu „[email protected]” na forach internetowych, [email protected] do użytku „osobistego” i „[email protected]” do użytku profesjonalnego, jest to niezwykle trudne dla algorytmiczny atakujący w celu ich sortowania.

Zazwyczaj w przypadku takich naruszeń hasła przechowują tylko przy użyciu algorytmu haszującego, takiego jak SHA-1, a nawet ostatnio MD5 w niektórych przypadkach

Znam cię wiem o tym i jestem strasznie pedantyczny, ale generalnie nie przechowujemy haseł . Jeśli jest to SHA-1, MD5 lub jakikolwiek inny skrót (w tym słaba, martwa „krypta” lub najnowsza, nieprzerwana kryptowaluta w bloku), nie ma niezawodnej i niezawodnej podróży w obie strony od skrótu do hasła.

NIE MOŻESZ i nie dostaniesz się od eaf4c33ae978d3f2852021214a061534 do "Fred nie żyje". MOŻESZ być w stanie utworzyć dwa lub więcej ciągów o nieokreślonej długości do tego samego skrótu. Możesz generować ciągi, dopóki nie będą pasować. To jest inne i jest to KRYTYCZNA różnica. I to też jest krytyczne.

(które nigdy nie były przeznaczone do bezpiecznego przechowywania haseł), co ułatwia atakującym brutalne forsowanie haseł przy użyciu samej mocy mieszania GPU.

Cóż za kompletna strata czasu i energii elektrycznej, która byłaby DUŻO lepiej wydana na wydobywanie monet $ {WHATEVER}.

Tak czy inaczej, nie rekonstruujesz skrótu, rzucasz ciągami w algorytm, aż otrzymasz dopasowanie

Wstępnie obliczone tabele tęczowe są DUŻO szybsze, gdy przez pięć milionów e-maili: nazwa: hasło krotki właśnie wyodrębniono z BigWebSiteInc, i dostaniesz DUŻO więcej wyników DUŻO szybciej.

I tak, wiem, że procesory graficzne mogą to obliczać naprawdę szybko., ale wyszukiwania są DUŻO szybsze, a ja będę chciał złamać WIELE haseł, nie tylko twoje.

Jeśli chcę TWOICH poświadczeń, mam inne sposoby ich zdobycia i jeśli chcę ich wystarczająco mocno ... tak, prawdopodobnie nie jest to forum, które chce hostować Stack Exchange. Jest wiele aspektów związanych z bezpieczeństwem, a kryptografia chroni tylko niektóre z nich.

Jeśli ktoś miałby stworzyć odpowiednio losowe hasło o wystarczającej długości (np. 100+) o bardzo wystarczającej entropii, która jest mieszana z wieloma rodzajami

Prawdziwa historia. Nieco ponad dziesięć lat temu byłem w rezerwach sił zbrojnych USA i oni mieli (mieli?) System, w którym twój wojskowy dowód tożsamości był częścią twoich danych uwierzytelniających do twojego konta sieciowego. Aby zalogować się do większości ich komputerów, trzeba było włożyć swój wojskowy dowód tożsamości do czytnika kart inteligentnych i wpisać swój „numer PIN”.

W pewnym momencie dostałem nowy dowód osobisty, co wymagało nowego KOŁEK. Poszedłem więc do miejsca wpisywania pinów i włożyłem 10-cyfrowy numer IIRC do klawiatury, a następnie włożyłem go ponownie. Powiedział, że mój PIN się zgadza i poszedłem.

Wróciłem do swojej jednostki i próbowałem się zalogować. Niepowodzenie.

Więc wróciłem. Kilka razy. Byliśmy zdezorientowani. Potem skróciłem PIN i zadziałało.

Był limit 8 lub 9 znaków na PIN (lub cokolwiek. To było $ MY_NUM-2). PIERWSZY system wejściowy po cichu odrzucał dodatkowe numery. Drugi nie był, co prowadziło do niedopasowania. (Lub na odwrót)

ISTR jest trochę rzeczy w pliku Readme SAMBA o wczesnej wersji bazy haseł NT przechowującej hash w dwóch częściach, ponieważ stare rzeczy LANMAN (??) miały tylko 8-znakowe hasła. Nie wiem, jak TO działało.

W każdym razie, czasami przepływ pracy od ekranu wprowadzania do przechowywania haseł będzie miał ograniczoną liczbę znaków, a niektóre nie. Może się to zmienić, gdy różne witryny internetowe zmienią swoje oprogramowanie. Heck, może być inaczej w różnych częściach systemu federacyjnego. Chcesz mieć pewność, że nie przekroczysz ich oczekiwań.

symbole, cyfry i litery; w przypadku, gdy ich komputer nie jest zagrożony w tym sensie, że jest zainstalowany keylogger lub podobny, a wszystkie ich sesje przeglądania odbywają się przez zaszyfrowany tunel, czy istnieje ryzyko ponownego użycia tego hasła w wielu witrynach internetowych, jeśli prawdopodobnie nigdy nie zostać złamane w czasie ich życia, jeśli doszło do naruszenia danych w jednej z usług, z których korzystają?

Szczerze mówiąc, dla aplikacji o wysokim poziomie bezpieczeństwa (np. ochrona kluczy SSH itp.) Używam pierwszych kilku zwrotek z kilka dobrze zapamiętanych piosenek. Przynajmniej jeden z nich ma przypadkowy błąd w pisowni, który został trwale utrwalony w mojej brane.

Chodzi o to, że jeśli patrzę na identyfikator: pw hash w magazynie haseł (plik, baza danych, cokolwiek), CHCĘ najłatwiej złamać, co mogę. Nie chcę faceta, który używa jakiegoś silnego magazynu kluczy i ma inne hasło do każdej innej witryny, chcę tylko nisko wiszącego owocu. To one najczęściej wykorzystują hasła ponownie.

Więc tak, to sprawia, że ​​twoje hasło jest bezpieczniejsze, modulo kilka rzeczy.

Nie możesz wybrać skrótu używanego na drugim końcu i tak długo, jak ludzie używają „zepsutych” skrótów (md5, SHA-1 itp.) możesz uzyskać więcej niż jeden ciąg pasujący do skrótu. I tak długo, jak długo jedna z witryn internetowych nadal przechowuje hasła w złym skrócie, jesteś narażony na atak.

Dlatego właśnie byłem pedantyczny. Nie przechowujemy haseł, przechowujemy hash hasła i nie muszę odzyskiwać TWOJEGO hasła, po prostu muszę znaleźć ciąg, który generuje ten sam hash.

Może się zdarzyć, że Twój 100-znakowy ciąg znaków utworzony na wyjściu najlepszego wybielonego generatora liczb losowych tak się po prostu dzieje , aby dopasować skrót „Fred nie żyje”, a wtedy Stracony.

To na tym, że ktoś umieszcza kamerę w miejscu, w którym może oglądać, jak piszesz, przeprowadzając atak MITM na twoją sesję SSL (czyli około połowy dużych korporacji, w których pracowałem przez ostatnie kilka lat - robią to na ich serwer proxy do wykonywania DLP), włamując się do witryny w celu umieszczenia dodatkowego kodu na stronie logowania lub jednego z kilkunastu innych hacków.

Albo po prostu przyklęknąć pistoletem na kolano. Albo bardziej makabryczne metody.

Używanie wyrzuconych haseł do wyrzucania danych, wielu „tożsamości” online i niektórych wystarczająco bezpiecznych magazynów kluczy do ważnych rzeczy jest prawdopodobnie najlepszym rozwiązaniem. To rodzaj „obrony w głębi” i jest to dość łatwe do wykonania (do diabła, mogę to zrobić, to nie może być takie trudne).

Aby zająć się czymś, co @IMSoP przedstawia jako komentarz.

Rzeczywisty przechowywany hash to zwykle hasło + hash, więc jest mało prawdopodobne, aby twoje ulubione niezabezpieczone forum internetowe i twój bank używały tego samego algorytmu haszującego i soli. Mogą, ale mało prawdopodobne.

Jednak drugorzędną kwestią jest to, że w przypadku DOWOLNEJ witryny używającej niezabezpieczonego skrótu - a to DUŻO z nich (patrz Kolejna prawdziwa historia poniżej) atakujący może pobrać ciąg, który haszuje to, co jest przechowywane, a następnie wchodzić w interakcję z tą witryną jako Ty.

To prowadzi do problemu „ponownego użycia hasła”, ale rozwiązuje problem z bardzo długimi hasłami. To jest jak w ... hm ... innych dziedzinach życia. Pewna ilość jest dobra, więcej znaczy lepiej, ale za dużo spowoduje problemy.

Jeśli chodzi o stosowanie „niezabezpieczonych” skrótów, firmy zwykle najbardziej martwią się procesami sądowymi, a po drugie reklamą, a na końcu prawdziwym bezpieczeństwem. Mój znajomy ma patent na dość bezpieczny mechanizm przechowywania, który znacznie zwiększyłby bezpieczeństwo między innymi laptopów i komputerów stacjonarnych. Próbował zaangażować w to kilka dużych firm i każda z nich, do której się zwrócił, wskazywała to samo - że ich obecne zabezpieczenia spełniają zarówno „powszechne praktyki branżowe”, jak i normy prawne, więc nie są zainteresowani żadnymi innymi wydatkami. . Ich zdaniem są one „dowodami procesowymi” iz tego powodu znacznie mniej przejmują się rozgłosem.

Właśnie dlatego banki zdecydowały, że zadawanie głupich pytań to „uwierzytelnianie trójczynnikowe” i inne wyraźnie wątpliwe praktyki dotyczące bezpieczeństwa.

Oznacza to, że ich algorytmy haszujące są tym, co jest dostarczane z systemem operacyjnym podczas instalacji . Ponieważ jest to „powszechna praktyka branżowa”.

16- lub 20-znakowe hasło przechowywane w narzędziu do bezpiecznego tworzenia haseł jest tak samo dobre, jak 100-znakowe hasło w tych warunkach .

Aby to zawinąć, nie jestem przeciwnikiem ponownego użycia haseł, jak niektórzy tutaj - mam kilka komputerów domowych, na których mam to samo hasło (i kilka innych), ale nigdy nie powielać niektórych z nich (moich osobistych, zawodowych i służbowych kont e-mail, haseł bankowych itp.). Po prostu nie warto ryzykować.

Metoda wspomniana w przedostatnim akapicie jest czasami nazywana „deszyfrowaniem gumowym wężem”.I oczywiście jest do tego xkcd: https://xkcd.com/538/
To jedna z najłatwiejszych do przyswojenia i dokładnych odpowiedzi, jakie tutaj przeczytałem.Nie nauczyłem się z tego niczego nowego, ale czuję, że lepiej rozumiem te same informacje.
Jestem tu pedantyczny - jeśli wygooglujesz `eaf4c33ae978d3f2852021214a061534`, zostaniesz przekierowany na to pytanie, dzięki któremu możesz dość łatwo zobaczyć, jak mapuje się na" Fred nie żyje ".
`tak długo, jak ludzie używają" zepsutych "hashów (md5, SHA-1 itp.), możesz uzyskać więcej niż jeden ciąg pasujący do hasha.` Prawda, ale zbyt ograniczona.Niezbędną właściwością skrótów o stałej długości jest to, że wiele danych wejściowych będzie mapowanych na każdy skrót.Twoje stwierdzenie jest prawdziwe dla każdego algorytmu skrótu o stałej długości, a nie tylko tych „zepsutych”.
„nie przechowujemy haseł” - to jednak nie do końca prawda.Bardziej trafne jest stwierdzenie „* nie powinniśmy * przechowywać haseł” lub „miejsca, które używają nawet niewielkiej ilości zabezpieczeń, nie przechowują haseł”.Wiele razy klikałem „zapomniałem hasła” tylko po to, aby usługa z pomocą wysłała moje hasło w postaci zwykłego tekstu na mój adres e-mail.I tak po prostu wiem, że hasło nigdy nie jest bezpieczne, nigdzie, w żadnej usłudze.
@David Rice Niezły policjant.
@DavidRice _ "miejsca używające nawet niewielkiej ilości zabezpieczeń nie przechowują haseł" _ Nawet na tym założeniu nie można polegać.Twitter jest zwykle wystarczająco odpowiedzialny za użycie bcrypt do haszowania swoich haseł, ale błąd w procesie logowania spowodował, że wszystkie te hasła były przechowywane w postaci zwykłego tekstu, bez względu na to, że ich użytkownicy nie wiedzą, że stało się to przed ich ostatnim i publicznym mea culpa.
Nie wiem, dlaczego tak bardzo się za tym opowiadano.Tyle błędnych informacji.Tęczowe tablice są bezużyteczne w walce z solami, więc atakujący * absolutnie * zamierzają używać GPU do atakowania skrótów i uzyskiwania znacznie lepszych wyników w większości przypadków.Włamania na konta e-mail to nie „nic”, pozwalają one * zresetować hasło * na dowolnym koncie korzystającym z tego adresu e-mail, bez względu na to, jak silny.E-mail jest „kluczem do królestwa” i zasługuje na BARDZO silne hasło.Adres e-mail * nie * to „czym jesteś”, * nie * jest tajemnicą, a wiedza o tym, który adres jest powiązany z hasłem, * nie * powinna być traktowana jako część zabezpieczenia konta.
Kontynuacja: kilka pierwszych zwrotek popularnej piosenki * nie * jest dobrym hasłem.Atakujący użyli już popowych piosenek, wersetów biblijnych, cytatów z Wikipedii itp. Łatwe błędy ortograficzne i podstawianie znaków można sobie poradzić za pomocą reguł transformacji.Jest lepsze niż „password123” z długiej perspektywy (tak dobre dla ciebie), ale porównujesz je do 100-znakowego losowo generowanego hasła.Teksty piosenek nie są nawet bliskie tej sile.I mówisz o kolizjach hash, które są * nieistotne * dla długości hasła, a także inne niepowiązane rzeczy, które po prostu mylą problem.
Jeśli chodzi o e-mail jako „kim jesteś”, miałem niewyrażone założenie, że ogólnie „adres e-mail” jest używany jako Twoja tożsamość przez wiele witryn / miejsc.Uwierzytelnianie trójczynnikowe to „Coś, czym jesteś, coś, co wiesz, coś, co masz” - co oznacza identyfikator użytkownika, hasło, token (wiele miejsc to schrzanić).W tym sensie adres e-mail jest serwerem proxy dla „Coś, czym jesteś”. Gdzie mam powiedzieć, że przejęcie poczty elektronicznej to nic?Jak wskazano, mam (przynajmniej) 4 konta e-mail z różnymi hasłami, których * NIE MOŻESZ UŻYWAĆ PONOWNIE *
Nigdy też nie powiedziałem „piosenki pop”.Jeśli używają 20 do 40 znaków z każdej piosenki punkowej sprzedanej w latach 80-tych ... To są duże bazy danych $$.I nigdy nie powiedziałem, że to było tak dobre, jak ciąg 100 znaków.Cały * punkt * polega na tym, że 100-znakowy ciąg nie zapewnia bezpieczeństwa i nie dodaje * dużo * bezpieczeństwa w stosunku do ciągu od 16 do 20 znaków.Używam piosenek do ochrony moich kluczy .ssh lub zaszyfrowanych plików gpg.Lub Keepass.Potrzebujesz długiego hasła i nie ma gdzie go przechowywać.W Keepass zwykle używam innego, losowo utworzonego ciągu do wszystkiego.Ale nie 100 znaków.
#3
+18
Mark
2018-05-21 01:08:10 UTC
view on stackexchange narkive permalink

Zwykle witryna używa słabej funkcji mieszania do przechowywania haseł, ale czy chcesz powiedzieć, że żadna z używanych przez Ciebie witryn nie będzie przechowywać hasła przy użyciu szyfrowania lub, co gorsza, w postaci zwykłego tekstu?

Używając ponownie hasła, Twoje bezpieczeństwo jest tylko tak silne, jak w przypadku najsłabszej witryny, w której go używasz. Nie ma znaczenia, jak długie lub skomplikowane jest Twoje hasło, jeśli osoba atakująca może po prostu odczytać je z dziennika zmian haseł źle zaprojektowanego serwera.

Mój bank (w Niemczech) dopuszcza tylko hasła składające się z dokładnie 5 cyfr.Przynajmniej konto zostaje zablokowane po trzech fałszywych wpisach, ale nadal nie daje mi to zbytniej pewności co do ich systemów IT i przeglądów bezpieczeństwa, które przeszli.
Chociaż przechowywanie haseł w postaci zwykłego tekstu stało się (na szczęście!) Rzadkością, praktycznie 100% witryn internetowych używa uwierzytelniania w postaci zwykłego tekstu.
@el.pescado Co to ma znaczyć?Jeśli przechowywane hasło nie jest zwykłym tekstem, samo uwierzytelnienie również nie może być zwykłym tekstem.Czy nie rozumiem?
Uwierzytelniasz się, wysyłając swoje hasło w postaci zwykłego tekstu (miejmy nadzieję, że przez bezpieczny kanał).Następnie serwer odczytuje twoje hasło, oblicza skrót tego hasła, a następnie porównuje wynikowy hash z hashem referencyjnym przechowywanym gdzieś.W ten sposób serwer przez chwilę jest w posiadaniu hasła w postaci zwykłego tekstu.Porównaj to z np.Uwierzytelnianie Digest (np. Digest-MD5) i / lub schematy Challenge-Response (np. CRAM-MD5)
@el.pescado Więcej niż „chwila”.Jedną z rzeczy, które sprawiły, że Heartbleed było tak złe, było to, że ujawnił w pamięci takie, odszyfrowane informacje dla ram czasowych na tyle długo, aby można było je odzyskać.Ale z wyjątkiem nowych luk w zabezpieczeniach, takich jak Heartbleed lub korzystania z niezaszyfrowanych połączeń, jedynym sposobem na uzyskanie tych informacji jest złamanie zabezpieczeń samej maszyny, a na tym etapie i tak przegrałeś.Nie jestem też przekonany, że przechowywanie haseł w postaci zwykłego tekstu jest * tak * rzadkie.
#4
+11
Chris H
2018-05-21 13:38:00 UTC
view on stackexchange narkive permalink

Zakładasz idealny system z

w przypadku, gdy ich komputer nie jest zagrożony w tym sensie, że jest zainstalowany keylogger lub podobny, a wszystkie ich sesje przeglądania są wykonywane przez zaszyfrowany tunel,

lub przynajmniej zakładam, że tak - lepiej żeby zaszyfrowany tunel był dobry.

Ale nie masz kontroli nad serwerem przechowującym twoje hasło . Nawet firmy, które powinny wiedzieć lepiej, spieprzyły ostatnio swój system haseł: GitHub i Twitter mają zarówno wewnętrznie rejestrowane, jak i buforowane hasła w postaci zwykłego tekstu.

Nie ma też zaleta - nigdy nie zapamiętasz tego hasła, więc przechowujesz je w menedżerze haseł. W tym momencie możesz równie dobrze używać unikalnych haseł (które są krótsze na wypadek, gdybyś musiał je wpisać ponownie).

#5
+7
BeloumiX
2018-05-20 16:09:12 UTC
view on stackexchange narkive permalink

Na stronach internetowych można znaleźć różne rozwiązania do haszowania haseł: funkcje trudne do pamięci, takie jak Argon2 lub Scrypt, podatne na ataki na niestandardowy sprzęt, ale przynajmniej funkcje zasolone, takie jak PBKDF2, proste funkcje mieszania bez soli i czynnika pracy oraz - niestety nie tak rzadkie - również przechowywanie lub przesyłanie haseł w postaci zwykłego tekstu.

Po złamaniu hasła może pojawić się na listach haseł używanych do atakowania innych witryn internetowych, więc problem z ponownym użyciem haseł polega na tym, że bezpieczeństwo jest ustalane przez najsłabszą funkcję i jeśli gdzieś jest miejsce do przechowywania zwykłego tekstu, poziom bezpieczeństwa spadł do zera, nawet dla faktycznie bezpiecznych haseł.

#6
+7
Micheal Johnson
2018-05-22 01:26:31 UTC
view on stackexchange narkive permalink

Ponowne użycie haseł wiąże się z ryzykiem, nawet jeśli jest ono bardzo silne. Jeśli witryna, która przechowuje hasła w postaci zwykłego tekstu, zostanie naruszona, Twoje silne hasło będzie dostępne dla atakujących bez konieczności brutalnego wymuszania skrótów. Innymi słowy, jeśli używasz bardzo silnego hasła w witrynie, która przechowuje hasła w postaci zwykłego tekstu, siła hasła nic nie daje.

Niestety wiele witryn przechowuje hasła w postaci zwykłego tekstu i nie zawsze jest to natychmiastowe. oczywiste, czy strona internetowa to robi. Dlatego ponowne użycie bardzo silnego hasła nie jest bezpieczne przy założeniu, że hash nie zostanie wymuszony brutalnie, ponieważ nadal może być przechowywany (i naruszany) w postaci zwykłego tekstu.

#7
+5
Matthew1471
2018-05-21 15:56:45 UTC
view on stackexchange narkive permalink

TL; DR : Łamanie haseł to nie jedyny aspekt bezpieczeństwa związany z ponownym użyciem haseł. Udostępnianie hasła wielu witrynom oznacza, że ​​jeśli są jakieś problemy z innymi witrynami / komputerem / siecią, oprócz haseł, które można złamać, nadal jesteś zagrożony.

Kilka świetnych odpowiedzi już tutaj, ale tylko po to, aby dodać kilka dodatkowych uwag i podsumowanie.

Twoje pytanie zakłada wiele stwierdzeń, nad którymi większość ludzi nie będzie miała kontroli:

ich maszyna nie jest zagrożona w tym sensie, że jest zainstalowany keylogger itp.

Nie zapomnij też o zabezpieczeniach sieci, czy twój zaszyfrowany tunel potwierdza, że ​​nie jest to MITMd? A co z problemami z protokołem HTTPS, zagrożonym urzędem certyfikacji? Inny scenariusz w stylu HEARTBLEED, w którym cały ruch do witryny został przejęty z powodu włamania do certyfikatu? Również gdybym teraz napisał keyloggera, to chyba, że ​​nie ma dużej liczby infekcji, niekoniecznie będziesz w stanie go wykryć. Czy logujesz się na innych maszynach, z których korzystali inni? Czy pozwalasz innym osobom korzystać z Twoich maszyn? A co z urządzeniami mobilnymi? Czy regularnie aktualizujesz komputer? A co, jeśli zobaczę, jak wpisujesz swoje hasło w miejscu publicznym, w którym jest CCTV? Keylogger sprzętowy? Atak zła pokojówka?

..Myślę, że to wszystko duże założenie ...

czy istnieje ryzyko ponownego użycia tego hasła w wielu witrynach internetowych, jeśli nigdy nie zostać złamane w czasie ich życia, jeśli doszło do naruszenia danych w jednej z usług, z których korzystają?

Niedawno ujawniono, że chociaż Twitter może bezpiecznie przechowywać hasła, ich funkcja logowania wyciekała. Musisz także wykluczyć kilka innych słabych punktów związanych z implementacją w całej implementacji witryny.

Wspominasz o tym we wstępie o niezabezpieczonych witrynach, więc zakładam, że zakładasz również, że wszystkie witryny, w których będziesz używać tego hasła, znasz , również zabezpieczają hasło w bezpieczny sposób. W przypadku większości witryn, z których korzystam online, skąd mam to wiedzieć ? Nie zrobię tego, a nawet jeśli powiedzą , że bezpiecznie szyfrują hasła, nie ma gwarancji, że to zrobią.

Używaj różnych haseł do różnych witryn. Użyj menedżera haseł, KeePass jest całkiem niezły :-).

#8
+4
Mark Z
2018-05-22 07:56:14 UTC
view on stackexchange narkive permalink

Zakładasz, że żadna z odwiedzanych przez nich witryn nie jest wroga. Jeśli zarejestruję się na stronie i podam im swój adres e-mail i użyję tego samego hasła do tej witryny, co do mojego adresu e-mail, będą mogli zalogować się na mój adres e-mail.

Coś, co Mark Zuckerberg przyznaje, kiedy uruchomienie Facebooka.

#9
+3
Luis Casillas
2018-05-22 02:48:04 UTC
view on stackexchange narkive permalink

Jeśli ktoś miał stworzyć odpowiednio losowe hasło o wystarczającej długości (np. 100+) o bardzo wystarczającej entropii, która jest zmieszana z wieloma typami symboli, liczb i liter; w przypadku, gdy ich komputer nie jest zagrożony w tym sensie, że jest zainstalowany keylogger lub podobny, a wszystkie ich sesje przeglądania odbywają się przez zaszyfrowany tunel, czy istnieje ryzyko ponownego użycia tego hasła w wielu witrynach internetowych, jeśli prawdopodobnie nigdy nie zostać złamane w czasie ich życia, jeśli doszło do naruszenia danych w jednej z używanych przez nich usług?

Jest z tym kilka problemów. Po pierwsze, hasła, które sugerujesz, są o wiele za długie. Istnieje około 2 ^ 6,6 drukowalnych znaków ASCII. Jednolite, losowe hasło o długości 20 znaków jest zatem wystarczające dla 128-bitowego zabezpieczenia, a 39 znaków wystarcza na 256 bitów. Silne hasła mogą prawdopodobnie dostać się na terytorium ponad 100 znaków, ale ich siła ma niewiele wspólnego z liczbą symboli lub liter.

Drugim i większym problemem jest to, że niepotrzebnie pokładasz zaufanie w implementatorach witryny . Jeśli żadna ze stron nigdy nie zawiera błędu umożliwiającego atakującemu odzyskanie hasła, wtedy tak, ponowne użycie hasło. Problem polega na tym, że jest to ogromne „jeśli”. Nawet w przypadku witryny internetowej, która zaprojektowała dobry system przechowywania haseł, bardzo łatwo jest je przypadkowo ujawnić. Rozważ ten niedawny incydent na Twitterze (z początku tego miesiąca):

W dniu dzisiejszym Twitter wysłał alert do użytkowników, zachęcając ich do zmiany haseł po odkryciu, że niektórzy użytkownicy „hasła zostały zapisane w postaci zwykłego tekstu w pliku dziennika dostępnym tylko dla pracowników Twittera.

[...] Ale z powodu błędu w kodowaniu, wyjaśnił Agrawal, „hasła były zapisywane w wewnętrznym dzienniku przed zakończeniem procesu haszowania. Sami znaleźliśmy ten błąd, usunęliśmy hasła i wdrażamy plany zapobiegania temu błędowi przed powtórzeniem się. ”

Dla programisty jest to bardzo łatwy błąd; po prostu wrzucasz wiersz log (LogLevel.DEBUG, "loginRecord = {}", loginRecord) lub podobny do swojego programu, a ktoś inny niechcący włącza logowanie debugowania w środowisku produkcyjnym. Teraz pomnóż to przez tysiące programistów w ciągu tysięcy dni na dziesiątkach stron internetowych, a kości są bardzo przeciwko tobie. Nie używaj ponownie haseł. I używaj menedżera haseł.

#10
+2
Monty Harder
2018-05-21 21:27:05 UTC
view on stackexchange narkive permalink

Modyfikuj oryginalny pomysł

Modyfikacja pomysłu może być jednak całkiem bezpieczna. Załóżmy, że generujesz 64 losowe bajty danych, a następnie zapisujesz je w pliku. Następnie wybierasz „Hasło główne”, którego nigdy nikomu nie podajesz, a następnie używasz tego hasła, zapisanego pliku i nazwy witryny do wygenerowania hasła specyficznego dla witryny:

(echo super-tajne-hasło; cat test-rand; echo amazon.com) | suma md5 | sed 's /. * $ //' | xxd -r -p | base64

Powyższa linia poleceń zawsze będzie generować hasło Tj02tXSPT + cQvN + 79QqtjA == z określonego losowego pliku, który utworzyłem, ale jeśli zmienię amazon na google , zamiast tego wygeneruje oX9uOqM0 / wUaNzUlTMUcfg == .

Jeśli niepoprawnie wpiszę hasło główne, otrzymam coś zupełnie innego na wyjściu, ale o ile wstawię je poprawnie , Zawsze otrzymuję te same dane wyjściowe dla tej samej witryny, ale różne dane wyjściowe dla każdej innej witryny. Teraz nikt nie ma „pliku kluczy” i hasła głównego (rodzaj uwierzytelniania dwuskładnikowego) potrzebnych do wygenerowania haseł specyficznych dla witryny. Jeśli amazon zostanie przejęty, moje hasło Google nie jest. Każde hasło zawiera 128 bitów losowości, co powinno wystarczyć do wszystkiego.

Ale co się stanie, jeśli z jakiegoś powodu musisz zmienić hasło do jednej witryny?Jeśli zmienisz hasło główne lub losowy plik, otrzymasz różne hasła do wszystkich witryn internetowych.Jest to więc bardzo ciekawy pomysł, ale nie może pokonać wygody menedżera haseł.
Gratulacje, wymyśliłeś podstawowy menedżer haseł!Teraz możesz zacząć dodawać funkcje i mieć nadzieję, że niczego nie zepsujesz ... lub po prostu użyj istniejącej.
@Ben Różnica między tym a menedżerem haseł polega na tym, że nie musi on przechowywać haseł specyficznych dla witryny.Dostosowanie się do zmiany haseł, jak sugeruje reed, wymagałoby śledzenia pewnego rodzaju licznika przyrostów dla każdej witryny, który byłby dołączony do pozostałych trzech elementów, aby hasło do amazon.com można było zmienić na amazon.com-2.A jeśli musisz to zapisać, równie dobrze możesz po prostu zaszyfrować rzeczywiste hasło i zamiast tego je przechowywać.
#11
+2
Tom
2018-05-24 14:06:35 UTC
view on stackexchange narkive permalink

Ponowne użycie hasła jest zawsze oceną ryzyka. W praktyce ponowne użycie hasła jest faktem, a pytanie brzmi, gdzie użyć jakiego zestawu.

Jednak prawdziwa odpowiedź na Twoje pytanie jest taka, że ​​istnieje wiele sposobów na złamanie hasła i użycie siły. jest właściwie najmniej prawdopodobnym. Istnieją sniffery, keyloggery, MitM, skompromitowane serwery, różne formy XSS i inne ataki internetowe, surfowanie po ramionach i prawdopodobnie kilkanaście innych sposobów na hasło, a dla wielu z nich złożoność lub długość hasła nie ma znaczenia.

#12
+1
ddyer
2018-05-21 05:35:37 UTC
view on stackexchange narkive permalink

Istnieje wiele sposobów złamania hasła. Używanie haseł niemożliwych do złamania w najlepszym przypadku nie zmniejsza ryzyka kompromisu w inny sposób. W rzeczywistości pogarsza inne słabości.



To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 4.0, w ramach której jest rozpowszechniana.
Loading...