8. Security Considerations (Considerazioni sulla sicurezza)
8. Security Considerations (Considerazioni sulla sicurezza)
L'IETF ha pubblicato documenti separati [RFC8827] [RFC8826] che descrivono l'architettura di sicurezza per WebRTC nel suo insieme. Il resto di questa sezione descrive le considerazioni sulla sicurezza per questo documento.
Sebbene formalmente l'interfaccia JSEP sia un'API, è meglio considerarla come un protocollo Internet, con il JavaScript dell'applicazione considerato non affidabile dal punto di vista dell'implementazione JSEP. Pertanto, si applica il modello di minaccia di [RFC3552]. In particolare, JavaScript può chiamare l'API in qualsiasi ordine e con qualsiasi input, inclusi quelli dannosi. Questo è particolarmente rilevante quando consideriamo l'SDP che viene passato a setLocalDescription. Mentre l'uso corretto dell'API richiede che l'applicazione passi SDP derivato da createOffer o createAnswer, non c'è garanzia che le applicazioni lo facciano. L'implementazione JSEP DEVE essere preparata al fatto che JavaScript possa invece passare dati falsi.
Al contrario, il programmatore dell'applicazione deve essere consapevole che JavaScript non ha il controllo completo del comportamento dell'endpoint. Un caso che merita particolare menzione è che modificare i candidati ICE nell'SDP o sopprimere i candidati in modalità trickle non ha il comportamento atteso: le implementazioni eseguiranno comunque controlli da quei candidati anche se non vengono inviati all'altro lato. Pertanto, ad esempio, non è possibile impedire al peer remoto di conoscere il proprio indirizzo IP pubblico rimuovendo i candidati server-reflexive. Le applicazioni che desiderano nascondere il proprio indirizzo IP pubblico DEVONO invece configurare l'agente ICE per utilizzare solo candidati relay.