Как обеспечить соблюдение надежных паролей?

Существует множество способов принудительного использования надежных паролей на веб-сайтах:

  • Запрос на передачу паролей регулярных выражений различной сложности
  • Автономная установка пароля, чтобы у случайных пользователей был надежный пароль
  • Срок действия паролей истекает
  • и т.п.

С другой стороны, есть недостатки, потому что все они делают жизнь менее легкой для пользователя, что означает меньшее количество регистраций.

Итак, какие техники вы используете? Что обеспечивает наилучшее соотношение защиты и неудобств?

Чтобы прояснить ситуацию, я не имею в виду банковские сайты или сайты, на которых хранятся кредитные карты. Подумайте больше о популярных (или не очень популярных) сайтах, для которых все еще требуется регистрация.

SQL Injection: Атаки в реальной жизни и как это вредит бизнесу
SQL Injection: Атаки в реальной жизни и как это вредит бизнесу
Один-единственный вредоносный запрос может нанести ущерб вашему бизнесу. Уязвимости вашего кода могут привести к:
9
0
1 881
8
Перейти к ответу Данный вопрос помечен как решенный

Ответы 8

Лучший способ действительно зависит от вашего сайта и того, что вы используете. Но идеальный способ - сделать как можно больше на стороне клиента, прежде чем они его отправят. Использование RegEx - хороший способ. Если вы можете заставить их не отправлять форму снова, это идеальный вариант.

Не навязывайте ничего ... если вы не защищаете финансовую информацию или что-то не менее важное, тогда не делать пользователь выбирает надежный пароль.

У меня один и тот же ненадежный пароль на множестве сайтов, требующих регистрации для форумов и т. д. Меня не волнует, угадает ли кто-то его и сможет ли публиковать сообщения от имени меня (и не думаю, что у кого-то есть особая мотивация для этого. так). Чего я не могу сделать, так это запомнить разные надежные пароли для дюжины сайтов и на самом деле не хочу использовать другое программное обеспечение для управления ими за меня.

Лучшим компромиссом было бы показать пользователю какую-то обратную связь о том, насколько надежен пароль (в зависимости от того, является ли это словарным словом, количеством различных типов символов, длиной и т. д.).

@Rob Walker: Печальная реальность такова, что 1 пользователь из 7 выбирает свое имя пользователя в качестве пароля. Как только на сайте ставится что-нибудь (даже вещи, не имеющие денежной ценности), люди воля жалуются, если их учетная запись взломана. Если бы это произошло на сайте со 100 тыс. Пользователей. :-(

Sklivvz 03.10.2008 21:31

Мне нравится, когда приложение требует от меня пароль и показывает его надежность с помощью некоторой шкалы / шкалы и короткого текстового представления (то есть слабое, среднее, сильное, взламывается только секретной службой и т. Призывает использовать надежный пароль даже для обычного пользователя. Голосовать за.

OregonGhost 03.10.2008 23:24

@ Rob-Walker Если вы хотите использовать надежные пароли, но не хотите запоминать миллион из них или использовать программное обеспечение для управления паролями, используйте формулу для создания надежных паролей. См. blog.danskingdom.com/…

deadlydog 13.10.2014 01:42

Когда срок действия паролей истекает, возникают две заметные проблемы с практикой:

  • Пользователям труднее запоминать свои текущие пароли, поэтому они с большей вероятностью будут делать глупые вещи, например писать их на стикере, прикрепленном к монитору.
  • Пользователи не генерируют новый надежный пароль, не имеющий отношения к каждой попытке. В большинстве случаев они используют какую-то схему для генерации пароля, похожего на свой старый. Следовательно, если злоумышленник получит старый пароль, ему все равно будет довольно легко вывести новый.

Обновлено: Это не значит, что я против всей идеи, просто это нужно учитывать наряду с другими факторами.

Не отступайте, ставьте точку и признайте ее! Для протокола я согласен. Если вы используете службу, в которую люди будут входить время от времени, то принуждение их каждый раз менять свой пароль - просто ненужное раздражение.

Dan 04.10.2008 07:25
Ответ принят как подходящий

Я не думаю, что возможно применять надежные пароли, но есть много вещей, которые вы можете сделать, чтобы максимально их поощрять.

  • Оцените каждый пароль и дайте пользователю обратную связь в виде оценки или графической панели и т. д.
  • Установите минимальную оценку пароля, чтобы отсеять ужасный.
  • Составьте список общих слов, которые либо запрещены, либо снижают оценку пароля

Один из приемов превосходно, который мне нравится использовать, - привязать дату истечения срока действия пароля к количеству очков. Таким образом, более надежные пароли не нужно менять так часто. Это хорошо работает особенно, если вы можете дать пользователям прямую обратную связь о том, как долго будет действовать выбранный ими пароль (и динамически обновлять его, чтобы они могли видеть, как добавление символов влияет на дату).

Спасибо;) Он работает лучше всего, если вам вообще не нужно применять политику изменения пароля (так что вы можете законно позволить достаточно надежным паролям никогда не истекать), просто используйте его как палку, чтобы дать пользователям некоторый стимул выбирать достойные. . С правильным пользовательским интерфейсом он работает действительно хорошо!

Dan 04.10.2008 06:32

Конечно, вы можете добиться этого. Пользователи просто возненавидят вас за это. Как они будут, если вы установите даты истечения срока действия пароля. Достаточно сложно вспомнить без этого вмешательства.

Mr. Boy 26.01.2010 11:51

Хорошая идея насчет трюка, но я никогда не видел сайта / системы, которая бы его реализовала. Может кто-нибудь привести пример?

woliveirajr 30.06.2011 20:29

Почему это принуждать?

Я обнаружил, что «измеритель надежности пароля» (полоса, показывающая надежность пароля при вводе) обычно является хорошей ненавязчивой мерой. Это заставляет тех, кто заботится о безопасности, испытывать угрызения совести по поводу слабости пароля, но не расстраивает тех, кого это не волнует.

Также есть проницательное эссе о почему политика периодической смены пароля - плохая идея с сегодняшней моделью угроз.

Спасибо за ссылку! От концепции «вы должны менять пароли каждые X дней» оказалось чрезвычайно трудно отказаться.

Dave Sherohman 08.10.2008 17:04

По моему опыту, это действительно зависит от типа сайта, как вы сказали.

Если вы создаете банковский или финансовый веб-сайт, пользователи обычно понимают, есть ли у вас более надежный пароль, поскольку их личные данные могут быть в опасности.

Однако для сайтов, которые обычно не содержат много личной информации, подойдет более простой пароль. Они могут быть менее подвержены попыткам взлома и в любом случае не получат ничего стоящего.

Я также обнаружил, что у большинства людей есть пара паролей, которые они часто используют. Один сложен, а другой прост. Поэтому просьба использовать сложный пароль обычно не помешает людям зарегистрироваться.

Я никогда не находил, чтобы пароли с истекающим сроком действия работали успешно. Как я уже сказал, у многих людей уже есть набор паролей, которые они часто используют, поэтому просьба выйти за пределы этого только для вашего сайта может заставить их не возвращаться.

Есть инструмент Ajax PasswordStrength, который даст пользователю представление о том, подходит ли его пароль. Мне это нравится, потому что он не должен запрещать создание пароля.

http://www.asp.net/AJAX/AjaxControlToolkit/Samples/PasswordStrength/PasswordStrength.aspx

Я никогда не видел, чтобы это было сделано, но похоже, что это сработает замечательно: страница создания пароля может иметь расширяемый список, скажем, из 50 самых общие пароли, заставляющих пользователя немного прокрутить вниз, прежде чем вводить свой пароль. Это, в сочетании с предложением Чекерс, во многом предотвратило бы небрежный выбор.

Однако решение проблемы предотвращения повторного использования пароля ... понятия не имею.

Другие вопросы по теме