Уязвимости формы аутентификации

5 1455

Форма аутентификации является клондайком для хакеров, так как её уязвимость может вести за собой серьёзные последствия в виде нарушений разграничения доступа, возможности получить доступ к аккаунтам пользователей и администраторов.

Такие уязвимости находят через перебор пользователей и паролей. И если система возвращает разные сообщения об ошибках при неверном логине и пароле — это позволяет определить, какие логины существуют. Дальше идёт подбор. Через форму восстановления пароля можно отправить десятки писем с подменой адресов и ссылок. Разные ответы сервера также можно найти и в форме восстановления пароля, там в поле в основном вводится почта пользователя, соответственно можно собрать список почт для использования в фишинге.

Форма восстановления пароля может таить в себе ещё и возможность DOS-атак.

Если разработчики не предусмотрели ограничения, злоумышленник может отправлять огромное количество писем на один и тот же адрес, модифицируя его (например, user@mail.com, user+1@mail.com, user+2@mail.com). А если на сайте есть ещё и уязвимость, связанная с обработкой заголовка Host, ситуация становится ещё серьёзнее: атакующий может подменить адрес сайта в письме. Тогда пользователь получит письмо со ссылкой на внешний, подконтрольный злоумышленнику ресурс — и передаст свой код подтверждения не тому, кому нужно.

Как защититься

Чтобы защитить форму аутентификации от уязвимостей, важно реализовать несколько ключевых мер:

Унифицировать ответы сервера при неверных логине и пароле — сообщения об ошибке не должны давать понять, существует ли такой пользователь.

Ввести ограничения на количество попыток входа — использовать rate limiting, капчу или блокировку IP/учётки.

Обеспечить жёсткую политику паролей: минимальную длину, наличие цифр, букв разных регистров и специальных символов.

Защитить форму восстановления пароля от enumeration и флуда — проверять частоту запросов, использовать токены с ограничением по времени и одноразовые ссылки.

Исключить возможность Host header injection — проверять заголовок Host на соответствие допустимому списку доменов при генерации ссылок в письмах.

Западные изоляторы намотались на собственную изоленту
  • pretty
  • Вчера 06:56
  • В топе

ГРИГОРИЙ  ЛЕВИННа западе очередная паника, а точнее истерика. Они не только не смогли изолировать Россию, но руководству российского государства удаётся переманить на свою сторону и объединить во...

Горный инженер Российской империи Пётр Горлов

Петр Николаевич Горлов – пионер угольной промышленности Донбасса, один из самых известных и авторитетных горных инженеров Российской империи и основатель славного шахтёрского города – Г...

Библиотека блокадного Ленинграда

Высшая награда для моих трудов на литературной ниве - попадание моей книги "Ленинградские истории", посвящённой Памяти Защитников Блокадного Ленинграда на библиотечные стеллажи Горловск...

Обсудить
  • Пожизненое для хакеров решит такие проблемы