1

Как пользователь, как я узнаю, что мое имя пользователя и пароль, отправленные на сервер, зашифрованы с помощью HTTPS? Позвольте мне выгрузить ответ "ищите маленький замок" или "ищите https в URL" с помощью следующих двух примеров:

Во-первых, допустим, я захожу на сайт bank.com. Когда я попадаю на страницу входа, URL-адрес в адресной строке говорит « https://www.bank.com/login.php ». Я ввожу свое имя пользователя и пароль и нажимаю «отправить».

Тем не менее, форма для аутентификации говорит это:

<form action="http://www.bank.com/login.php"> ... </form>

Очевидно, мои учетные данные не отправляются через HTTPS. Второй пример как раз наоборот, как вы можете себе представить. Я захожу на bank.com и мне открыта страница « http://www.bank.com/login.php ». Однако форма на этот раз использует HTTPS:

<form action="https://www.bank.com/login.php"> ... </form>

Из этого ясно, что мы не можем доверять ни символу блокировки в браузере, ни "https" в адресной строке.

Я думаю, что у меня действительно есть два вопроса, которые колеблются между SO и SU:

  1. SU: Как обычный пользователь (не разбирающийся в HTML/ программировании) может эффективно выполнить такую проверку?
  2. SO: Как веб-сайты (или браузеры) могут помочь пользователям выполнить эту проверку?

3 ответа3

3
  1. Для пользователей, не разбирающихся в технологиях, мало что можно сделать. Включение предупреждений в вашем браузере для отправки по HTTP от HTTPS - ваш лучший вариант. Если доступно, это, вероятно, включено по умолчанию. Однако обычно в форме не указывается сайт или протокол, и он отправляется обратно на сервер, который отправил форму, используя сайт и протокол, на котором она была предоставлена. В этом случае, если форма была передана по протоколу HTTPS, то отправка также будет.
  2. Веб-сайты должны проводить сертификационные тесты, которые гарантируют, что форма входа требует HTTPS. Это относительно легко сделать на большинстве веб-серверов. Если они имеют дело с кредитными картами, существуют требования, которые они действительно сертифицируют на сайте и инфраструктуре. Они также должны убедиться, что форма входа в систему обслуживается только с использованием HTTPS.

HTTPS не обязательно означает, что ваши данные хорошо зашифрованы. Есть относительно низкие протоколы безопасности, которые могут быть включены. Сервер и браузер согласовывают уровень шифрования. Там, где это разрешено (в некоторых странах существуют ограничения), вы можете отключить протоколы с более низким уровнем безопасности в своем браузере. (Экран для этого не всегда легко найти.) Обычно легче проверить безопасность на конкретном соединении.

2

ясно, что мы не можем доверять ни символу блокировки в браузере, ни "https" в адресной строке

Я ожидал, что здравомыслящий браузер предупредит вас, когда форма на сайте HTTPS отправляется по URL-адресу, отличному от HTTPS (ваш первый пример). Но еще одно тестирование показывает, что это только отчасти верно . Апрель 2013:

  • Safari 6.0.4, Mobile Safari и Firefox 20 (в OS X 10.8 и Windows 7) действительно отображают предупреждение (как при отправке на тот же URL-адрес, так и при отправке в какой-либо другой домен).

  • Chrome 26 (в OS X 10.8, Android 4.1 и Windows 7) и Internet Explorer 9 и 10 (в Windows 7) вообще не предупреждают.

Таким образом, для лучшей работы пользователей в браузерах, которые отображают предупреждение, сама страница входа в систему должна действительно обслуживаться HTTPS. Любой банк сделает это. На сайтах, которые этого не делают, пользователям действительно необходимо выполнить проверку самостоятельно, либо установить плагин, либо использовать какой-нибудь скрипт Greasemonkey для украшения безопасных форм или показать какое-то предупреждение. Для Chrome также доступно стороннее расширение , но я этим никогда не пользовался.

__________
Подумав об этом, возможно, мне нравится это изменение: оно может заставить больше людей включать HTTPS на своем сайте, не беспокоясь о предупреждениях при взаимодействии со сторонними сайтами, которые еще не используют HTTPS.

1

Force-TLS требует, чтобы вы указали сайты, для которых вы хотите установить связь https. Статья по использованию и почему здесь: http://techcrunch.com/2010/10/25/firesheep/ Я думаю, что это может ответить на оба вопроса

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .