Implicazioni sulla sicurezza di consentire ai siti Web di aprire socket TCP

4

Stavo leggendo un post sui socket tcp nel browser qui e uno dei motivi citati per non consentirlo è che consentire ai siti Web di aprire socket TCP sarebbe un rischio per la sicurezza, ma non descrive in dettaglio quale sarebbe il rischio.

Quali tipi di problemi di sicurezza verrebbero aperti consentendo ai siti Web di aprire socket TCP e in che modo non sono applicabili ai websocket?

    
posta Qwertie 30.01.2018 - 03:58
fonte

1 risposta

6

Consentire socket TCP arbitrari provenienti dal browser web significa che un utente malintenzionato può utilizzare il browser come trampolino per connettersi a servizi arbitrari sulla rete locale degli utenti. Ad esempio, possono essere server di posta locali che spesso sono configurati per fidarsi di qualsiasi sistema interno per inviare posta e quindi possono essere utilizzati in modo improprio per inviare mail di phishing che sembrano provenire da un sistema locale o semplicemente per inviare spam. Ma anche altri servizi potrebbero essere interessati.

I WebSocket sono invece un protocollo a livello di applicazione su TCP. Iniziano con una challenge-response basata su HTTP e continuano con un protocollo che usa frame che sono inoltre corredati di una chiave casuale precedentemente stabilita. Questo è fatto specificamente in modo che questo protocollo non possa essere interpretato erroneamente da ignari server TCP.

how are they not applicable to websockets?

Anche se è vero che i WebSocket sono considerati molto meno pericolosi del semplice TCP, non sono innocenti. Se è presente un'applicazione interna a cui è possibile accedere utilizzando misure esplicite WebSockets, è necessario adottare misure sul lato server per limitare l'accesso a questa applicazione. I WebSocket non sono coperti dalla politica di origine identica nel browser, cioè è possibile connettere tra loro una connessione incrociata a un server WebSocket e qualsiasi restrizione a questa necessità deve essere utilizzata sul lato server. Vedi anche Cross-Site WebSocket Hijacking (CSWSH) .

    
risposta data 30.01.2018 - 06:12
fonte

Leggi altre domande sui tag