Best practice per la generazione di chiavi private https

1

Sto lavorando con una persona di sicurezza che mi confonde un po 'con le pratiche che esegue. Oltre al problema di questa persona che insiste a scavalcare tutte le misure di sicurezza in atto, ci siamo occupati di gestire chiavi e certificati privati.

Quindi questa è la mia prospettiva delle migliori pratiche in relazione ai server Web: quando si generano le chiavi private è meglio generarle dove saranno utilizzate e non spostarle mai su nessun altro sistema, se possibile. Da questo punto generare un CSR dal server con esso, per ottenere un certificato firmato. A questo punto, la chiave privata non viene mai esposta a nulla tranne il server che lo ha originariamente generato, quindi non c'è alcuna possibilità che un laptop o condivisione hackerata possa esporla.

Questo ha senso per me, tuttavia questa persona di sicurezza sembra preferire la generazione della chiave privata su un sistema che controlla, quindi trasferirlo a qualsiasi sistema ne abbia bisogno. Questo sembra estendere il rischio avendo la chiave privata in più di un punto e molto più lavoro senza alcun beneficio che io possa vedere.

Mi manca qualcosa con questo? Oltre alla pratica comune, c'è una ragione per cui non vedo perché questo sia fatto?

    
posta Brett Littrell 25.02.2015 - 18:05
fonte

2 risposte

2

Finché la macchina in questione ha abbastanza entropia da generare chiavi e nonce strongmente casuali, è assolutamente corretto. La chiave non deve mai lasciare quel server. Inoltre, se dovessi lavorare su un'applicazione critica, non mi fiderei nemmeno di quella macchina e manterrò la chiave in un HSM. Potrebbe costare una perdita, ma migliora significativamente la sicurezza.

Esiste un ampio spettro di pratiche di sicurezza, che vanno dal caso precedente, alla peggiore situazione possibile, che sembra essere il tuo caso. O il tuo collega ha una ragione specifica per farlo o mette a rischio la sicurezza delle tue applicazioni. Confrontalo immediatamente Se fossi al comando, licenzierei immediatamente quella persona "di sicurezza".

    
risposta data 25.02.2015 - 18:18
fonte
1

Se stai generando chiavi e mettendole subito in servizio, generarle sul server è in genere una cosa assolutamente ragionevole da fare.

Dopo aver detto che posso pensare a diversi motivi per cui potresti voler generare chiavi su una scatola diversa da quella che le userà.

  1. Potrebbe essere utile disporre di una copia di backup della chiave in modo da non dover ottenere un nuovo certificato se i dischi del server non funzionano e devi ricostruirlo.
  2. Se si utilizza "http key pinning", non è possibile inserire le chiavi non appena le si genera. È necessario generare una o più chiavi di riserva in anticipo in modo che possano essere pubblicizzate nei pin chiave. Queste chiavi di riserva devono essere conservate in un luogo sicuro (idealmente off-line) finché non sono necessarie.
  3. Potresti avere più fiducia nel generatore di numeri casuali su una casella fisica usata per generare le chiavi che su una VM, specialmente su una VM appena caricata.
  4. Potresti voler utilizzare lo stesso certificato e quindi la stessa chiave su più server.
risposta data 14.11.2015 - 04:09
fonte

Leggi altre domande sui tag