TrustManager PKIX (o RFC 3280 / X.509) controlla realmente la data di scadenza del certificato client?

2

È stato rilevato che l'implementazione di java predefinita di TrustManagerFactory per PKIX l'algoritmo del gestore di fiducia ( X509ExtendedTrustManager ) in realtà non verifica la data di scadenza del certificato del client durante l'autenticazione SSL.

Potrebbe essere facilmente controllato: configura Apache Tomcat 7.x con l'autenticazione client SSL. Inserire nel certificato del cliente scaduto il negozio fiduciario. Sul lato client impostare il tempo di sistema sul tempo passato, quando il certificato non era scaduto. Voila , il client può autenticare correttamente sul server web.

La domanda è: tale comportamento è corretto e appropriato per RFC 3280, oppure è l'errore?

    
posta Andremoniy 16.11.2015 - 12:00
fonte

1 risposta

2

No, no e no non è un bug. Per quello che vale, non vedo nulla di esplicito in RFC 3280 che imponga che la convalida del percorso fallisca sui certificati scaduti.

Se hai un certificato nel trust store javax.net.ssl, i TrustManager di default si fidano di esso indipendentemente dalla scadenza.

Non c'è nulla nel JavaDoc che suggerisca che controlli la scadenza. Direi che è di progettazione.

Mi sono immerso abbastanza a fondo nella sorgente JCL e non fa alcun tentativo di verificare la scadenza del certificato.

Altri utenti hanno riscontrato e verificato questo comportamento: link

Avrai bisogno del tuo TrustManager per applicarlo.

    
risposta data 17.11.2015 - 17:57
fonte

Leggi altre domande sui tag