Passa al contenuto principale

3. Modello di minaccia del browser

3. Modello di minaccia del browser

Il modello di sicurezza Web [RFC6454] si basa sul concetto di "origini" (origins). In breve, un'origine consiste in una tupla di protocollo, host e porta; ad esempio, l'origine di https://example.com/ è (https, example.com, 443). (Vedere [RFC6454] per i dettagli). Quando un browser invia una richiesta a una determinata origine, agisce per conto dell'entità che ha avviato la richiesta (ad esempio, uno script da https://trusted.com/). La regola di sicurezza fondamentale del Web è la Same-Origin Policy (SOP), che afferma che le risorse di un'origine non dovrebbero essere accessibili agli script di un'altra origine, a meno che l'origine della risorsa non acconsenta esplicitamente a tale accesso (ad esempio, tramite Cross-Origin Resource Sharing (CORS) [fetch]).

WebRTC introduce un nuovo canale di comunicazione per il Web, insieme a HTTP (e WebSocket). Questo canale differisce da HTTP in diversi modi importanti:

  1. Consente l'invio di dati arbitrari (tramite DataChannel).
  2. Consente l'invio di media (audio e video).
  3. Generalmente instrada su UDP (sebbene sia supportato anche TCP).
  4. Può essere peer-to-peer (P2P), il che significa che i dati vanno direttamente tra i browser anziché tramite un server.

Queste differenze introducono nuove minacce che devono essere mitigate dall'architettura WebRTC.

3.1 Nuovi bersagli

Poiché WebRTC consente l'invio di dati a indirizzi IP e porte arbitrari (soggetti ai controlli ICE [RFC8445]), script dannosi potrebbero potenzialmente utilizzare il browser dell'utente per attaccare servizi che non sono accessibili da Internet pubblico ma sono accessibili dalla macchina dell'utente (ad esempio, intranet, router domestici). Questo è noto come attacco "biglietto da visita" (calling card).

3.2 Nuovi tipi di dati

WebRTC consente l'invio di audio e video in tempo reale. Se un sito dannoso può accedere alla fotocamera e al microfono dell'utente senza consenso, può spiare l'utente.

3.3 Denial of Service

Poiché WebRTC può generare traffico a larghezza di banda elevata, potrebbe potenzialmente essere utilizzato per attacchi Denial of Service (DoS).