Проверка паролей на слабость

Автор: lexy Суббота, Декабрь 6th, 2014 Нет комментариев

Рубрика: Безопасность

Эта статья косвенно относится к кодингу, т.к. программирование тут является всего лишь средством реализации описанных процессов.

Как проверить пароль на слабость? Существует немалое количество таких методов, и один из них — проверка по словарю. Т.е. если пароль присутствует в словаре — он является слабым. Наша задача усилить этот метод.

Предположим, у нас есть пароль pass12345woRd_. В чем заключается его сила? Смотри внимательно: длина пароля больше пяти символов, в пароле присутствуют буквы разных регистров и цифры, также присутствуют спецсимволы. Слабое место такого пароля это только то, что удалив все цифры и спецсимволы, а также переведя все оставшиеся символы в один регистр мы получаем словарное слово — password. Отсюда следует, что наша программа проверки паролей должна оставлять только символы английского алфавита и перевести все в нужный регистр, а затем искать это слово в словаре.

Но ведь может встретиться и такой вариант нашего пароля p4ssw0Rd_. И только что рассмотренный алгоритм действий не подходит. Можно заменять цифры на похожие буквы или наоборот, но тогда пароль типа p4assw0oRd_ не будет распознан. Поэтому можно усилить имеющийся алгоритм одним условием: знаки 1,i,l,2,z,3,e,4,a,5,s,6,d,7,8,b,9,g,0,o,+,t будут вырезаться. Конечно, вместе с этим не пройдут проверку множество сравнительно надежных паролей. А вот пароль password после обработки будет выглядеть как pwr. Кстати, пароли power и powered так же будут выглядеть после такой обработки. Т.о. словарь для перебора значительно «похудеет», что не может не радовать.

В дальнейшем мы будем заменять несколько идущих подряд согласных одним согласным. Теперь пора вспомнить про фонетические замены и пароль thanx — фонетический двойник пароля thanks. Если вы следите за повествованием, то должны заметить, что знак «s» мы уже вырезали, как и знак «a». Т.е. вполне логично заменять x=k. А несколько идущих подряд одинаковых символов (групп символов) лучше заменить на один такой символ (группу символов). Это очень сильно поможет в борьбе с «особенно сообразительными» пользователями, которым лень запоминать длинные последовательности символов. Например, hnnnnnn меняем на hn.

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

 

Источник: winzone.ru

Оставить комментарий

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты