SSL с прокси-сервером (https)

#ssl #proxy

Вопрос:

Мне было интересно, защищает ли SSL (через HTTPS) соединение при использовании ПРОКСИ-сервера от администраторов прокси-сервера, чтобы они не могли видеть содержимое?

Ответ №1:

По сути, при выполнении SSL-соединений с прокси-сервером вы подключаетесь к прокси-серверу и используете что-то вроде CONNECT HTTP-глагола, который просто запрашивает прокси-сервер для подключения к удаленному хосту на указанном порту. В этот момент вы не в безопасности; вы можете предположить, что прокси прослушивает разговор. Затем вы запускаете зашифрованный сеанс с удаленным хостом, используя открытый ключ этого хоста, или, скорее, удаленный хост использует свой закрытый ключ, который вы можете сверить с его открытым ключом, не доверяя прокси-серверу. Алгоритм рукопожатия таков, что прокси-сервер не может видеть, что находится внутри зашифрованного канала (поскольку они не знают сеансовых ключей, которые каждая сторона выбрала как часть протокола SSL). Все, что может сделать прокси-сервер,-это ввести случайный обнаруживаемый шум или вызвать разрыв соединения; они могут совершать атаки типа «отказ в обслуживании», но не могут повлиять на целостность или секретность любой фактически переданной информации.

В этом вся прелесть использования правильного криптопротокола, такого как SSL.

Комментарии:

1. Отлично, вот что я подумал 🙂 Они в принципе могут прервать соединение, но они не смогут увидеть реальное содержимое msgs между мной и сервером.

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