2014-11-06 18 views
21

Ich habe gelesen, dass WSS nur auf HTTP funktioniert, und dass WSS sowohl auf HTTP als auch auf HTTPS funktioniert. Sind WSS-Verbindungen (Secure Web Socket) auf einem HTTP-Server genauso sicher wie auf einem HTTPS-Server? Ist eine Web Socket Secure (WSS) -Verbindung immer noch über TLS/SSL verschlüsselt, wenn die Website/der Server dies nicht ist?WSS auf HTTP vs WSS auf HTTPS

+0

"* Ich weiß wss funktioniert sowohl auf http und https *" Huh? –

+0

Vielleicht hätte ich sagen sollen "Ich habe das gelesen" anstelle von "Ich weiß"? – Isaac

+0

Was David bedeutet, ist, dass die Informationen, die Sie gelesen haben, _ "wss funktioniert sowohl auf http als auch auf https" _, falsch ist. Siehe meine Antwort. –

Antwort

22

Ist eine web socket secure (wss) -Verbindung immer noch verschlüsselt über TLS/SSL, wenn die Website/Server nicht?

Ja.

Sind WSS-Verbindungen (Secure Web Socket) auf einem HTTP-Server genauso sicher wie auf einem HTTPS-Server?

Ja (siehe oben). Eines ist zu beachten: Wenn das HTML/JavaScript, das die sichere WebSocket-Verbindung öffnet, über nicht sicheres HTTP kommt, ist die WebSocket-Verbindung weiterhin sicher, aber ein Angreifer kann das HTML/JavaScript ändern, während es vom Webserver zum Browser gesendet wird . Eine HTTP-Verbindung ist nicht gegen das Schnüffeln oder Ändern von Man-in-the-Middle geschützt.

+0

Ist TCP unabhängig vom Man-in-the-Middle-Angriff? –

+3

Ah einfache TCP-Verbindung (Nicht-TLS) ist verdächtig für t und Man-in-the-Middle-Angriffe. – oberstet

+1

Haben Sie eine Referenz für Ihre erste Antwort? – GoZoner

34

"wss funktioniert sowohl auf http als auch auf https" ??? Das ist eine seltsame Phrase.

wss ist nur sicher, weil es bedeutet "WebSocket-Protokoll über https". Das WebSocket-Protokoll selbst ist nicht sicher. Es gibt kein Secure WebSocket-Protokoll, aber es gibt nur "WebSocket-Protokoll über HTTP" und "WebSocket-Protokoll über HTTPS". Siehe auch this answer.

Als Autor nv-websocket-client (WebSocket-Client-Bibliothek für Java), bezweifle ich auch den Satz „, wenn das HTML/JavaScript, das die sichere WebSocket-Verbindung über HTTP nicht sicheren kommt öffnet, ist die WebSocket-Verbindung noch sicherer " in der Antwort von oberstet.

Lesen Sie RFC 6455 (das WebSocket-Protokoll), um die richtige Antwort zu erhalten. Um ein echter Ingenieur zu werden, vermeiden Sie nicht, RFCs zu lesen. Nur die Suche nach technischen Blogs und StackOverflow nach Antworten bringt Sie nie an den richtigen Ort.

+0

Eine HTML-Seite, die von einem Browser über HTTP (nicht HTTPS) geladen wird und JavaScript enthält, kann sowohl eine nicht sichere (ws) als auch eine sichere (wss) öffnen. Eine HTML-Seite, die über HTTPS geladen wird, kann nur eine wss-Verbindung (keine ws-Verbindung) öffnen. Du musst mir nicht glauben: versuch es einfach. – oberstet