Где включить SSL?

В моей последней паре проектов были задействованы веб-сайты, которые продают продукт / услугу и требуют процесса «оформления заказа», когда пользователи вводят информацию о своей кредитной карте и тому подобное. Очевидно, что у нас есть сертификаты SSL для обеспечения безопасности, а также для обеспечения спокойствия клиентов. Однако я немного не понимаю тонкостей этого, и, что наиболее важно, того, какие части веб-сайта должны «использовать» сертификат.

Например, я был на веб-сайтах, где в тот момент, когда вы попадаете на домашнюю страницу, вы попадаете на https - в основном на банковские сайты - а есть веб-сайты, где вас вводят только на https, когда вы, наконец, проверяете. Будет ли излишним запускать весь веб-сайт через https, если он не имеет отношения к чему-то на уровне банковского дела? Должен ли я делать только страницу оформления заказа https? Какая производительность достигается за счет полной отдачи?

За пределами сигналов Angular: Сигналы и пользовательские стратегии рендеринга
За пределами сигналов Angular: Сигналы и пользовательские стратегии рендеринга
TL;DR: Angular Signals может облегчить отслеживание всех выражений в представлении (Component или EmbeddedView) и планирование пользовательских...
Sniper-CSS, избегайте неиспользуемых стилей
Sniper-CSS, избегайте неиспользуемых стилей
Это краткое руководство, в котором я хочу поделиться тем, как я перешел от 212 кБ CSS к 32,1 кБ (сокращение кода на 84,91%), по-прежнему используя...
19
0
3 082
10
Перейти к ответу Данный вопрос помечен как решенный

Ответы 10

Я думаю, что хорошее практическое правило - использовать SSL везде, где может быть передана конфиденциальная информация. Например: я член Wescom Credit Union. На главной странице есть раздел, который позволяет мне войти в свой счет в онлайн-банке. Следовательно, корневая страница принудительно использует SSL.

Подумайте об этом так: будет ли передаваться конфиденциальная личная информация? Если да, включите SSL. В противном случае все будет в порядке.

Не только переданы, но и представлены и собраны. Незащищенная (без использования TLS / SSL) форма отправки данных на страницу SSL - не лучшая идея.

Alexander 20.09.2008 13:59

Почему? Если целевой URL-адрес является URL-адресом HTTPS, данные будут зашифрованы, как только будет нажата кнопка отправки (а также как только браузер скомпилирует запрос POST). Вы, конечно, можете безопасно собирать данные по HTTP и отправлять по HTTPS.

blowdart 20.09.2008 15:44

Потому что для пользователя не очевидно, что форма будет отправлена ​​на защищенный сервер. Каждый раз, когда вы собираете конфиденциальные данные, форма должна находиться на защищенном сервере, чтобы в этот момент появлялся значок замка.

Mike Dimmick 20.09.2008 22:30

Кроме того, у пользователя нет гарантии, что он будет зашифрован или даже отправлен на правильный сайт. Насколько он знает, прямо сейчас он мог находиться на фиктивном сайте.

AviD 20.09.2008 23:11

Чтобы уточнить AviD, если сама страница входа не представлена ​​на странице HTTPS, то нет никаких гарантий, что MITM не внедрил некоторый javascript для регистрации введенного имени пользователя и пароля или даже просто полностью изменил целевой URL.

Kibbee 21.09.2008 22:06

Я перенаправляю свои сайты на SSL только тогда, когда это требует от пользователя ввода конфиденциальной информации. С корзиной покупок, как только им нужно заполнить страницу своей личной информацией или данными кредитной карты, я перенаправляю их на страницу SSL. Для остальной части сайта это, вероятно, не нужно - если они просто просматривают информацию / продукты на вашем коммерческом сайте.

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

Браузеры также иногда имеют другую политику кеширования для HTTPS, чем для HTTP.

Но можно поместить их в HTTPS, как только они войдут в систему или незадолго до этого. В момент, когда сайт становится персонализированным и неанонимным, с этого момента он может быть HTTPS.

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

Я согласен - в тот момент, когда сайт обрабатывает данные, относящиеся к их личности, это должно происходить через ssl.

roo 20.09.2008 13:44

Просмотр TLS-соединения не имеет ощутимых накладных расходов для клиента или сервера и включение HTTPS улучшает конфиденциальность пользователей защищает ваш сайт от изменен в пути интернет-провайдерами и операторами базовой сети. Если HTTP / 2 включен, TLS может даже улучшить производительность веб-страницы.

Kevin Chen 23.04.2016 06:37

SSL требует значительных вычислительных ресурсов и по возможности не должен использоваться для передачи больших объемов данных. Поэтому было бы лучше включить его на этапе оформления заказа, когда пользователь будет передавать конфиденциальную информацию.

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

Bob Somers 20.09.2008 12:04

Если у вас есть весь сайт под SSL, то это будет медленнее, чем правильно - только там, где это необходимо.

Joe Ratzer 20.09.2008 13:18

Я полностью согласен с @Richie_W. SSL значительно замедляет работу! Недавно я собирался перевести весь свой сайт на SSL, но после тестирования решил не делать этого. В среднем при использовании компьютерных браузеров мои страницы загружаются за 1,5 с по HTTP, но за 5 с по HTTPS. При использовании мобильных браузеров через сеть 3G цифры 17 и 45 соответственно. Я обнаружил, что самый большой фактор замедления - это дополнительные круговые обходы, необходимые для согласования SSL. Например, загрузка изображения размером 20 КБ может занять 80 мс, а подтверждение SSL - 700 мс. Я также обнаружил, что кеширование SSL несовместимо между браузерами.

Clint Pachl 12.07.2011 02:23

Как правило, каждый раз, когда вы передаете конфиденциальные или личные данные, вы должны использовать SSL - например, добавление товара в корзину, вероятно, не требует SSL, вход в систему с вашим именем пользователя / паролем или ввод данных CC должны быть зашифрованы.

В нашей организации есть три классификации приложений:

  • Низкое влияние на бизнес - отсутствие PII, хранение открытого текста, передача открытого текста, отсутствие ограничений доступа.
  • Среднее влияние на бизнес - нетранзакционные PII, например Адрес электронной почты. хранение в открытом виде, SSL от центра обработки данных к клиенту, открытый текст в центре обработки данных, ограниченный доступ к хранилищу.
  • Высокое влияние на бизнес - транзакционные данные, например SSN, кредитная карта и т. д. SSL внутри и за пределами центра обработки данных. Зашифрованное и проверенное хранилище. Проверенные приложения.

Мы используем эти критерии для определения разделения данных и определения того, какие аспекты сайта требуют SSL. Вычисление SSL выполняется либо на сервере, либо с помощью ускорителей, таких как Netscaler. По мере увеличения уровня PII возрастает сложность аудита и моделирования угроз.

Как вы понимаете, мы предпочитаем создавать приложения LBI.

Ответ принят как подходящий

Я лично придерживаюсь принципа «SSL без проблем».

Если ваш пользователь никогда не вводит номер кредитной карты, конечно, нет SSL.

Но есть неотъемлемая возможная утечка безопасности из-за воспроизведения файлов cookie.

  1. Пользователь посещает сайт, и ему назначается файл cookie.
  2. Пользователь просматривает сайт и добавляет данные в корзину (с помощью файлов cookie)
  3. Пользователь переходит на страницу оплаты, используя куки.

Именно здесь возникает проблема, особенно если вам приходится самостоятельно вести переговоры об оплате.

Вы должны передавать информацию из незащищенного домена в защищенный и обратно без каких-либо гарантий защиты.

Если вы сделаете что-то глупое, например, поделитесь одним и тем же файлом cookie с небезопасным, как и с безопасным, вы можете обнаружить, что некоторые браузеры (справедливо) просто полностью уронить cookie (Safari) в целях безопасности, потому что, если кто-то нюхает этот файл cookie в открытом , они могут подделать его и использовать в безопасном режиме, понизив вашу замечательную безопасность SSL до 0, и если данные карты когда-либо будут даже временно сохранены в сеансе, у вас есть опасная утечка, ожидающая произойти.

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

Небольшое исправление - браузеры должны сохранять cookie между безопасным и небезопасным, что само по себе является риском для приложения. Что делать, если вы этого не хотите - отметьте свой файл cookie как "безопасный" - но тогда у вас возникнет проблема, как разделить корзину между ними ...

AviD 20.09.2008 23:27

Не могли бы вы создать файл cookie только для безопасного соединения (в дополнение к небезопасному cookie для входа), который отправляется через безопасное соединение при входе в систему и требует, чтобы этот файл cookie был выписан?

menko 08.07.2009 09:19

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

Когда-то сниффинг был на исходе из-за полностью коммутируемых проводных сетей, где вам пришлось бы очень усердно работать, чтобы захватить чужой трафик (в отличие от сетей, использующих концентраторы), но он возвращается из-за беспроводных сетей, которые создают широковещательная среда еще раз упростит захват сеанса, если трафик не зашифрован.

Вы слышали о спуфинге ARP? Я понимаю, что есть защита от этого, но я бы не сказал, что вам «нужно очень много работать, чтобы захватить чужой трафик».

KovBal 31.05.2009 10:47

Да, я слышал о спуфинге ARP. «Очень сложная» часть спорна. Я больше имел в виду тот факт, что массовое слежение между интернет-провайдерами не очень возможно / распространено (надеюсь), но вы полностью правы: обнюхивание LAN вполне возможно с использованием спуфинга ARP.

Grey Panther 01.06.2009 11:30

Я всегда делал это на всем сайте.

У полноценного сайта https есть один серьезный недостаток - это не скорость (это нормально).

Будет очень сложно запустить Youtube, ящики «Нравится» и т. д. Без предупреждения о небезопасности.

Мы уже два года работаем с полностью защищенным веб-сайтом и совершаем покупки, и это самый большой недостаток. Нам удалось заставить Youtube работать сейчас, но «Добавить это» все еще остается большой проблемой. И если они что-то изменят в протоколе, может быть, все наши фильмы на Youtube будут пустыми ...

Другие вопросы по теме