После входа в систему все страницы должны быть https? - PullRequest
14 голосов
/ 16 июля 2010

Это будет немного сложно объяснить, но я буду стараться изо всех сил.

На каждой странице есть веб-сайт с формой для входа в систему с полями имени пользователя и пароля. Эти страницы не используют SSL. После того, как пользователь заполняет имя пользователя / пароль и отправляет форму, форма отправляется на страницу аутентификации https.

У меня есть несколько вопросов об этой ситуации.

  1. При отправке формы на страницу https шифруются ли данные? Или только после перехода со страницы https (я предполагаю, что только переход)?
  2. Если ответом на номер один является лестница, значит ли это, что мне нужно будет использовать https для всех страниц, потому что форма входа в систему оттуда перенаправлено?
  3. После того, как пользователь аутентифицирован с использованием https, может ли он быть перенаправлен обратно на http и продолжить использовать данные сеанса? Или пользователь должен оставаться в https?
  4. Лучше / хуже оставить пользователя в https?

Большое спасибо за любую помощь!
Метрополис

ЗАКЛЮЧЕНИЕ

Ладно, подумав некоторое время, я решил сделать все это https. @ Mathew + @Rook, ваши ответы были великолепны, и я думаю, что вы оба делаете отличные выводы. Если бы я был в другой ситуации, я бы сделал это по-другому, но вот мои причины сделать все это https.

  1. Будет проще контролировать запросы страниц, так как мне нужно только оставаться в https.
  2. Я не слишком обеспокоен производительностью (в другой ситуации, я мог быть)
  3. Мне не нужно удивляться, если данные пользователей защищены во всех местах.
  4. Я буду следовать руководству OWASP, как сказал Ладья

Ответы [ 4 ]

10 голосов
/ 16 июля 2010

Согласно Лучшие 10 OWASP ни в коем случае не могут использовать аутентифицированный идентификатор сеанса по HTTP.Таким образом, вы создаете сеанс по HTTP, а затем этот сеанс становится аутентифицированным, затем вы нарушили Топ-10 OWASP и позволяете своим пользователям быть уязвимыми для атак.

Я рекомендую установить флаг безопасности в вашем файле cookie .Это ужасное название для этой функции, но она заставляет куки быть только https.Это не следует путать с «Httponly cookies», который представляет собой другой флаг, который помогает смягчить воздействие от xss.

Чтобы убедиться, что ваши пользователи в безопасности, я бы все время принудительно использовал HTTPS.Протокол ssl - очень легкий протокол. Если вы столкнетесь с проблемами с ресурсами, рассмотрите возможность объединения политик https.

6 голосов
/ 16 июля 2010
  1. Да.Если URL-адрес действия - https, данные формы зашифрованы.
  2. Из-за # 1 вам не нужно создавать страницу https, но вы можете получать предупреждения о смешанном содержании.И, конечно же, злоумышленник в середине может манипулировать страницей входа, чтобы указать другой URL-адрес действия.
  3. Это решение для вас.Очевидно, что любые данные, передаваемые по HTTP, будь то файлы cookie (включая файлы cookie сеанса) или данные пользователя, могут быть перехвачены и обработаны.
  4. Опять же, это компромисс, основанный на производительности и безопасности.
3 голосов
/ 16 июля 2010

В дополнение к тому, что говорит The Rook, отправка формы с http на https представляет собой риск по нескольким причинам:

  1. На странице, где люди набирают текст, нет значка «блокировки»их имя пользователя и пароль, поэтому они не могут знать, что их данные зашифрованы (кроме как «доверяя вам»)
  2. Если кто-то похитит вашу страницу, ваши пользователи не смогут узнать, о чем онивведите их имя пользователя и пароль и перенаправьте их на вредоносную страницу (это является своего рода следствием # 1).

Это гораздо более простая атака, чем перехват HTTP cookie, поэтому на самом деле этоеще больший риск ...

Но суть Rook важна: вы не должны никогда смешивать трафик http и https.На наших веб-сайтах, как только вы войдете в систему, все будет https с этого момента.

2 голосов
/ 16 июля 2010

Помимо предыдущих ответов, поскольку люди стремятся перейти от HTTPS к HTTP по соображениям производительности, эта статья о HTTPS в Google может представлять интерес Его основное сообщение:

SSL / TLS не в вычислительном отношении дороже больше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...