Il traffico web criptato con Transport Layer Security (TLS) rappresenta una gran parte di tutto il traffico web e gli autori delle minacce possono utilizzare questi canali criptati per lanciare attacchi dannosi. Di conseguenza, è fondamentale controllare il traffico criptato con TLS prima di inoltrarlo alla destinazione.
Secure Web Proxy offre un servizio di ispezione TLS che consente di intercettare il traffico TLS, ispezionare la richiesta criptata e applicare i criteri di sicurezza.
In base alle regole di sicurezza implementate e alla configurazione dell'ispezione TLS, la soluzione Secure Web Proxy stabilisce due connessioni sicure, una con il client e un'altra con il server esterno. La soluzione Secure Web Proxy esamina quindi il traffico tra le due connessioni sicure. Dopo la verifica, puoi applicare al traffico criptato gli stessi controlli di filtro e sicurezza che si applicano al traffico non criptato.
Ruolo delle autorità di certificazione nell'ispezione TLS
Per determinare se Secure Web Proxy deve ispezionare una connessione TLS, controlla il flag tls_inspection_enabled
nelle singole regole del criterio di sicurezza. Se il flag è impostato e viene rilevata una connessione TLS, Secure Web Proxy genera un nuovo certificato server. Invia questo certificato a Certificate Authority Service (CAS) per la firma da parte del pool di autorità di certificazione (CA) subordinate.
Questo certificato viene quindi presentato al client e viene stabilita una connessione TLS. Il certificato generato viene memorizzato nella cache per un breve periodo di tempo per essere utilizzato nelle connessioni successive allo stesso host.
Se vuoi ispezionare il traffico TLS, devi generare un certificato del server per l'host a cui il client sta tentando di connettersi. Questo certificato del server deve essere firmato da un'autorità di certificazione privata gestita dall'organizzazione. Solo i client configurati per considerare attendibile questa CA privata considerano attendibili questi certificati del server generati. Sono inclusi browser e client HTTP incorporati. Di conseguenza, l'ispezione TLS può essere utilizzata solo per intercettare e ispezionare le connessioni TLS dai client su cui la tua organizzazione ha il controllo amministrativo.
Non tutte le connessioni TLS possono essere intercettate correttamente, anche sulle macchine su cui l'organizzazione ha il controllo amministrativo. Questo perché alcuni client (in particolare quelli incorporati in altre applicazioni) sono hardcoded per accettare solo certificati server specifici o quelli firmati da CA specifiche (una pratica nota come pinning dei certificati). Gli aggiornamenti software di Microsoft Windows, macOS e Google Chrome sono alcuni esempi. Queste connessioni non vanno a buon fine in presenza di ispezione TLS. Questo accade perché la chiave pubblica e la catena CA del certificato del server che Secure Web Proxy presenta al cliente non corrispondono ai parametri archiviati localmente.
Se una regola è configurata per ispezionare il traffico TLS, ma il client non considera attendibili i certificati di ispezione presentati da Secure Web Proxy, la connessione non va a buon fine. In questi casi, è noto che l'ispezione TLS interrompe le connessioni client-server anche se il server è attendibile. Per risolvere il problema, puoi aggiungere regole per aggirare l'ispezione TLS in base a criteri specifici. Puoi anche limitare l'ispezione TLS a host di destinazione specifici (utilizzando FQDN), origini (utilizzando tag sicuri, account di servizio o indirizzo IP) e utilizzando l'attributo SessionMatcher
di una regola.
Funzionalità supportate
L'ispezione TLS di Secure Web Proxy supporta le seguenti funzionalità:
- Integrazione stretta con CAS, un repository altamente disponibile e scalabile per le CA private.
- La possibilità di utilizzare la tua radice di attendibilità, se necessario. Puoi anche utilizzare una CA radice esistente per firmare le CA subordinate detenute dai CAS. Se preferisci, puoi generare un nuovo certificato radice in CAS.
- Criteri di decrittografia granulare utilizzando
SessionMatcher
all'interno delle regole dei criteri di Secure Web Proxy. Questi criteri includono gli host corrispondenti presenti negli elenchi di URL, nelle espressioni regolari, negli intervalli di indirizzi IP e in espressioni simili. Se necessario, i criteri possono essere combinati con espressioni booleane. - Ogni criterio Secure Web Proxy può essere configurato con la propria policy di ispezione TLS e il proprio pool di CA. In alternativa, più criteri Secure Web Proxy possono condividere un unico criterio di ispezione TLS.
Casi d'uso comuni
Per attivare l'ispezione TLS, puoi utilizzare uno dei seguenti metodi:
Utilizza una CA radice esistente per firmare le CA subordinate presenti nel CAS. Una CA subordinata contenuta nel CAS viene utilizzata per firmare i certificati server generati in fase di esecuzione.
Utilizza una CA radice esistente detenuta esternamente (non in CAS) per firmare le CA subordinate. Quando le CA subordinate sono firmate dalla CA radice, puoi utilizzarle per firmare i certificati server generati in fase di esecuzione.
Utilizza un certificato radice generato all'interno di CAS. Dopo aver creato il certificato radice, crea una CA subordinata firmata dalla nuova CA radice. Questa CA subordinata viene utilizzata per firmare i certificati server generati in fase di esecuzione.
Per ulteriori informazioni su questi metodi, consulta Creare un pool di CA subordinate.