Condividi tramite


Criteri di protezione estesa

Questo articolo descrive l'esempio ExtendedProtection.

La protezione estesa è un'iniziativa di sicurezza per la protezione dagli attacchi MITM (Man-In-The-Middle). Un attacco MITM è una minaccia per la sicurezza in cui un MITM accetta le credenziali di un client e lo inoltra a un server.

Discussione

Quando le applicazioni eseguono l'autenticazione tramite Kerberos, Digest o NTLM tramite HTTPS, viene stabilito un canale TLS (Transport Level Security) e quindi viene eseguita l'autenticazione usando il canale sicuro. Tuttavia, non esiste alcuna associazione tra la chiave di sessione generata da SSL e la chiave di sessione generata durante l'autenticazione. Qualsiasi MITM può stabilire se stesso tra il client e il server e avviare l'inoltro delle richieste dal client, anche quando il canale di trasporto stesso è sicuro, perché il server non ha modo di sapere se il canale sicuro è stato stabilito dal client o da un MITM. La soluzione in questo scenario consiste nell'associare il canale TLS esterno al canale di autenticazione interno in modo che il server possa rilevare se è presente un MITM.

Annotazioni

Questo esempio funziona solo quando è ospitato in IIS.

Annotazioni

I passaggi seguenti sono specifici di Windows 7.

Per configurare, compilare ed eseguire l'esempio

  1. Installare Internet Information Services dal Pannello di controllo, Installazione applicazioni, Funzionalità di Windows.

  2. Installare Autenticazione di Windows in Funzionalità di Windows, Internet Information Services, Servizi World Wide Web, Sicurezza e Autenticazione di Windows.

  3. Installare l'attivazione HTTP di Windows Communication Foundation nelle funzionalità di Windows, Microsoft .NET Framework 3.5.1 e Attivazione HTTP di Windows Communication Foundation.

  4. Questo esempio richiede che il client stabilisca un canale sicuro con il server, quindi richiede la presenza di un certificato server che può essere installato da Gestione Internet Information Services (IIS).

    1. Apri il Gestore IIS. Aprire Certificati server, che viene visualizzato nella scheda Visualizzazione funzionalità quando è selezionato il nodo radice (nome computer).

    2. Ai fini del test di questo esempio, creare un certificato autofirmato. Se non vuoi che il browser ti avvisi del fatto che il certificato non è sicuro, installa il certificato nell'archivio delle autorità di certificazione radice attendibili.

  5. Aprire il riquadro Azioni per il sito Web predefinito. Fare clic su Modifica sito, associazioni. Aggiungere HTTPS come tipo se non è già presente, con il numero di porta 443. Assegnare il certificato SSL creato nel passaggio precedente.

  6. Costruire il servizio. In questo modo viene creata una directory virtuale in IIS e vengono copiati i file .dll, svc e .config necessari affinché il servizio sia ospitato sul Web.

  7. Apri il Gestore IIS. Fare clic con il pulsante destro del mouse sulla directory virtuale (ExtendedProtection), creata nel passaggio precedente. Selezionare Converti in applicazione.

  8. Aprire il modulo Autenticazione in Gestione IIS per questa directory virtuale e abilitare l'autenticazione di Windows.

  9. Aprire Impostazioni avanzate in Autenticazione di Windows per questa directory virtuale e impostarla su Obbligatorio.

  10. È possibile testare il servizio accedendo all'URL HTTPS da una finestra del browser (specificare un nome di dominio completo). Se si vuole accedere a questo URL da un computer remoto, assicurarsi che il firewall sia aperto per tutte le connessioni HTTP e HTTPS in ingresso.

  11. Aprire il file di configurazione client e specificare un nome di dominio completo per l'attributo dell'indirizzo del client o dell'endpoint che sostituisce <<full_machine_name>>.

  12. Avvia il client. Il client comunica con il servizio, che stabilisce un canale sicuro e usa la protezione estesa.