Implicazioni di sostituzione delle applet Java con il server Websocket lato client

1

Non sono un esperto di sicurezza, ma conosco alcuni concetti.

Abbiamo un'applicazione Web che attualmente utilizza applet Java per eseguire alcune operazioni sui file nel file system del client (sfoglia, crea, carica e scarica). Poiché il supporto dell'applet Java è stato rimosso. Stiamo progettando di andare per il server websocket lato client. Che verrà installato sul lato client quando viene tentata la prima volta tale operazione.

Sono preoccupato per la sicurezza di tale sistema. Fondamentalmente avremo 3 entità coinvolte.

  1. WebServer
  2. Browser
  3. Server Websocket client (noto anche come LocalServer)

Alcuni punti che sto considerando:

  1. Il plug-in dovrebbe accettare solo le connessioni da localhost
  2. Logica di autenticazione
    1. WebServer invierà qualche chiave di identificazione univoca al browser
    2. Il browser invierà lo stesso a LocalServer
    3. LocalServer inoltra lo stesso a WebServer per l'autenticazione.
    4. Accetterà la connessione dal browser solo se autenticato da WebServer.

Un punto importante è che il furto di dati non dovrebbe accadere quando il browser visita una pagina malevola. In pratica, LocalServer dovrebbe connettersi solo alle websocket della pagina WebServer.

Quali ulteriori punti devo considerare per rafforzare questo?

Se possibile, informa altri punti di considerazione per questo sistema.

Aggiornamento 1: LocalServer: può caricare, scaricare file solo dal server Web specifico.

    
posta AEonAX 26.06.2016 - 09:38
fonte

2 risposte

2

Stai provando a fare l'impossibile qui. Stai avendo il server localhost autenticare l'applicazione client in esecuzione nel browser. Questo è impossibile da eseguire in sicurezza.

Quello che vorresti è scrivere un plug-in / componente aggiuntivo per il browser. Il plug-in / add-on del browser dovrebbe attivarsi solo quando visita siti autorizzati.

    
risposta data 26.06.2016 - 10:25
fonte
0

@AEonAX: puoi usare il metodo del doppio token di handshake per utilizzare l'autorizzazione e occuparti della sicurezza. È anche possibile eseguire la crittografia del token.

Sheldon

    
risposta data 18.07.2016 - 13:44
fonte

Leggi altre domande sui tag