Il centro di certificazione non profit Let’s Encrypt, gestito dalla comunità e che fornisce certificati gratuitamente a chiunque lo desideri, ha annunciato l'imminente revoca di molti certificati TLS/SSL precedentemente emessi. Dei 116 milioni di certificati attivi attualmente, Let’s Encrypt revoca poco più di 3 milioni (2,6%), di cui circa 1 milione sono duplicati associati a un unico dominio (l'errore ha colpito principalmente i certificati frequentemente aggiornati, motivo per cui ci sono così tanti duplicati). La revoca è prevista per il 4 marzo (l'orario esatto deve ancora essere determinato, ma la revoca avverrà non prima delle 3 di notte MSK).
La necessità della revoca è stata causata da un'errore identificato il 29 febbraio . Il problema si presenta dal 25 luglio 2019 e riguarda il sistema di verifica dei record CAA nel DNS. Il record CAA (, Certificate Authority Authorization) consente al proprietario del dominio di definire esplicitamente l'autorità di certificazione attraverso la quale possono essere generati certificati per il dominio specificato. Se l'autorità di certificazione non è inclusa nei record CAA, è obbligata a bloccare l'emissione di certificati per quel dominio e a informare il proprietario del dominio sui tentativi di compromissione. Nella maggior parte dei casi, il certificato viene richiesto immediatamente dopo il superamento della verifica CAA, ma il risultato della verifica è considerato valido per altri 30 giorni. Le regole stabiliscono anche che deve essere eseguita una nuova verifica non oltre 8 ore prima dell'emissione di un nuovo certificato (cioè, se nella richiesta di un nuovo certificato sono trascorse 8 ore dall'ultima verifica, è necessaria una nuova verifica).
L'errore si manifesta se la richiesta di certificato copre più nomi di dominio, per ciascuno dei quali è richiesta la verifica del record CAA. La sostanza dell'errore è che nel momento della verifica ripetuta, invece di convalidare tutti i domini, veniva effettuata la verifica ripetuta solo di un dominio dell'elenco (se nella richiesta c'erano N domini, invece di N verifiche diverse, un dominio veniva controllato N volte). Per gli altri domini non veniva eseguita la verifica ripetuta e per prendere decisioni venivano utilizzati i dati della prima verifica (cioè, venivano utilizzati dati risalenti a fino a 30 giorni prima). Di conseguenza, entro 30 giorni dalla prima verifica, Let’s Encrypt potrebbe aver emesso un certificato, anche se il valore del record CAA era stato modificato e Let’s Encrypt era stato rimosso dall'elenco delle autorità di certificazione consentite.
Gli utenti soggetti a problemi hanno ricevuto una notifica via email, se i dati di contatto erano stati compilati al momento del ricevimento del certificato. È possibile controllare i propri certificati scaricando i numeri di serie dei certificati revocati o utilizzando (ospitato all'indirizzo IP, in RF da Roskomnadzor). È possibile conoscere il numero di serie del certificato per il dominio di interesse utilizzando il comando:
openssl s_client -connect example.com:443 -showcerts /dev/null \
| openssl x509 -text -noout | grep -A 1 Serial\ Number | tr -d :
Fonte: opennet.ru
