C'è di più da considerare oltre a nuovi certificati (o meglio, nuove coppie di chiavi) per ogni server interessato. Significa anche:
- Applicazione di patch ai sistemi interessati a OpenSSL 1.0.1g
- Revoca delle vecchie coppie di chiavi appena sostituite
- Modifica di tutte le password
- Invalidare tutte le chiavi di sessione e i cookie
- Valutare il contenuto effettivo gestito dai server vulnerabili che potrebbero essere trapelati e reagire di conseguenza.
- Valutare qualsiasi altra informazione che potrebbe sono stati rivelati, come indirizzi di memoria e misure di sicurezza
Neel Mehta (l'ingegnere della sicurezza di Google che per primo ha segnalato il bug) ha twittato :
I modelli di allocazione degli heap rendono improbabile l'esposizione della chiave privata per #heartbleed #dontpanic.
Tomas Rzepka (probabilmente dalla società di sicurezza svedese Certezza) ha risposto con quello che dovevano fare per recuperare le chiavi:
Possiamo estrarre la chiave privata con successo su FreeBSD dopo aver riavviato apache e aver fatto la prima richiesta con ssltest .py
Furto di chiavi private è stato dimostrato anche da CloudFlare Challenge.
E l'utente di Twitter makomk è intervenuto con:
L'ho recuperato da Apache su Gentoo come un fattore primo nudo in binario, ma la tua demo è molto più chiara ... Ha una percentuale di successo bassa, più tentativi sulla stessa connessione non aiutano, la riconnessione potrebbe , il riavvio probabilmente non lo farà ... Qualcuno con discrete capacità di sfruttamento dell'heap potrebbe probabilmente migliorare l'affidabilità. Non ci sto davvero provando così tanto.
Ho riassunto i punti dell'elenco sopra da heartbleed.com (enfasi mia):
Qual è il materiale della chiave primaria trapelato e come recuperarlo?
Questi sono i gioielli della corona, le stesse chiavi di crittografia . Le chiavi segrete trapelate consentono all'autore dell'attacco di decrittografare qualsiasi traffico passato e futuro
ai servizi protetti e per impersonare il servizio a piacimento. Qualsiasi protezione fornita dalla crittografia e dalle firme nei certificati X.509 può essere aggirata. Il ripristino da questa perdita richiede la patch della vulnerabilità, la revoca delle chiavi compromesse e la riemissione e la ridistribuzione di nuove chiavi. Anche facendo tutto ciò, il traffico intercettato dall'attaccante in passato sarà ancora vulnerabile alla decrittazione. Tutto ciò deve essere fatto dai proprietari dei servizi.
Che cosa è trapelato il materiale della chiave secondaria e come recuperarlo?
Questi sono ad esempio le credenziali utente (nomi utente e password) utilizzate nei servizi vulnerabili. Il ripristino da queste perdite richiede prima che i proprietari del servizio ripristinino la fiducia nel servizio in base ai passaggi sopra descritti. Dopodiché, gli utenti possono iniziare a modificare le proprie password e le eventuali chiavi di crittografia secondo le istruzioni dei proprietari dei servizi che sono stati compromessi. Tutte le chiavi di sessione e i cookie di sessione devono essere invalidi e considerati compromessi.
Che cosa è contenuto protetto trapelato e come recuperarlo?
Questo è il contenuto effettivo gestito dai servizi vulnerabili . Possono essere dettagli personali o finanziari, comunicazioni private come e-mail o messaggi istantanei, documenti o qualsiasi cosa che meriti di essere protetta mediante crittografia. Solo i proprietari dei servizi saranno in grado di stimare la probabilità di ciò che è trapelato e dovrebbero informare i propri utenti di conseguenza. La cosa più importante è ripristinare la fiducia nel materiale della chiave primaria e secondaria come descritto sopra. Solo questo consente un utilizzo sicuro dei servizi compromessi in futuro.
Che cosa è il collaterale trapelato e come recuperarlo?
Il collaterale trapelato sono altri dettagli che sono stati esposti all'aggressore nel contenuto della memoria trapelato. Questi possono contenere dati tecnici
dettagli come indirizzi di memoria e misure di sicurezza come i canarini usati per proteggere dagli attacchi di overflow. Questi hanno solo un valore contemporaneo e perderanno il loro valore per l'attaccante quando OpenSSL sarà stato aggiornato a una versione fissa.