Va bene condividere ampiamente l'impronta digitale della chiave RSA per un host?

18

Quando si esegue l'SSH in una casella remota per la prima volta o se l'impronta digitale della chiave dell'host remoto è cambiata (da ciò che è memorizzato nel file known_hosts) viene visualizzato un avviso e viene visualizzata l'impronta digitale della chiave dell'host.

Compromette la tua sicurezza se condividi pubblicamente l'impronta digitale (cioè con potenziali aggressori)? O è un caso in cui va bene per tutti conoscere l'impronta digitale di un server, perché ssh sta facendo qualcosa dietro le quinte (dal mio punto di vista come un semplice utente) in modo che l'impronta digitale non possa essere falsificata, anche se è nota?

Dato che puoi vedere l'impronta digitale semplicemente tentando di eseguire l'ssh sul server usando un account senza senso, presumo che significa che l'impronta digitale dovrebbe essere condivisa pubblicamente (ma sai cosa succede quando supponi ...).

    
posta drewbenn 25.10.2012 - 08:50
fonte

2 risposte

19

La chiave del server impronta digitale è un hash della chiave pubblica del server, che è, per definizione, pubblica. Chiunque può ottenere la chiave pubblica del server semplicemente collegandosi ad essa, poiché il server invia la sua chiave pubblica nei passaggi iniziali del protocollo. In effetti, è proprio quello che fai con il tuo client SSH: ti connetti al server, il server invia la sua chiave pubblica, il tuo software client SSH calcola l'hash chiave (l'impronta digitale) e lo visualizza. A quel punto, non ti sei ancora autenticato, quindi tutto quello che hai fatto, chiunque avrebbe potuto farlo.

Quindi, non c'è alcun problema è la pubblicazione dell'impronta digitale della chiave perché qualsiasi possibile utente malintenzionato lo ha già.

Ovviamente, pubblicare l'impronta digitale della chiave e usarlo come base per l'autenticazione del server richiede una pubblicazione solida: un attaccante industrioso intento a fare Gli attacchi Man-in-the-Middle proverebbero a modificare l'impronta digitale pubblicata così come la vedi, in modo da indurti ad accettare come autentica una falsa chiave del server. Pertanto, se si pubblica la chiave pubblica del server su un sito Web, renderlo un sito Web HTTPS . (In altre parole, per questa impronta digitale non hai bisogno di riservatezza ma hai bisogno di integrità .)

    
risposta data 25.10.2012 - 14:23
fonte
7

Sì, l'impronta digitale è semplicemente un hash della chiave pubblica, utilizzata per autenticarlo. Un avversario richiederebbe la chiave privata per decifrare i tuoi messaggi. Ottenere la chiave privata dalle informazioni disponibili richiederebbe:

  1. Una funzione di hash che non è resistente alla preimage (alcuni potrebbero non considerare una vera e propria funzione di hash).
  2. RSA è rotto

Wikipedia mostra le impronte digitali delle chiavi pubbliche qui .

È una domanda giusta, tuttavia, SSH non dice che è l'impronta digitale della chiave pubblica.

    
risposta data 25.10.2012 - 09:01
fonte

Leggi altre domande sui tag