In che modo le autorità di certificazione memorizzano le proprie chiavi radice private?

233

La conoscenza di una chiave privata CA consentirebbe agli aggressori MitM di soppiantare in modo trasparente tutti i certificati firmati da quella chiave privata. Permetterebbe anche ai cyber criminali di iniziare a forgiare i loro certificati di fiducia e li venderebbe sul mercato nero.

Considerati gli enormi profitti che potrebbero essere ottenuti con tale conoscenza e il fatto che un certificato altamente affidabile e onnipresente (come qualsiasi delle principali chiavi di Verisign) sarebbe una cosa molto difficile da revocare rapidamente, è ovvio che ci sarebbero elementi criminali altamente motivati e ben finanziati che tentano di mettere le mani su tali chiavi regolarmente.

In che modo le autorità di certificazione affrontano questa minaccia? Sembra un vero incubo, dover cancellare le chiavi da tutti gli occhi umani, persino gli amministratori di sistema. Per tutto il tempo i tasti devono essere utilizzati su base giornaliera, spesso tramite servizi di firma connessi a Internet.

    
posta lynks 03.12.2012 - 15:12
fonte

7 risposte

214

Le Serious autorità di certificazione utilizzano procedure pesanti. Al centro, la chiave CA verrà memorizzata in un modulo di sicurezza hardware ; ma questa è solo una parte della cosa. La CA stessa deve essere protetta fisicamente, che include misure proattive e retrospettive .

Le misure proattive riguardano la prevenzione degli attacchi. Ad esempio, la CA verrà archiviata in un caveau, con porte e protezioni in acciaio. Le macchine stesse sono bloccate, con diversi lucchetti, e nessuno contiene più di una chiave lucchetto. La sicurezza fisica è di fondamentale importanza; l'HSM è solo il livello più profondo.

Le misure retrospettive riguardano il recupero dopo un incidente. L'HSM registra tutte le firme. La macchina è sotto sorveglianza 24 ore su 24, 7 giorni su 7, con registrazione off-site. Queste misure riguardano sapere cosa è successo (se preferisci, sapendo a priori che, in caso di problemi, saremo in grado di analizzarlo a posteriori ). Ad esempio, se sono stati emessi certificati "illegali" ma è possibile ricostruire l'elenco completo di tali certificati, il ripristino è "facile" come la revoca dei certificati incriminati.

Per il recupero extra, la CA viene spesso suddivisa in una CA radice longeva che viene mantenuta offline e una CA intermedia di breve durata. Entrambe le macchine sono nella gabbia e nel bunker; la CA radice non è mai connessa a una rete. La CA radice è fisicamente accessibile, con doppio controllo (almeno due persone insieme e registrazione video) su base regolare, per emettere il certificato per la CA intermedia e il CRL. Ciò consente a revocare una CA intermedia se è stata completamente compromessa (al punto che la sua chiave privata è stata rubata, o l'elenco dei certificati emessi fraudolentemente non può essere ricostruito).

L'installazione iniziale di una CA radice seria coinvolge una cerimonia chiave con mandrie di revisori con occhi indiscreti e un formalismo che non sarebbe stato disprezzato da un imperatore cinese della dinastia Song. Nessuna quantità di controllo può garantire l'assenza di vulnerabilità; tuttavia, questo tipo di cerimonia può essere usato per sapere cosa è stato fatto, per mostrare che sono stati pensati problemi di sicurezza e, se possibile, per identificare il colpevole se sorge il problema Sono stato coinvolto in molte di queste cerimonie; sono davvero un grande "teatro della sicurezza" ma hanno meriti oltre la semplice visualizzazione di attività: costringono le persone ad avere procedure scritte per tutto .

La domanda è ora: la esistente CA è veramente seria, nel modo descritto sopra? Nella mia esperienza, lo sono per lo più. Se la CA ha qualcosa a che fare con VISA o MasterCard, allora si può essere sicuri che l'HSM, acciaio e pitbull malconcio fanno parte dell'installazione; VISA e MasterCard sono denaro e lo prendono molto sul serio.

Per la CA che è inclusa nei browser Web e nei sistemi operativi, il fornitore del browser o del sistema operativo tende a richiedere molta assicurazione. Di nuovo, si tratta di soldi; ma la compagnia assicurativa richiederà quindi tutte le misure fisiche e contabili e di controllo. Formalmente, questo utilizzerà certificazioni come WebTrust .

Questo è vero anche per le famigerate CA come DigiNotar o Comodo: si noti che mentre venivano rilasciati certificati contraffatti e falsi, i suddetti certificati erano noti e revocati (e Microsoft li ha aggiunti a un elenco di "certificati vietati" che possono essere visto come una sorta di "revocato, e lo intendiamo davvero" - il software deve fare di tutto per accettarli comunque).

La CA "debole" è principalmente la CA radice controllata dallo stato. Microsoft può rifiutarsi di includere una chiave radice da un'impresa privata, se Microsoft ritiene che non sia stata fornita un'assicurazione sufficiente (vogliono essere sicuri che la CA sia finanziariamente solida, in modo che le operazioni possano essere mantenute); Conosco una banca con milioni di clienti che hanno cercato di inserire la chiave radice in Windows e sono stati licenziati sulla base del fatto che erano "troppo piccoli". Tuttavia, Microsoft è molto più debole nei confronti degli AC ufficiali degli stati sovrani; se vogliono fare affari nel paese X, non possono davvero permettersi di rifiutare la chiave CA radice dal governo X. Sfortunatamente, non tutti i governi sono "seri" quando si tratta di proteggere le proprie chiavi CA ...

    
risposta data 03.12.2012 - 16:59
fonte
33

Dal punto di vista fisico, mantengono la CA radice completamente offline. In genere ciò che accade è che impostano la CA radice, rendono subordinati, quindi portano la CA radice completamente offline e prendono i dischi rigidi e HSM (a volte anche l'intero server) e essenzialmente li bloccano in una cassastrong.

Successivamente, segmentano la rete per mantenere sicure quelle CA subordinate / emittenti.

Infine, su quei subordinati usano HSM per archiviare i certificati.

OCSP e CRL sono usati per revocare certificati, ma non è solo così semplice.

Dal punto di vista procedurale, hanno una quantità pazzesca di livelli che includono stanze chiuse che richiedono più persone contemporaneamente per revocare / firmare subordinati o radici (A Key Signing Ceremony). Questi sono registrati 24 ore su 24 (audio e video) e richiedono una persona di fiducia dalla CA, oltre agli amministratori e ai dirigenti. È un affare enorme. Ecco il video .

Modifica: contrariamente a quanto ha affermato Polynomial, da ciò che ho visto, gli HSM sono comuni per le CA e persino per le grandi implementazioni di CA interne.

    
risposta data 03.12.2012 - 15:57
fonte
14

Non ogni CA (governativo, commerciale o privato) memorizza le chiavi private allo stesso modo. La maggior parte degli operatori legittimi utilizza un HSM. È possibile che il fornitore pubblichi elenchi di revoche CRL utilizzando un collegamento unidirezionale dalla radice al SubCa . (Cavo seriale di sola trasmissione, cavi audio, codici QR, Ethernet con pochi pin collegati ... ecc.)

Per essere specifico, dipende molto dal prodotto di cui stai parlando.

Ad esempio, ogni telefono (Android, iPhone, Blackberry), Sistema operativo (Linux, Windows, ecc.) e persino alcuni browser Web (Firefox) gestiscono negozi fiduciari indipendenti.

Ciascuno di questi fornitori ha standard diversi rispetto a quali CA sono qualificate per essere "CA radice" in quel dato prodotto. Nello specifico, ciascun fornitore ha diverse certificazioni, processi e procedure (tali requisiti di conservazione a freddo) a cui ogni CA deve attenersi prima di essere inclusi in tale elenco di attendibilità di root.

Microsoft ha il programma di certificazione root e questo richiede che ogni CA segua i seguenti standard di revisione (che dovrebbe affrontare tutte le tue domande tecniche e procedurali)

  • ETSI 102 042
  • ETSI 101 456
  • WebTrust per CA
  • Audit di disponibilità di WebTrust EV
  • ISO 21188 (Nota che non accettano ISO 27001)

In particolare, la CA deve completare una verifica e inviare i risultati dell'audit a Microsoft ogni dodici (12) mesi. L'audit deve coprire la gerarchia PKI completa che sarà abilitata da Microsoft attraverso l'assegnazione di Extended Key Usages (EKU). Tutti gli usi dei certificati che abilitiamo devono essere controllati periodicamente. Il rapporto di verifica deve documentare l'intero ambito della gerarchia PKI, inclusa qualsiasi sub-CA che emette uno specifico tipo di certificato coperto da un audit. Le verifiche idonee includono:

(Nota: questi requisiti di controllo non si applicano alle autorità governative e potrebbero essere diversi)

Maggiori informazioni sulle linee guida tecniche e di controllo per le radici MSFT

A parte:

È sicuramente possibile memorizzare una chiave privata in un HSM che non espone mai la chiave privata (scarica le richieste su quella chiave) e traccia permanentemente ogni utilizzo di quella chiave privata. Non ricordo se qualcuno di questi standard richieda un HSM, ma dato il costo relativamente minore di un HSM non riesco a immaginare perché non venga fatto.

    
risposta data 03.12.2012 - 16:56
fonte
11

Sebbene io sia d'accordo con la risposta molto approfondita sopra di @ Thomas, vorrei aggiungere che ho installato il sistema CA radice per il proprio sistema di carte di debito delle banche del Regno Unito (ogni singolo chip della carta è in realtà un certificato).

Abbiamo usato i dispositivi Thales HSM (costi a 6 cifre) che disponevano di sistemi antiscasso adeguati per inclinazione, temperatura, attacco fisico e così via.

In termini di cerimonia chiave, che (come descrive Thomas) ha branchi di auditor che si aggirano intorno alle sale macchine a freddo - è più complicato di così. È necessario assicurarsi che l'attività di generazione delle chiavi e il trasporto chiave verso l'HSM siano attività separate e che la chiave non possa essere compromessa dalla collusione. Gli strumenti di Thales HSM consentono di dividere la chiave in segmenti, ciascuno codificato con una chiave di trasporto, in modo che i singoli possessori di chiavi possano accedere separatamente alla cerimonia della chiave, con un trasporto diverso (per l'amor di Dio, senza car sharing) al posizione, di solito presso l'HSM nella sala server di produzione.

Non considerare di essere una CA radice è semplice -sì, so che è possibile creare una CA principale utilizzando strumenti gratuiti-È necessario elaborare la propria propensione al rischio e se è possibile creare una CA radice in modo che corrisponda al modello di minaccia. per esempio. per i certificati di carte di debito (dove la perdita consequenziale poteva essere "l'intera banca"), l'importo totale speso era enorme e c'erano molte persone che correvano per assicurarsi che nessuna singola persona potesse colludere o avere il controllo della chiave.

Se stai solo creando una CA radice come sistema di test locale, allora chiaramente il modello di rischio è diverso.

Il mio consiglio sarebbe che, a meno che tu non abbia le dimensioni di una grande organizzazione (Fortune 500) o che la tua attività sia una CA radice, allora esternalizza.

    
risposta data 04.12.2012 - 12:10
fonte
9

Piuttosto che dedicarsi allo sforzo di penetrare in un bunker e rubare lo stile impossibile della missione privata, si potrebbe semplicemente rompere la chiave privata. Tutto ciò può essere fatto comodamente da casa tua. Tutto ciò di cui hai bisogno è la chiave pubblica della CA, alcuni dati che sono stati firmati, la firma del campione e un computer quantico. Ho già il 75% delle cose, se qualcuno ha l'ultimo bit sono felice di dividere il bottino 50/50.

    
risposta data 04.12.2012 - 01:56
fonte
2

Una cosa che molti fanno è usare sotto-certificati e liste di revoche. Ciò non significa che i problemi non si verificano e che le chiavi private sono state rubate dalle CA attendibili, ma se la CA non rende accessibile la propria chiave privata, hanno un certo grado di protezione. Possono invece utilizzare la propria chiave privata per firmare un certificato CA derivato e quindi utilizzare tale certificato CA (con un periodo di validità molto più limitato) per firmare i certificati per la distribuzione. Quindi la chiave privata principale non deve mai essere esposta alla rete.

Se si verifica una violazione, poiché sanno che il sub-cert dovrà specificare l'elenco di revoche che controllano essere valido, possono anche revocare un sub-cert compromesso.

Un modo semplice per verificare se una particolare CA lo fa per controllare la catena di fiducia sul certificato. Spesso, ci sono uno o più certificati CA tra il certificato e il certificato CA di fiducia della radice.

    
risposta data 03.12.2012 - 15:38
fonte
0

La semplice (e piuttosto sfortunata) risposta è che non lo fanno, davvero. Gli amministratori di sistema sono considerati sicuri e proteggono le proprie caselle di firma nello stesso modo in cui si protegge qualsiasi server aziendale sensibile. Nei casi di CSR in esecuzione, potrebbe essere necessario un passaggio umano, ma non c'è assolutamente nulla che impedisca a un determinato utente malintenzionato di compromettere una rete CA se impiegano tempo e sforzi sufficienti. Al massimo, utilizzerebbero un HSM per memorizzare le chiavi private, anche se scommetterei con un buon prezzo che non è un luogo comune.

    
risposta data 03.12.2012 - 15:16
fonte