Karanie użytkowników za niepewne hasła [zamknięte]

13

Zastanawiam się nad ograniczeniem praw użytkowników, którzy wybierają niebezpieczne hasła (niepewność hasła zależy od długości, liczby używanych znaków (wielkie / małe litery, cyfry, symbole itp.) I czy można znajduje się w tęczowej tabeli), aby ograniczyć szkody, które ich konto może wyrządzić, jeśli zostanie przejęte.

Nie mam jeszcze aplikacji na ten pomysł, ale mówię, że piszę forum lub coś takiego: użytkownicy, którzy używają hasła 1234 jako hasła, mogą być zmuszeni do wypełnienia captcha przed opublikowaniem lub podlegać rygorystycznym środkom antyspamowym, takim jak jako limity czasu lub filtry bayesowskie odrzucające ich treść. Jeśli to forum jest bardzo zhierarchizowane, co umożliwia „promocję” moderatorom lub cokolwiek w jakiś sposób, to albo powstrzyma ich przed uzyskaniem przywilejów, albo powie im, że mają przywileje, ale nie pozwoli im korzystać z nich bez zmiany na bezpieczniejsze hasło.

Oczywiście nie może to być jedyna miara bezpieczeństwa, ale może pójść dobrze obok dobrych praktyk bezpieczeństwa.

Co myślisz? Czy to po prostu przesadza, kradnie nacisk na ważniejsze praktyki bezpieczeństwa, czy jest to dobry sposób na ograniczenie ryzyka i zachęcenie użytkowników do korzystania z bezpieczniejszych haseł (i mam nadzieję, że przekonają osoby, które stosują dobre praktyki bezpieczeństwa)?

Carson Myers
źródło
24
Jaka jest z tego korzyść, gdy można już ograniczyć użytkownikom z niewłaściwymi hasłami dostęp do systemu w ogóle?
Pete,
12
Większość ludzi prawdopodobnie nadal będzie używać „letmein” niezależnie od ograniczeń, jakie na nich nakładasz. Wymuszaj reguły haseł podczas tworzenia / zmiany hasła lub nie.
John Straka,
3
@Carson Myers: Nie, jeśli zrobisz to z kabla Cat6, to nie jest: D
Piskvor opuścił budynek
13
Po pierwsze, użytkownicy czego? Mam dość stron internetowych, które wymagają zalogowania się, aby zobaczyć obraz opublikowany na forum, a następnie hasła należy składać z 10 znaków z cyframi i znakami specjalnymi oraz BEZ podkreśleń i cyfry 1. Ustaw wymagania dotyczące hasła proporcjonalnie do wartości chronionych danych.
SF.
6
Na Florydzie ludzie, którzy spóźnili się z płaceniem rachunków za telewizję kablową, czasami ograniczali się do jednego kanału. CSPAN. To działało dla nich. <shrug>
Mike Sherrill „Cat Recall”

Odpowiedzi:

35

YAGNI , KISS , DRY , zasada 10 sekund i fakt, że „nie zależy na Tobie” powinno prawdopodobnie zawęzić to do jednego rozwiązania: Nie.

  • To więcej prac programistycznych, które wymagałyby wielu testów, aby były niezawodne i bezpieczne.
  • Prawdopodobnie zmniejsza to bezpieczeństwo witryny w dowolny sposób. Szansa, że ​​jakiś błąd prowadzący do eskalacji uprawnień ze strasznym hasłem jest po prostu zbyt duży.
  • Zwiększa złożoność programisty, testera, opiekuna, DBA, sysadmin i użytkownika.
  • Im większa złożoność, tym trudniej jest w jakiś sposób uniknąć powtarzania się.
  • Użytkownicy nie skupiają uwagi na czytaniu twoich informacji i podejmowaniu dalszych działań. Służą do ulepszania formularza rejestracyjnego, dopóki nie zaakceptuje danych wejściowych, a nie do osiągnięcia idealnego poziomu.
  • Użytkownicy nie dbają o to.
l0b0
źródło
wszystkie mocne strony, z wyjątkiem może SUCHEGO. Dlaczego SUCHY? Także, to nie musi być to skomplikowane, cała „awans do mod” etc to tylko kilka dodatkowych przykładów. Ponieważ większość stron internetowych już wykrywa niepewne hasła, a wiele popularnych platform (Wordpress przychodzi na myśl) pozwala już na rejestrację z niepewnymi hasłami, czy dodanie captchas dla tych użytkowników budzi wszystkie te obawy? Może to być denerwujące, ale inne alternatywy to całkowicie odwrócić użytkowników lub pozwolić im wejść i zaryzykować więcej spamu. Na przykład.
Carson Myers,
3
+1 Aby użyć linku. Dobra strona jest dobra. Jak na ironię brzydka dla strony UI / UX.
StuperUser
4
+1 dla użytkowników nie dba o ciebie. Jeśli jest to głupia strona z blogami / pytaniami i pytaniami i muszę zapamiętać złożoną nazwę użytkownika / kombinację pwd, po prostu jej nie użyję.
ElGringoGrande
@ElGringoGrande Niekoniecznie proponuję to dla czegoś głupiego, a raczej jako środek pomiędzy „zezwól na wszystkie hasła” i „odrzuć wszystkie złe hasła”, gdzie jest wiele witryn wykorzystujących każdą metodę. Nie wygląda to jednak dobrze, haha
Carson Myers,
13

Wymuś bezpieczne hasło przy zmianie rejestracji lub użyj OpenId (Jeff Atwood's 2c: http://www.codinghorror.com/blog/2010/11/your-internet-drivers-license.html ). Następnie skoncentruj się na ciekawszej funkcjonalności.

Po pierwsze, użytkownicy są przyzwyczajeni do tworzenia bezpiecznych haseł lub korzystania z OpenId, więc jest to dla nich proste.

StuperUser
źródło
Zgadzam się, że OpenId świetnie nadaje się do tego rodzaju rzeczy, ale myślę, że możesz być stronniczy, sądząc, że większość użytkowników jest przyzwyczajona do którejkolwiek z tych rzeczy. Większość ludzi, których znam nigdy nie słyszał o OpenId, a nawet bardziej niebezpieczne używać haseł
Carson Myers
1
Słuszna uwaga. Nie korzystałem z OpenId przed SE, ale miałem odrzucone hasła z powodu braku złożoności. Jeśli chodzi o zachowanie czegoś prostego i bezpiecznego, bezpieczeństwo jest najważniejsze, nawet jeśli odpowiedzialność za edukację użytkowników spoczywa na tobie. Będziesz musiał poświęcić wysiłek na edukację ich na temat ich obowiązków w oparciu o złożoność haseł, wydaje się, że lepiej jest używać go do edukowania ich w zakresie bezpieczeństwa / promowania wspólnego logowania.
StuperUser
wspólny login jest idealny, ale jeśli aplikacja nie ma charakteru technicznego, spora część użytkowników zdecyduje się po prostu użyć tego samego hasła (lub odejść, jeśli nie jest dostępne). W moim przykładzie zastanawiam się, czy powinno to sprowadzać się do odrzucenia użytkowników (poprzez odrzucenie ich hasła), czy też do zapewnienia im wrażeń wizualnych (nie możemy ci na to pozwolić, ponieważ nie wiemy, czy twoje złe hasło ma Twoje konto zostało przejęte), aby pokazać im problemy wynikające ze złych haseł
Carson Myers
Większość użytkowników będzie miała konto na Facebooku, Hotmail lub Gmail (konto e-mail jest potrzebne do pobierania danych uwierzytelniających w wielu witrynach), więc jasne, jak używać ich do rejestracji / logowania, może być przydatne.
StuperUser
Chyba zapomniałem o facebook connect itp.
Carson Myers,
12

Po co pozwalać na hasła, które uważasz za złe? Zatrzymanie problemu u źródła pozwoli zaoszczędzić mnóstwo czasu na projektowanie, próbując dowiedzieć się, jakie klasy haseł odwzorowują na jakie role. Ponieważ administrator z definicji miałby pełne prawa, potrzebujesz już funkcjonalności, aby upewnić się, że nie wprowadzi hasła, które by go ograniczało.

Moja odpowiedź sprowadza się do KISS .

unholysampler
źródło
1
To nie jest rozwiązanie, ponieważ skłania to użytkowników do przyjęcia środków zaradczych, które jeszcze bardziej złamały twoją politykę bezpieczeństwa.
deadalnix
@deadalnix jak to? Myślę, że on po prostu mówiąc rezygnują cały pomysł i po prostu odrzucić złe hasło, zapewniając jednocześnie przykład dlaczego mój pomysł może powodować podrażnienie więcej niż jest to konieczne
Carson Myers
@deadalnix co masz na myśli? Jakie środki przeciw bezpiecznemu hasłu zastosowałby użytkownik?
StuperUser
7
@StuperUser: To przede wszystkim: zmiana jednej podatności na inną.
Piskvor opuścił budynek
1
@StupidUser: Jeśli użytkownik ponownie używa tego samego hasła do każdej witryny, a powiedziano mu, że „mojehasło” jest niedopuszczalne, ponieważ nie zawiera żadnych liczb, istnieje spora szansa, że ​​po prostu wstawią „mojehasło1”
elwyn
7

Jako użytkownik prawdopodobnie przekonałoby mnie to, że nie korzystam z Twojej witryny. Mówiąc poważnie, mój bank powiedział mi, że 6-cyfrowy kod jest całkowicie bezpieczny dla bankowości internetowej, ale kiedy chcę napisać komentarz do mniej znanego bloga, powinienem pamiętać unikalne hasło zawierające co najmniej 8 górnych - i małe litery, cyfrę, znak specjalny i symbol grecki lub cyrylicy, które można wprowadzić tylko wtedy, gdy znasz sekwencję Unicode na pamięć. I zmieniaj to regularnie.

Nie zrozum mnie źle, bezpieczeństwo jest ważne. Ale jeśli nie powinieneś denerwować użytkowników, chyba że masz naprawdę silny powód, by wierzyć, że ktoś spróbuje złamać hasło, aby uzyskać dostęp do Twojej witryny. Jeśli Twoja witryna zapewnia VPN dostęp do sieci FBI, śmiało. Ale jeśli jest to forum użytkowników, na którym każdy, kto ma adres e-mail, może się zarejestrować, to po co naprawdę?

nikie
źródło
Po pierwsze, jeśli mówimy o witrynie społecznościowej, spam może stanowić problem (i tak naprawdę był w jakimś projekcie, w którym uczestniczyłem). IMO odciągnęłoby więcej użytkowników, by po prostu odrzucili swoje hasło, a jeśli zamierzamy złagodzić spam przy użyciu captchas (nierzadko) lepiej, aby sprawić, że użytkownicy będą go denerwować, prawda?
Carson Myers,
Myślę też, że powszechne jest błędne przekonanie, że rzadko próbujesz breakinsów, jeśli jesteś mały. Byłem zaangażowany w kilka małych i średnich społeczności internetowych i zawsze był to problem. Pytanie ServerFault wydaje się to potwierdzać .
Carson Myers,
5
dlaczego spamerzy używają krótszych haseł? Dlaczego mieliby próbować złamać hasła innych osób, skoro mogą po prostu utworzyć nowe konto? Nie widzę tu zalet długich haseł.
nikie
Nie mam pojęcia, po prostu wpadł na niego jakiś czas temu i postanowiliśmy zobaczyć jak to wstał kontroli :) nie no, wydaje ...
Carson Myers
1
Bardzo podoba mi się twoja odpowiedź, ponieważ wskazuje na głupotę nawet myślenia o realizacji tego pomysłu: tworzeniu niepotrzebnego bezpieczeństwa dla strony zawierającej niezabezpieczone dane.
Tundey,
6

Lepsze rozwiązanie: uśmiechnięte twarze.

Jestem poważny! Czytanie książek o ekonomii behawioralnej, takich jak „Posuwanie się: poprawa decyzji dotyczących zdrowia, bogactwa i szczęścia” przekonało mnie do kilku rzeczy:

  1. Nie można zmusić wszystkich do podejmowania mądrych decyzji.
  2. Ludzie lubią mieć swobodę wyboru, ale nie lubią wielu opcji.
  3. Za pomocą prostych sztuczek możesz jednak znacząco wpłynąć na ich wybory.

Widzę, że te zasady odnoszą się do twojej sytuacji w następujący sposób:

  1. Ograniczanie użytkowników na podstawie niepewnych haseł najprawdopodobniej spowoduje ich udaremnienie i dezorientację ... szczególnie w przypadku większości osób, które nie czytają dokładnie napisanych wyjaśnień w oknach dialogowych i po prostu dzwonią do działu pomocy technicznej, aby powiedzieć: praca."
  2. Podczas tworzenia haseł użytkownicy nie muszą widzieć listy wszystkich możliwości znaków specjalnych i takich, z których mogą korzystać. Lepiej pokaż im wyskakujące okienko sugerujące, że dodają złożoności tylko wtedy, gdy ich wpis nie spełnia wymagań.
  3. Ludzie są pod silnym wpływem wskazówek społecznych - nawet małe, takie jak szczęśliwe twarze, pokazujące, że aprobujemy ich zachowanie, lub powzięte twarze, jeśli nie. Niektóre z lepiej zaprojektowanych stron internetowych będą wyświetlać kolorowy pasek postępu, który zmienia kolor z czerwonego na Nieodpowiedni :( na zielony dla Dobra robota! :), gdy użytkownik wpisze (proponowane) hasło i potwierdzenie. Ten interfejs użytkownika wywiera na nich presję społeczną, aby spełnić standardy - sprawić, że pasek zmieni kolor na zielony lub zmienić zmarszczenie brwi w uśmiech - gdy sami odkrywają, jak tworzyć bezpieczniejsze hasła za pomocą natychmiastowej informacji zwrotnej zmiany kolorów.
ewall
źródło
2
Początkowo myślałem, że sugerujesz wymaganie od użytkowników używania uśmiechniętych twarzy w swoich hasłach.
ałuma
4
@aslum: W rzeczywistości uśmiechnięte twarze w hasłach nie są złym pomysłem. Prawie wszystkie z nich składają się ze znaków innych niż alfanumeryczne, więc wystarczy rzucić :) na końcu słabego hasła, które znacznie go wzmocni, zwiększając przestrzeń wyszukiwania.
afrazier
@afrazier: chyba że stało się to powszechną praktyką i można je dodawać do listy postaci, prawda?
serv-inc
4

Nie nakładać, ale pomyślałem o innym powodzie, aby zgłosić to w „Bad Idea”, o którym jeszcze nie wspominałem - obsługa klienta.

Jeśli jest to produkt, który będzie miał za sobą przedstawicieli obsługi klienta, nie spodoba mu się to zbytnio. Jednym z podstawowych założeń wsparcia jest to, że rozumieją i potrafią przewidzieć wrażenia użytkownika - jeśli pomagają zwykłemu użytkownikowi, strona 1 powinna zawierać linki do stron 2, 3 i 4, gdzie mogą wykonywać X, Y, Z itp.

Teraz dajesz im inną zmienną, którą muszą śledzić. Jeśli użytkownik nie widzi linku do strony 4, czy to dlatego, że zrobił coś głupiego? A może dlatego, że ich hasło jest do bani, a system karze ich, odmawiając im dostępu do strony 4? Chwila ... cholera, odmawia dostępu do jednej z kar za złe hasło, czy mam na myśli stronę 5? Spójrzmy na to, tylko chwila ... dobra, mówi, że dla hasła, które nie łączy wielkich i małych liter, dostęp do stron o parzystych numerach jest dozwolony, ale ograniczony tylko do odczytu ... dobrze, proszę pana, czy hasło składa się ze wszystkich wielkich lub małych liter? Walizka. Po prostu piszesz małą literę; kiedy używasz shift, wtedy jest to duża litera. Czy wymieszałeś przypadki w swoim haśle? Hasło użyte do zalogowania się do systemu. Ten, którego właśnie użyłeś. OK, przejdź do Edycja, a następnie wybierz Preferencje, a następnie Bezpieczeństwo. Wybierz „Zapisane hasła” ... nie, proszę pana, nie widzę stąd twoich haseł ...

Tak. Nie rób tego

BlairHippo
źródło
2

Ogranicz hasła lub poinformuj użytkowników o ryzyku słabych haseł. Myślę, że jeśli użytkownik nie dba o swoje dane, możesz chcieć ograniczyć dostęp do danych innych. Być może użytkownicy czują się pewniej, jeśli osoby przestrzegające nieostrożnych haseł zostaną usunięte. Jaki jest sens wymagać silniejszego hasła, jeśli ma się on skończyć na karteczce pod klawiaturą lub przyklejonej do laptopa (Nie mogę tego wymyślić; Widziałem, jak to się dzieje).

JeffO
źródło
Częścią mojego pytania było ograniczenie wpływu użytkowników na siebie nawzajem, gdy używali złych haseł, więc nie odsyłacie ich wprost, ale upewniacie się, aby nie zamieniać złej praktyki w cierpienie innych. Po tej długiej dyskusji nie warto. Myślę jednak, że to fajna zabawa.
Carson Myers,
2

i czy można go umieścić w tęczowym stole

Chyba masz na myśli słownik, a nie tęczowy stół. Atak słownikowy polega na sprawdzeniu wszystkich słów słownika, jeśli pasują do hasła. Ten atak można naprawić za pomocą 5 prób i blokowania na x minut ...

Tęczowa tabela będzie używana tylko wtedy, gdy hashujesz hasło, a atakujący zna hash. Niż mógłby znaleźć skrót w tęczowym stole, jeśli byłby to po prostu „12345” lub coś podobnego.

Aby dokończyć podróż w obie strony: aby uczynić tęczowy stół bezużytecznym, powinieneś solić hasła. I używaj unikalnej soli do każdego hasła, a nie tylko jednego dla wszystkich. Jeśli to zrobisz, atakujący musi utworzyć tęczowy stół z unikalną solą dla każdego konta, do którego chce uzyskać dostęp. Sprytnie zrobione po twojej stronie, możesz urozmaicić haszowanie za pomocą wielokrotnego algorytmu mieszania konkatenacji, aby jedno pokolenie mogło zająć pół sekundy. Jeśli to zrobiłeś, uzyskanie dostępu do konta w witrynie musi być warte dni, prawdopodobnie miesiąca generowania skrótów, aby znaleźć dopasowanie do tego konta ... Nie mogę myśleć o atakującym, który spróbuje uzyskać wszystkie hasła, kiedy to zrobi tak długo.

Dla czasu mieszania: Pomyśl o 500 ms czasu oczekiwania na mechanizm logowania. Myślę, że jest to dopuszczalne ... (przypomnienie: prawie jedna sekunda wymaga uścisku dłoni w przypadku SSL)

WarrenFaith
źródło
Tak, miałem na myśli słownik, dzięki. I z pewnością masz rację, że konieczne są inne formy bezpieczeństwa
Carson Myers,