ZRTP fornisce una protezione utile, dato che il SAS non è verificato?

1

In primo luogo, alcuni importanti retroscena. Sto producendo una versione aziendale di un client IM / VOIP / Screensharing che usa l'Open Source Jitsi . Stiamo per utilizzare un server centrale e abbiamo già confermato che la crittografia TLS è buona e che i messaggi di test XMPP non vengono trasmessi in chiaro (Wireshark). Tuttavia mi sono reso conto che gli streaming P2P (chiamate, condivisione dello schermo, video) non sono protetti da questo.

Desideriamo migliorare la sicurezza di questo sistema senza comprometterne l'usabilità, quindi abbiamo esaminato il supporto di Jitsi per il protocollo ZRTP. Tuttavia, l'aggiunta del SAS è un sistema troppo semplice per gli utenti quotidiani che non utilizzeranno mai questo sistema e troveranno la sua inclusione nell'interfaccia utente confusa rispetto a Skype / GoogleTalk / etc. Per questo motivo abbiamo deciso di rimuovere la chiave SAS dall'interfaccia utente.

Sono consapevole che questo ci apre al potenziale di un MITM Direct Relay durante lo scambio ZRTP iniziale, ma realisticamente non penso di poter fare meglio di così in un modo user-friendly che sia accettabile per il business.

Non posso limitare l'accesso a questo strumento a un singolo sito: il nostro traffico attraverserà lo stagno tra il Regno Unito e gli Stati Uniti. Per questo motivo dobbiamo supporre che alcuni di questi luppoli intermedi siano al di fuori del nostro controllo.

Quello che sto chiedendo è che il protocollo ZRTP offra altri vantaggi (chiudendo i vettori di attacco non discussi in altro modo)? O il TLS lo gestisce? EDIT: Jingle non usa e non può usare TLS, sono piuttosto sciocco pensando che potrebbe. Ho confermato che il client Jitsi crittografa il traffico del testo attraverso le specifiche XMPP, ma non ho provato nessuna delle funzionalità Peer-to-Peer basate su Jingle: questo TLS è predefinito? Sto leggendo le specifiche e non riesco a capire se la connessione P2P di Jingle è avvolta da un handshake TLS esterno, dato che il payload è RTP peer-to-peer che non viene convogliato attraverso il server.

Grazie in anticipo, e scuse per l'acronimo di post pesante (come puoi dire che sono stato al ginocchio nelle specifiche del protocollo per un po 'di tempo e non è davvero la mia area di competenza!)

EDIT2: anche Jitsi sembra supportare SDES, che negozia le chiavi usando la connessione iniziale con il server. Sto andando a indagare sulla fattibilità di questa tecnica.

EDIT3: Il sistema SDES sembra funzionare. Mi piacerebbe vedere alcuni Wireshark Capture per essere sicuro che i client stiano facendo ciò che dovrebbero prima che questo venga implementato, ma tutto sembra essere solido. Ho risolto il mio problema ma lascerò aperta la domanda poiché è ancora valida e sono ancora interessata da un punto di vista accademico.

    
posta Toby Pinder 02.09.2013 - 12:28
fonte

0 risposte

Leggi altre domande sui tag