2013-11-22 4 views
2

Это выглядит так, как будто SignalR использует GUIDs как идентификатор соединения для клиентовЯвляются ли идентификаторы соединения SignalR криптографически безопасными?

Хотя поведение может быть изменен, структура будет использовать GUID по умолчанию:

[ref, page 30]

и мы говорят, что если человек может угадать идентификатор соединения другого клиента, то они могут имитировать себя.

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

[ref]

ли эти соединения ID GUIDs криптографически безопасный/случайный? Если бы это не выглядело как (сверкающе очевидная) дыра в безопасности.

ответ

0

Я думаю, что клиент должен всегда отправлять свой идентификатор на сервер. Хорошим способом сделать это более безопасным может быть использование WSS вместо WS для websocket и Https вместо http для резервных копий.

Имеет ли смысл?

+0

Thankyou imperugo, но я беспокоюсь о том, что злоумышленники угадывают идентификатор соединения, а не от них, обнюхивая его. Если они смогут нюхать его, тогда неважно, было ли это порождено неописуемым образом. –

0

В соответствии с signalr documentation идентификаторы соединения отправляются как часть токена подключения, который зашифрован. Они используют защиту данных DPAPI для шифрования. Таким образом, идентификаторы соединения не должны быть надежно сгенерированы и aren't. Тот факт, что документация signalr по безопасности (то же самое, что указано выше) указывает, что они не должны использоваться совместно, тоже запутывает меня.

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

Не уверен, что с этим делать. На основе кода должно быть безопасно обмениваться идентификаторами подключений, поскольку маркеры шифруются. Вы можете увидеть шифрование/дешифрование/проверку в том же классе, где генерируется идентификатор (вторая ссылка).

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