passwd делает паузу после ввода неверного пароля
Допустим, вы вводите пароль и вводите неверный пароль. Заметная задержка между сообщением о том, что пароль был неверным, и вводом его. Есть идеи, почему? Кажется странным...
Вот сообщение, которое я получаю при вводе неверного пароля:
passwd: Authentication token manipulation error
passwd: password unchanged
Может быть, он пытается защитить себя от попыток перебора, уменьшив скорость, с которой можно пробовать новые пароли?
В любом случае есть ли где-нибудь обсуждение этого поведения? Я не вижу заметок об этом на странице руководства..
2 ответа
Да, задержка является защитой от грубой силы и составляет около 3 секунд.
Причина, по которой он не появляется в пароле, заключается в том, что он контролируется бэкэндом аутентификации - обычно pam
,
man pam_unix
Показывает, что вы можете установить nodelay
устранить задержку. Вы также можете установить конкретные задержки приложений в pam_faildelay
man pam_faildelay
Все эти настройки управляются в
/etc/pam.d/*
Да, это для предотвращения атак грубой силой.
Буквенно-цифровой 6-значный пароль может содержать до 36 бит энтропии (6 бит на символ). Если компьютер может проверять 1 миллиард паролей в секунду, ему потребуется только 2 ^ 36 / 1 billion = 69
секунд, чтобы попробовать все возможные пароли. Задержка в одну секунду означает, что в секунду можно использовать только один пароль. Попытка всех возможных паролей заняла бы 2179 лет...
Задержка обрабатывается не самим паролем, а подключаемыми модулями аутентификации.
Задержка может быть отключена для passwd, добавив опцию nodelay
к линии
password [success=2 default=ignore] pam_unix.so obscure sha512
в /etc/pam.d/common-password
, Так как это повлияет на все другие программы, использующие этот файл конфигурации, вы можете скопировать его поверх /etc/pam.d/passwd
и отключить задержку только там.
Смотрите также: man pam_unix