it-swarm.dev

Esiste una cache di stato del certificato SSL / TLS su Windows, IE e Outlook e come è gestita?

Oggi ho modificato il certificato SSL utilizzato da oltre 3000 client Outlook. Nel fare questo ho cambiato il certificato con uno "più vecchio" che aveva lo stesso nome soggetto, scadenza e tutto il resto. Solo l'identificazione personale e uno SAN modificato. Una volta che sono stati segnalati dei problemi, ho ripristinato la modifica. (1 ora)

Sembra che in questo modo si siano bloccate diverse istanze distribuite di Outlook e, nonostante i miei 15 anni di lavoro con Outlook in grado di supportare, non sono riuscito a salvare il profilo e ho dovuto ricrearlo. (Non voglio ripetere questo processo per i restanti 20+ profili)

Posso solo supporre che esiste una cache SSL in Windows, Outlook o nella sua dipendenza IE.

Questo mi porta alla mia domanda:

  • Quali dati SSL esistono nel IE pulsante di stato SSL? Si tratta di una cache di dati HTTP Web o di certificati?

  • Esiste una cache SSL per applicazione e/o globale? (ad es. schannel, ecc.)

  • Come posso modificare o gestire questa cache?

Ecco un'immagine dell'editor SSL in IE (vedi "Cancella stato SSL")

enter image description here


Aggiornare:

Anche se il certificato è correttamente formato, deselezionando la seguente casella di testo nella configurazione di Outlook sembra correggere il problema

enter image description here

16

Il pulsante "Cancella stato SSL" c'è per eliminare la cache SSL dei certificati client selezionati utilizzati per l'autenticazione su servizi basati su SSL. È lì solo per far funzionare più rapidamente i certificati client (in parte ricordando quale certificato hai usato per autenticarti su un determinato sito). Non memorizza nella cache certificati SSL precedentemente visualizzati.

Outlook + Exchange può utilizzare i certificati client per l'autenticazione, ma non è una configurazione comune; la maggior parte dei siti si attacca con NTLM o Kerberos su SSL.

Outlook + IMAP non può utilizzare i certificati client, ma potrei benissimo sbagliarmi; Non ho sentito di un'istanza in cui vengono utilizzati.

Quello che potresti incontrare invece sono problemi con Windows SSL Validator.

5
sysadmin1138

Normalmente, la gestione SSL è per processo. L'implementazione SSL DLL, ad esempio, ricorderà le sessioni SSL e sarà in grado di negoziare strette di mano abbreviate (quando il client si riconnette a un server e accetta di riutilizzare il segreto condiviso simmetrico stabilito in una precedente connessione. Internet Explorer ora ha l'abitudine di generare diversi processi, ma include alcuni trucchi per condividere le informazioni sulla sessione SSL attraverso questi processi. scompare quando tutto IE il processo è chiuso, però.

Ciò che rimane nella cache sono i CRL. Quando Windows desidera convalidare un certificato (ad esempio un certificato del server), tenterà di ottenere informazioni sulla revoca, quindi le risposte CRL o OCSP, scaricate dall'URL che si trovano nei certificati stessi. Windows memorizzerà nella cache il CRL, e questa è una cache su disco perché resiste al riavvio. Windows memorizzerà inoltre nella cache CRL "negativo", ovvero non riuscirà a ottenere un CRL da un determinato URL. Se Windows non è stato in grado di ottenere un CRL da un URL specifico, potrebbe astenersi dal riprovare lo stesso URL per un massimo di otto ore - e anche un riavvio potrebbe non essere sufficiente per sbloccarlo. Questo è spesso fastidioso.

Analogamente alla cache CRL, Windows può anche scaricare certificati CA intermedi, utilizzando l'URL dei certificati (il Authority Information Access estensione). Anche questi certificati CA possono essere memorizzati nella cache, sebbene non compaiano necessariamente negli archivi certificati (come visibile da certmgr.msc).

Vedi questo post sul blog per alcune informazioni sulla cache CRL di Windows.

Quando si utilizza l'autenticazione client basata su certificato in un contesto di Active Directory, le cose diventano più complesse, perché:

  • Il client SSL convalida il certificato del server SSL.
  • Il server SSL convalida il certificato del server AD.
  • Il server AD convalida il certificato client SSL.

Tutte e tre le convalide eseguite su macchine distinte, con regole sottilmente distinte e la mappatura dei certificati sugli account AD possono fallire in molti modi.

4
Thomas Pornin