Небезопасное восстановление паролей (Weak Password Recovery Validation)

Опубликовано в Безопасность, Безопасность веб-серверов

Небезопасное восстановление паролей (Weak Password Recovery Validation). Данная уязвимость реализуется, благодаря тому что веб-сервер позволяет атакующему несанкционированно получать, модифицировать или восстанавливать пароли других пользователей.

Небезопасное восстановление паролей

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

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

Многие серверы требуют от пользователя указать его электронный адрес в комбинации с домашним адресом и номером телефона. Эта информация может быть легко получена из сетевых справочников. В результате данные, используемые для проверки, не являются большим секретом. Кроме того, эта информация может быть получена злоумышленником с использованием других методов – таких как межсайтовое выполнение сценариев или фишинг. Одно из слабых звеньев, несомненно, – парольные подсказки. Сервер, использующий подсказки для облегчения запоминания паролей, может быть атакован, поскольку подсказки помогают в реализации подбора паролей. Пользователь может использовать стойкий пароль, например «27Пуаро10», с соответствующей подсказкой: «детектив». Атакующий может заключить, что пользовательский пароль состоит из даты рождения и имени любимого автора пользователя. Это помогает сформировать относительно короткий словарь для атаки путем перебора.