Проверка источников соединения WebSocket - PullRequest
2 голосов
/ 06 сентября 2011

В настоящее время я разрабатываю расширение Google Chrome, которое подключается к нашим серверам через WebSockets, но было страшно, что кто-то сможет взломать наш сервер поддельными данными, поэтому мы стремимся внедрить меры безопасности для предотвращения других источниковот подключения к серверу.

Можно ли каким-либо образом интегрировать меру безопасности в приложение и сервер для проверки соединения с расширением Google Chrome?

Есть ликакие-нибудь другие вещи, о которых мы должны знать, делая это приложение?Любой совет приветствуется.

1 Ответ

3 голосов
/ 06 сентября 2011

В рукопожатии WebSocket есть заголовок «Sec-WebSocket-Origin:» (или, в последнее время, просто «Origin:»). Это установлено браузером как исходный сайт, с которого страница была загружена. Вы можете настроить сервер так, чтобы он принимал соединения только со страниц, созданных на вашем сайте.

Обратите внимание, что это не 100% -ная панацея, потому что кто-то может написать клиент WebSocket, который подделывает поле Origin (поэтому все еще необходим некоторый дополнительный метод аутентификации). Тем не менее, это гарантирует, что обычные браузеры, запускаемые обычными людьми, не могут отправлять вам поддельные данные.

Также обратите внимание, что обычные браузеры все еще могут быть взломаны для участия в DDOS-атаке на ваш сайт, но это верно, независимо от того, поддерживает браузер поддержку WebSocket или нет. Поэтому вы все равно захотите принять обычные меры для защиты от этого.

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