Re: Проверка сложнойсти паролей.
On 2015-12-01, Oleksandr Gavenko wrote:
> Собственно я чего то подобное искал - высчитывание энтропии на овновании
> разумных допущений + там рекомендации сколько бит для каких нужд.
В общем энтропия - энтропией, но теория без практики - пустое место.
Как раз подвернулся случай, заказчик дал тестовую базу и пароль к админу. Но
нужно было тестировать от других классов пользователей.
У меня Spring Security, в настройках md5 без соли. На известный пароль:
$ printf PASSWROD | md5sum -
дало hex идентичный лежащему в базе.
Так вышло что одна запись была словарной и сайт:
http://www.md5decrypter.com/
быстро выдал ответ. Но другие не вошли в список 10000 часто используемых
паролей ))
Мне нужны 2 вещи - генератор слов по заданным правилам и чекер md5. Что бы не
велосипедить - поискал готовые продукты:
http://hashcat.net/hashcat/
Оно паралельно по заданным правилам строит обфусцированые пароли и сравнивает
со списком. Подробне:
http://hashcat.net/wiki/doku.php?id=hashcat
В итоге расколол 4 из 9 паролей, один в словаре:
$ ./hashcat-cli64.bin -m 0 -a 1 -r ./rules/best64.rule pass.txt /usr/share/dict/cracklib-small
3 в классе символов цифр до 10 шт. длиной:
$ ./hashcat-cli64.bin -m 0 -a 3 --increment -o pass.out pass.txt ?d?d?d?d?d?d?d?d?d?d
На 4 ядрах первое с 1 MiB словарем паролй отработало за десяток секунд, второе
10 минут.
Хотя о цифрах я получил представление перебирая все символы до 6 штук длиной:
$ ./hashcat-cli64.bin -m 0 -a 3 --increment -o pass.out pass.txt ?a?a?a?a?a?a
На процессоре выполнять эти работы глупо. Есть GPU версия:
http://hashcat.net/oclhashcat/
Я не знаю какие еще есть нормальные утилиты востановления пароля. Вычитывал о
John the Ripper - но показалось чем то древним и заброшеным.
================================================================
Когда посмотрел на практику вскрытия паролей, лучше начал понимать требования
по сложности.
Всегда нужно использовать наиболее широкий класс символов. 10 цифр вскрываются
не успев попить чай. Аналогично 6 шт alphanum+punct.
Дефолтные 8 символов от pwgen не стойки для пасивной атаки. Для логина
пользователя - норм с временной задержкой или блокировкой после 10 неудач, но
если украдут /etc/shadow - беда. И стремно если сервис доступен онлайн для
перебора без аудита или временных блокировок.
Человеко-придуманые короткие пароли тоже зло. Я пробовал:
$ ./hashcat-cli64.bin -m 0 -a 1 -r ./rules/best64.rule pass.txt /usr/share/dict/cracklib-small
(конкатенация 2 слов из словара с 64 стандартными модификациями) - программа
предположила возможное время 3 часа.
Потому пароли из 3 слов - стремные даже с "хитростями" для пасивного перебора.
xkcd#936 право на счет выбраных наугад 4 слов.
--
Best regards!
Reply to: