2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 (Не)защищённый WebSocket
Сообщение29.08.2020, 16:44 


21/05/16
4292
Аделаида
Будет ли защищённым и безопасным подключение WebSocket, если клиентский JS выполняет что-то типа let socket = new WebSocket("wss://example.com"), а серверный Node.JS выполняет что-то типа const http = require('http'); const ws = require('ws'); const wss = new ws.Server({noServer: true}); http.createServer(некая_функция).listen(8080) вместо создавания сервера через require('https')?
Я нашел https://stackoverflow.com/questions/267 ... s-on-https, но непонятно, означает ли "if the HTML/JavaScript that opens the secure WebSocket connection comes over non-secure HTTP" только использование клиентом ws вместо wss, или также и использование сервером require('http') вместо require('https')?

 Профиль  
                  
 
 Re: (Не)защищённый WebSocket
Сообщение29.08.2020, 20:54 


27/06/20
337
На форуме по ссылке первый ответ от oberstet можно считать неправильным либо правильным в очень извращенном смысле этого слова.
Цитата:
the WebSocket connection is still secure, but an attacker might modify the HTML/JavaScript while being sent from the Web server to browser. A HTTP connection isn't protected against man-in-the-middle sniffing or modification.
Т.е. oberstet пишет, что соединение по WebSocket будет безопасным, но все могут читать и модицировать пересылаемую по этому соединению информацию. :D
В Вашем серверном коде нет никакого намека на использование TLS-сертификата. Как же wss будет шифровать трафик в "WebSocket Protocol over TLS", как этот протокол называется в RFC 6455, если TLS-сертификат сервером не используется?!
Вы уверены, что клиент по URI на wss постучится в 8080-й порт без подсказки?

 Профиль  
                  
 
 Re: (Не)защищённый WebSocket
Сообщение29.08.2020, 22:49 


21/05/16
4292
Аделаида
ipgmvq в сообщении #1481277 писал(а):
Как же wss будет шифровать трафик в "WebSocket Protocol over TLS", как этот протокол называется в RFC 6455, если TLS-сертификат сервером не используется?!

Т.е. надо все же использовать require('https')?

 Профиль  
                  
 
 Re: (Не)защищённый WebSocket
Сообщение29.08.2020, 23:15 


27/06/20
337
kotenok gav
Выходит, что так.
Я думаю, wss в Вашем коде символизирует не "secure WebSocket", а "WebSocket server".

 Профиль  
                  
 
 Re: (Не)защищённый WebSocket
Сообщение30.08.2020, 11:05 


21/05/16
4292
Аделаида
Э... вообще-то, нет. wss отличается от ws именно безопасностью, насколько я знаю.

 Профиль  
                  
 
 Re: (Не)защищённый WebSocket
Сообщение30.08.2020, 11:41 


27/06/20
337
kotenok gav в сообщении #1481317 писал(а):
Э... вообще-то, нет. wss отличается от ws именно безопасностью, насколько я знаю.
Я имел в виду, что в том единственном месте, где у Вас в серверном коде встречается слово "wss", оно является произвольно выбранным разработчиком названием константы, которая хранит ссылку на созданный объект типа Server библиотеки ws.
Название для этой константны wss в этом коде придумано разработчиком (он мог назвать её как угодно). Вопрос, что для него лично в этом коде символизировала аббревиатура wss для этой константы?! Тут я предположил, что она для него лично обозначала "WebSocket server", потому что хранит ссылку на объект типа Server библиотеки ws.

 Профиль  
                  
 
 Re: (Не)защищённый WebSocket
Сообщение30.08.2020, 11:57 


21/05/16
4292
Аделаида
А, вы об этом. Я имел в виду разницу между клиентскими wss://example.com и ws://example.com.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group