Исходное положение: SSL обеспечивает легкое в применении шифрование для НТТР соединений.
Угроза: Утечка информации, нарушение целостности данных, атаки «Человек-в-середине», атаки грубого подбора.
SSL - это протокол, который включает в себя многие из методов шифрования, описанные в этой статье. Не смотря на то, что он достаточно прост в применении, многие пользователи не имеют никакого представления о его основополагающих технологиях и знают его только как маленькую блокирующую иконку на обозревателе Интернет. SSL предоставляет основу шифрования и аутентификации для всех трафиков НТТР.
Клиент и сервер устанавливают сеанс SSL запросом клиента сертификата у сервера. Сервер отвечает отправкой сертификата и его предпочтениями шифра. Затем клиент генерирует ключ, подходящий ко всем шифрам, который он шифрует публичным ключом сервера и передает ключ на сервер. Сервер аутентифицирует себя к клиенту, возвращая сообщение, не аутентифицированное с общим ключом. Все данные теперь зашифрованы и аутентифицированы ключом, извлеченным из общего ключа. Процесс может также включать в себя похожий метод аутентификации клиента. SSL является жизненно важной частью процесса защиты веб-приложения. Он не защищает от всех видов атак, но представляет собой основу для надёжной защиты.
Внимание! Несмотря на многочисленные попытки некоторых компаний продать SSL как решение проблем безопасности сервера, важно отметить, что SSL не предоставляет защиту самому серверу. SSL аутентифицирует сервер клиенту и гарантирует частность коммуникации между сервером и клиентом. Это цифровой эквивалент оболочки защиты.
Так как процесс шифрования требует больше циклов ЦПУ, SSL не ставит дополнительной загрузки на сервер, особенно на медленные процессоры. Поэтому, многие операторы веб-сайтов делают выбор не в пользу использования SSL, однако, вы, возможно, захотите рассмотреть несколько методов улучшения выполнения:
- Обновляйте аппаратное обеспечение или загрузку, балансируя через множество серверов;
- Используйте SSL усилители аппаратного обеспечения;
- Оптимизируйте веб-содержание для минимального трафика.
Даже не дорогое обновление аппаратного обеспечения или усилители SSL могут способствовать дополнительной загрузке, требуемой для SSL трафика. Заметьте, что большинство дополнительных процессов происходят от первой проверки. связи, которая включает в себя более медленное ассиметричное шифрование, используемое для замены ключа сеанса. После того, как ключ установлен, остальной трафик шифруется симметричным шифрованием, используя этот ключ. Поскольку большинство симметричных алгоритмов достаточно эффективны, протокольные данные намного меньше после установки сеанса.
Подсказка: Некоторые веб-сайты, пытаясь избежать протокольных данных SSL используют его только при первоначальном процессе аутентификации, а затем снова переходят к нормальному НТТР соединению. Однако многие протокольные данные процесса используются для первоначальной проверки связи сеанса, что включает в себя ассиметричную криптографию. Таким образом, если вы проходите через процесс инициализации сеанса SSL, нужно сохранять соединение SSL для остального трафика также.
SSL всегда важно, но в некоторых случаях его использование необходимо:
- При передаче чувствительной информации;
- При использовании форм аутентификации;
- При использовании основной аутентификации.
Ошибка, которую допускают программисты, - это не сохранение сеанса SSL, после того как пользователь аутентифицировался при помощи основной аутентификации. С основной аутентификацией обозреватель Интернет автоматически отправляет логин пользователя с каждым запросом. Вы не только должны сохранять SSL соединение, но также следить за тем, что все элементы страницы, такие как изображения, таблицы стилей и скрипты, также проходили через SSL соединения. Один из способов избежать этого - использовать уникальное имя вашего SSL, такое как secure.example.com.
SSL основан на хорошо поставленной инфраструктуре публичного сертификата, но технология не может восполнять человеческие недостатки. Обозреватель Интернет пользователя может показывать блокирующую иконку, но несколько пользователей откроют сертификат веб-сайта, чтобы убедиться, что он действительный. Если они сделают это, возникнет возможность создания подложной информации которая будет выглядеть также как и подлинная. Даже если обозреватель Интернет предупреждает пользователя о недействительном сертификате, многие пользователи все равно продолжат просмотр веб-сайта. Единственный способ предотвратить этот тип атаки - это предоставить подробную информацию по вашему сертификату и научить пользователей работать с SSL и сертификатами SSL.
Способы защиты
- Всегда используйте SSL для защиты чувствительной информации НТТР трафика.
- Обновляйте аппаратное обеспечение или используйте SSL усилители для управления процессом протокольных данных SSL.
- Выполнив сеанс, сохраняйте SSL его как можно дольше.
- Убедитесь, что вы используете SSL для всех элементов страницы.
- Научите пользователей работать с SSL и сертификатами SSL.