ssl безопасен в обоих направлениях? - PullRequest
2 голосов
/ 25 февраля 2011

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

в теории .. можем ли мы вставить какие-либо данные в ответ, отправленный сервером клиенту? ..

Ответы [ 2 ]

6 голосов
/ 25 февраля 2011

Как вы аутентифицируете клиента?SSL клиентские сертификаты?Или какая-то система прикладного уровня (файлы cookie и т. Д.)?

Вот что делает SSL в двух словах:

  • Обсуждает общий сеансовый ключ Диффи-Хелманна между двумя сторонами
  • Имеет ли сервер подписать ключ сеанса и отправить результат клиенту.Как только клиент это проверяет, клиент знает, что MITM отсутствует, и сервер - это тот, кому они говорят.
  • Если клиентские сертификаты включены, клиент должен подписать ключ сеанса и отправить подпись на сервер.,Теперь сервер знает, что MITM отсутствует, и клиент - это тот, о ком говорят.
  • Шифрует все данные в обоих направлениях, используя общий сеансовый ключ

Обычно при использовании SSL выне будет использовать клиентские сертификаты.Строго говоря, сервер не знает, является ли соединение MITM.Однако большинство клиентов будут отключаться, если сертификат сервера плохой.Сервер предполагает, что если клиент продвигается с соединением, MITM отсутствует.Даже если Мэллори, занимаясь MITM, решит не распространять разъединение с клиентом, у него сейчас нет новой информации;все, что он сделал, подключен к самому серверу.Без перехвата файла cookie сеанса клиента или другой информации аутентификации (которая отправляется клиентом только после проверки безопасности соединения) MITM бесполезен.

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

0 голосов
/ 25 февраля 2011

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

SSL может быть "безопасным в обоих направлениях", если вы используете взаимная аутентификация также называется двусторонний SSL .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...