Обеспечение частей HTTP-запроса?
-
08-10-2019 - |
Вопрос
Как можно закрепить части запроса HTTP, скажем, их идентификатор сеанса? Я знаю, что вы можете использовать HTTPS, но затем ваши серверы должны расшифровать все запросы. Разве это не было бы идеально, чтобы зашифровать только необходимые части запроса?
Есть ли какие-либо рамки или ресурсы, которые позволяют вам или сообщить вам, как это сделать?
Решение
HTTPS - это правильный инструмент для использования. Вычислительная нагрузка дешифрования пакетов очень низкая. Google по умолчанию изменился на HTTPS по умолчанию для всего Gmail ранее в этом году, и они сообщают, что нагрузка ЦП на их серверах для шифрования / дешифрования SSL составляет около 1%.
Если вы только шифруете часть потока, у вас все еще есть проблема атак на средних и воспроизведении. SSL - единственный способ предотвратить их. Это не имеет значения, если идентификатор сеанса зашифрован. Если человек-в-середине может запечатлеть его, он может повторно использовать его в зашифрованной форме, и сервер не знал бы разницы.
Вот пост блогов О опыте Google с момента переключения Gmail на 100% SSL.
Другие советы
Https все или ничего. Если не все элементы на странице закреплены HTTPS, то пользователи обычно получат «сломанный замок» в верхнем левом углу. Это потому, что злоумышленник может использовать это, чтобы ввести атаку, аналогичную XSS и получить document.cookie
стоимость.
Дальше больше, если 1 запрос отправляется с идентификатором сеанса, то злоумышленник может получить значение и аутентифицировать, как вы.