В соответствии с действующим RFC для Websocket, клиенты Websocket при отправке маскируют все данные внутри фреймов (но сервер не обязан). Причина, по которой протокол был разработан таким образом, заключается в том, чтобы предотвратить изменение данных фрейма вредоносными службами между клиентом и сервером (прокси и т. Д.). Однако маскирующий ключ все еще известен таким службам (он отправляется для каждого кадра в начале каждого кадра).
Неправильно ли я предположить, что такие сервисы все еще могут использовать ключ для снятия маскировки, изменения и затем перемаскирования содержимого перед передачей кадра в следующую точку? Если я не ошибаюсь, как это исправить предполагаемую уязвимость?