Il blocco del certificato è diverso da quello di CA?

2

Sto cercando di capire se il pinning di un certificato significa essenzialmente bloccare la CA o se sono diversi in che modo?

    
posta user39950 12.02.2014 - 02:06
fonte

2 risposte

2

L'elaborazione generica di un certificato va così:

  • Il client costruisce una catena di certificati che va da un'ancora di sicurezza (un determinato certificato che è noto a priori dal client) fino a il certificato del server.
  • Il client verifica che tutte le firme e altre informazioni siano corrette lungo la catena (ogni certificato ha un soggetto e un emittente nomi: il suo nome emittente deve essere uguale al nome soggetto dei certificati precedenti, ogni certificato è firmato e la firma deve corrispondere alla chiave pubblica del certificato precedente e così via).
  • Il client controlla che il nome del server previsto (quello proveniente da https:// URL) appaia dove dovrebbe nel certificato del server.

Il blocco del certificato equivale a trasformare il certificato del server in un'ancora di trust con ambito limitato: il client memorizza il certificato del server e lo userà come ancoraggio sicuro quando convalidare nuovamente il certificato del server. Nella descrizione sopra, questo significa che quando si torna al server, il client costruisce una catena di lunghezza 1, contenente solo il certificato del server stesso, che il client "si fida" in quel contesto perché lo ricorda esattamente.

Il blocco dei certificati può essere inclusivo o esclusivo; il primo significa che il client accetterà il certificato del server ricordato come ancoraggio di sicurezza oltre a le sue altre "normali" ancore di fiducia (i suoi "certificati radice"), mentre il secondo significa che il client usa solo il certificato aggiunto come trust. L'effetto complessivo del pinning esclusivo del certificato è che il client accetterà il certificato del server solo se è bit-to-bit uguale a quello che ricorda; nessun altro certificato sarebbe ritenuto accettabile.

Di solito, quando la gente parla di bloccare, significa blocco esclusivo

Il blocco di CA è lo stesso processo più alto nella catena. Il client memorizza un certificato CA (che può essere una CA "intermedia") come ancoraggio affidabile. Anche in questo caso, questo può essere inclusivo o esclusivo. Il blocco esclusivo della CA indica che il browser convaliderà il certificato del server contro tale CA come ancoraggio di attendibilità univoco; il certificato verrà accettato solo se è possibile creare una catena proveniente da tale CA specifica e nessuna altra.

I punti importanti sopra sono i seguenti:

  • Il client memorizza un certificato dalla catena di certificati del server.
  • Il cliente si lamenta rumorosamente se il certificato del server effettivo (su un'ulteriore connessione) non corrisponde a ciò che è stato ricordato (soggetto probabilmente ad alcune euristiche per appianare i rinnovi normali).
  • Questo processo è specifico del sito : questo è il principale punto di partenza per il blocco dal solito modello "root CA store". Ciò che il cliente ricorda e richiede è per un sito di destinazione specifico. Il certificato ricordato (CA o meno) non è generale per tutti i siti, ma solo per uno.
risposta data 12.02.2014 - 16:18
fonte
2

Il blocco dei certificati memorizza l'impronta digitale del certificato per un sito, in modo che (oltre alla normale verifica) se il certificato cambia, questo può essere utilizzato come input per il processo di convalida. Il certificato "appuntato" non è la CA, ma quello alla fine della catena. Potresti visualizzare un avviso per l'utente se, ad esempio, un certificato viene sostituito con un altro 8 mesi prima della scadenza.

È molto più facile ottenere un certificato fraudolento o falsificare una firma su uno di quanto non sia generarne uno con lo stesso modulo di uno esistente. Il blocco del certificato è progettato per fornire una certa difesa contro il precedente.

    
risposta data 12.02.2014 - 02:10
fonte

Leggi altre domande sui tag