Der aktuelle Websocket-RFC erfordert, dass Websocket- Clients beim Senden alle Daten innerhalb von Frames maskieren (der Server muss dies jedoch nicht). Der Grund, warum das Protokoll auf diese Weise entwickelt wurde, besteht darin, zu verhindern, dass Rahmendaten durch böswillige Dienste zwischen Client und Server (Proxys usw.) geändert werden. Der Maskierungsschlüssel ist solchen Diensten jedoch weiterhin bekannt (er wird zu Beginn jedes Frames pro Frame gesendet).
Bin ich falsch anzunehmen, dass solche Dienste den Schlüssel weiterhin zum Entlarven, Ändern und erneuten Maskieren des Inhalts verwenden können, bevor der Frame an den nächsten Punkt übergeben wird? Wenn ich mich nicht irre, wie behebt dies die vermeintliche Sicherheitslücke?