Quali sarebbero le implicazioni sulla sicurezza dell'uso di un certificato CA direttamente come certificato del server?

0

Bene, immaginiamo che il server S fornisca un servizio a un determinato gruppo di client C1 e C2 con autenticazione basata su cert sicuro (si pensi a OpenVPN , SSH o altri servizi simili).

  • S potrebbe utilizzare una CA attendibile o crearne una propria per lasciare che C1 e C2 sappiano che è il vero S (cosa OpenVPN , HTTPS , ecc. do). Ciò richiede che il certificato CA sia pre-condiviso con ciascun client.
  • S potrebbe presentare il suo certificato solo a C1 e C2 la prima volta che i client si collegano ad esso e il client verificherà se questo certificato è quello atteso (quali SSH , Syncthing , ecc.)) .

Il fatto è:

  1. Alcuni sistemi (* cough * android ... * cough *) aggiungono semplicemente la CA personalizzata direttamente nel trust store globale ( OpenVPN ).
  2. Anche il formato p12 è piuttosto conveniente, mentre pem è terribile per l'utente, ma spesso non abbiamo la scelta (perché ci sono 4 file? qual è la chiave di cui stavi parlando? qual è il certificato privato? ? perché ca.cert non funziona come mio certificato privato? ...).
  3. Gli utenti non gradiscono / non sono autorizzati a convalidare / digitare elementi su server e client per autenticarsi a vicenda ( Syncthing ).
  4. Tuttavia non possono essere disturbati a controllare accuratamente un hash del certificato ( SSH ).

Un modo (forse terribile) per risolvere questi problemi (e crearne altri) sarebbe utilizzare direttamente S chiave privata per firmare C1 e C2 certificati:

  1. Nessuna nuova CA da aggiungere al trust store a livello di sistema.
  2. Un solo file da gestire in entrambi i formati p12 e pem .
  3. L'utente non deve accedere a S .
  4. L'utente non deve controllare nulla finché si fida del certificato firmato (tramite HTTPS / SSH , ecc.). NB: questo problema di attendibilità è lo stesso quando devi ottenere il certificato CA su ciascun client.

Il fatto è che non ho mai sentito parlare di un simile piano. Penso che sia soprattutto perché non fornisce forti miglioramenti rispetto allo schema basato su CA, ma potrebbe essere dovuto al fatto che l'approccio è errato.

Quindi ci sono delle cattive implicazioni sulla sicurezza derivanti dall'uso di questo tipo di schema?

PS: sto chiedendo per curiosità perché non conosco nessun protocollo che usi questo schema, eppure sembra un po 'più semplice.

    
posta JPatta 02.03.2016 - 12:14
fonte

0 risposte

Leggi altre domande sui tag