Я занимаюсь разработкой веб-приложения с использованием Django.Безопасный способ отправить ссылку «сбросить пароль»
В настоящее время я работаю на отправку «сбросить ссылку пароля» тщательных электронную почты (амазонка простого сервиса электронной почты - SES)
Механизма я использовал, то же самое с ответом «simeonwillbanks» ссылка ниже
Secure ways to reset password or to give old password
- Дайте пользователям опцию изменения пароля.
- Этот параметр сохраняет уникальный токен для пользователя. Токен в конце концов истекает (часы, день или дни).
- Ссылка отправлена по электронной почте пользователю, который включает токен.
- Пользователь нажимает на ссылку по электронной почте.
- Если токен существует и не истек, ссылка загружает новую форму пароля. Если нет, не загружайте новую форму пароля.
- Как только пользователь устанавливает новый пароль, удалите токен и отправьте пользователю письмо с подтверждением.
Что я волнуюсь об этом, я не уверен, что этот способ безопасен с точки зрения безопасности. Что, если электронная почта будет захвачена хакером?
Я проверил на нескольких основных сайтах, как им это нравится.
- отправьте электронное сообщение «Сбросить пароль» и скопируйте ссылку.
- дать ссылку на другую и посмотреть, может ли он изменить пароль в моей учетной записи.
Из этого теста я выяснил, что кто-то еще может изменить мой пароль только по ссылке.
Если я не могу ничего сделать по ссылке, есть способ сделать электронную почту более безопасной? как механизм ssl (https) на веб-сайте?
Спасибо!
Единственное, что вы можете сделать, это отправить сообщение с использованием SMTP/S вместо простого SMTP и сохранить срок действия токена как можно короче (минуты вместо часов или дней), но вы правы, это обычно используемый поток сброса пароля по своей сути небезопасен. –
Вы можете, прежде всего, запросить дополнительные сведения о безопасности при вводе маркера или использовать второй фактор, например текстовые сообщения/мобильные номера. Вы также можете не запрашивать электронное письмо, но логин, который никогда не отображается никому на сайте (т. Е. Если вы хотите нападать на кого-то, вы не можете сбросить свою учетную запись только с адреса электронной почты). Все они добавляют небольшой дополнительный слой, но также увеличивают запросы на поддержку (забытое имя пользователя и т. Д.). – eckes
Спасибо за ответ, ребята! @ Robby Cornelissen, Не могли бы вы объяснить немного больше о SMTP/S? Я пытался исследовать это, не было достаточной справки. – kyle