Контекст всегда актуален («защищен от чего?»), Но как человек, который профессионально просматривает приложения для обеспечения безопасности, почти всегда плохая идея сделать имена пользователей предсказуемыми, а односимвольные имена пользователей, безусловно, предсказуемы.Если имена пользователей непредсказуемы для злоумышленника, это увеличивает энтропию для злоумышленника.Пароли должны обеспечивать всю энтропию, которая вам когда-либо понадобится, но пользователи невероятно плохо выбирают пароли с достаточной энтропией.Даже при наличии требований к сложности пароля обычный пользователь просто приложит минимальные усилия для проверки («P @ ndab34R!» Не является хорошим паролем).
Если я знаю, что вы разрешаете или даже требуетеОдносимвольные имена пользователей, поскольку злоумышленник пытается получить доступ к учетным записям, первое, что я сделаю, это: попытайтесь угадать пароль для всех односимвольных имен пользователей, используя словарь паролей (изменяемый по мере необходимости в соответствии с вашими требованиями к паролю).Скорее всего, я попаду. Когда я войду, то как это может повлиять на пользователей, зависит от того, какой это сайт.Если это общедоступный веб-сайт, где любой может зарегистрировать учетную запись, это повлияет только на пользователя, чей аккаунт я нарушил.Если это аутентифицированный веб-сайт, на котором я не могу просто зарегистрировать свою учетную запись по своему желанию, теперь я аутентифицирован и могу предпринять аутентифицированные атаки на сайт, что влияет на безопасность всех пользователей.
Если у вас слабыйтребования к именам пользователей. Вы можете попытаться компенсировать это, повысив безопасность аутентификации в других областях, таких как:
- требования к надежным паролям
- назначайте пароли пользователям, а не позволяйте им выбирать свои собственные
- надежные механизмы блокировки учетных записей и / или системы проверки человеком для предотвращения атак методом перебора