2015-06-01 3 views
-1

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

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

+0

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

+1

Лучшим сайтом, чтобы задать этот вопрос, является security.stackexchange.com. Но я рекомендую вам сначала узнать больше о том, как работает TLS, читая http://security.stackexchange.com/questions/20803/how-does-ssl-tls-work, особенно части о сертификатах и ​​аутентификации. –

+0

Ваше первое предложение неверно. Клиент не шифрует или не передает ключ сеанса, он согласовывается по протоколу соглашения о ключах. Ваш вопрос основан на недоразумении. – EJP

ответ

1

Я не уверен, что у вас есть это право. Соединение должно быть:

client <--> server 

клиент знает, что он общается с сервером в связи с SSL рукопожатия и проверки сертификата сервера. Ваш вопрос в том, что произойдет, если:

client // MiTM <--> server 

с отключенным клиентом клиентом. В этой ситуации стандартная аутентификация и авторизация сервера будут рассматривать MiTM как неавторизованный клиент и не предоставлять ему никаких конфиденциальных данных.

Возможно, вы спрашиваете, что произойдет, если начальное соединение что-то вроде:

client <--> MiTM <--> server 

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

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

Короче говоря, SSL работает.

+0

Я говорю о ситуации client // MiTM <--> server В этой ситуации, чтобы предотвратить связь с MitM сервером с использованием метода авторизации? –

+0

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

+0

Я работаю на IoT, в котором два одноранговых устройства будут аутентифицировать друг друга, отправив друг другу уникальный идентификатор и проверив идентификатор другого с сервером. Что я могу сделать, чтобы обеспечить передачу уникального идентификатора? –

 Смежные вопросы

  • Нет связанных вопросов^_^