Это будет немного сложно объяснить, но я постараюсь изо всех сил.
Существует веб-сайт, на котором есть форма входа на каждую страницу с полями имени пользователя и пароля. Эти страницы не используют SSL. После того, как пользователь заполнит имя пользователя / пароль и отправит форму, форма отправляется на страницу аутентификации https.
У меня есть несколько вопросов об этой ситуации.
Большое спасибо за любую помощь!
метрополия
ВЫВОД
Хорошо, поэтому, подумав об этом некоторое время, я решил просто сделать все это https. @Mathew + @Rook, ваши ответы были отличными, и я думаю, что вы оба делаете большие очки. Если бы я был в другой ситуации, я, возможно, делал это по-другому, но вот мои причины для создания всего https.
Согласно Топ-10 OWASP ни в коем случае нельзя использовать аутентифицированный идентификатор сеанса по HTTP. Таким образом, вы создаете сеанс по протоколу HTTP, а затем этот сеанс становится аутентифицированным, тогда вы нарушили Top 10 OWASP, и вы позволяете вашим пользователям быть восприимчивыми к атаке.
Я рекомендую установить безопасный флаг в вашем файле cookie . Это ужасное имя для этой функции, но заставляет файлы cookie быть только https. Это не следует путать с «Httponly cookie», который является другим флагом, который помогает смягчить влияние xss.
Чтобы ваши пользователи были в безопасности, я постоянно использовал HTTPS. ssl – очень легкий протокол, если вы сталкиваетесь с проблемами ресурсов, а затем подумайте о цепочке https-политик.
В дополнение к тому, что говорит The Rook, отправка формы с http на https представляет собой риск для нескольких причин:
Это гораздо более простая атака, чем перехват http cookie, поэтому на самом деле это еще больший риск …
Но точка «Грач» важна: вы никогда не должны смешивать трафик http и https. На наших сайтах, как только вы вошли в систему, с этого момента все https.
Помимо предыдущих ответов, поскольку люди склонны идти от HTTPS к HTTP по соображениям производительности, эта статья о HTTPS в Google может представлять интерес. Его главное сообщение:
SSL / TLS больше не является дорогостоящим.