Gli hacker hanno sfruttato una caratteristica del protocollo OpenPGP nota da più di dieci anni.
Vi diciamo qual è il punto e perché non possono chiuderlo.
/Unsplash/
Problemi di rete
A metà giugno, sconosciuto
Gli hacker hanno compromesso i certificati di due manutentori del progetto GnuPG, Robert Hansen e Daniel Gillmor. Il caricamento di un certificato danneggiato dal server provoca il fallimento di GnuPG: il sistema semplicemente si blocca. C'è motivo di credere che gli aggressori non si fermeranno qui e che il numero di certificati compromessi non farà altro che aumentare. Al momento, la portata del problema resta sconosciuta.
L'essenza dell'attacco
Gli hacker hanno approfittato di una vulnerabilità nel protocollo OpenPGP. È nota alla comunità da decenni. Anche su GitHub
Un paio di selezioni dal nostro blog su Habré:
Secondo le specifiche OpenPGP, chiunque può aggiungere firme digitali ai certificati per verificarne il proprietario. Inoltre, il numero massimo di firme non è regolamentato in alcun modo. E qui sorge un problema: la rete SKS consente di inserire fino a 150mila firme su un certificato, ma GnuPG non supporta tale numero. Pertanto, durante il caricamento del certificato, GnuPG (così come altre implementazioni OpenPGP) si blocca.
Uno degli utenti
$ gpg --homedir=$PWD --recv C4BC2DDB38CCE96485EBE9C2F20691179038E5C6
gpg: key F20691179038E5C6: 4 duplicate signatures removed
gpg: key F20691179038E5C6: 54614 signatures not checked due to missing keys
gpg: key F20691179038E5C6: 4 signatures reordered
gpg: key F20691179038E5C6: public key "Daniel Kahn Gillmor <[email protected]>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1
$ ls -lh pubring.gpg
-rw-r--r-- 1 filippo staff 17M 2 Jul 16:30 pubring.gpg
A peggiorare le cose, i server delle chiavi OpenPGP non rimuovono le informazioni sul certificato. Questo viene fatto in modo da poter tracciare la catena di tutte le azioni con i certificati e impedirne la sostituzione. Pertanto è impossibile eliminare gli elementi compromessi.
Essenzialmente, la rete SKS è un grande “file server” su cui chiunque può scrivere dati. Per illustrare il problema, l'anno scorso residente su GitHub
Perché la vulnerabilità non è stata chiusa?
Non c'era motivo di chiudere la vulnerabilità. In precedenza, non veniva utilizzato per attacchi hacker. Sebbene la comunità IT
Per essere onesti, vale la pena notare che a giugno sono ancora
/Unsplash/
Per quanto riguarda il bug del sistema originale, un complesso meccanismo di sincronizzazione ne impedisce la correzione. La rete di server chiave è stata originariamente scritta come prova di concetto per la tesi di dottorato di Yaron Minsky. Inoltre, per il lavoro è stato scelto un linguaggio piuttosto specifico, OCaml. Di
In ogni caso, GnuPG non crede che la rete verrà mai riparata. In un post su GitHub gli sviluppatori hanno addirittura scritto che non consigliano di lavorare con SKS Keyserver. In realtà, questo è uno dei motivi principali per cui hanno avviato la transizione al nuovo servizio keys.openpgp.org. Possiamo solo osservare l'ulteriore sviluppo degli eventi.
Un paio di materiali dal nostro blog aziendale:
Fonte: habr.com