La revoca del certificato radice dell'azienda IdenTrust (DST Root CA X3), utilizzato per la controfirmatura del certificato radice dell'autorità di certificazione Let’s Encrypt, ha causato problemi nella verifica dei certificati Let’s Encrypt nei progetti che utilizzano versioni obsolete di OpenSSL e GnuTLS. I problemi hanno interessato anche la libreria LibreSSL, i cui sviluppatori non hanno considerato le esperienze precedenti relative ai guasti avvenuti dopo la scadenza del certificato radice AddTrust dell'autorità di certificazione Sectigo (Comodo).
Ricordiamo che nelle versioni di OpenSSL fino alla branch 1.0.2 inclusa e in GnuTLS fino alla release 3.6.14, c'era un errore che non consentiva di gestire correttamente i certificati controfirmati in caso di scadenza di uno dei certificati radice coinvolti nella firma, anche si conservavano altre catene di fiducia attive (nel caso di Let’s Encrypt, la scadenza del certificato radice di IdenTrust non consente di effettuare la verifica, anche se nel sistema è presente il supporto del certificato radice di Let’s Encrypt, valido fino al 2030). La sostanza dell'errore è che le vecchie versioni di OpenSSL e GnuTLS analizzavano il certificato come una catena lineare, mentre secondo l'RFC 4158, il certificato può rappresentare un grafo orientato distribuito ciclico con più ancore di fiducia che devono essere prese in considerazione.
Come soluzione alternativa per risolvere il malfunzionamento, si consiglia di rimuovere dal deposito di sistema (\/etc\/ca-certificates.conf e \/etc\/ssl\/certs) il certificato "DST Root CA X3", quindi eseguire il comando "update-ca-certificates -f -v". In CentOS e RHEL, è possibile aggiungere il certificato "DST Root CA X3" alla blacklist: trust dump —filter "pkcs11:id=" | openssl x509 | sudo tee \/etc\/pki\/ca-trust\/source\/blacklist\/DST-Root-CA-X3.pem sudo update-ca-trust extract
Alcuni dei malfunzionamenti riscontrati dopo la scadenza del certificato radice di IdenTrust:
- In OpenBSD, l'utilità syspatch, utilizzata per installare aggiornamenti binari di sistema, ha smesso di funzionare. Il progetto OpenBSD ha rilasciato con urgenza oggi delle patch per i rami 6.8 e 6.9, risolvendo i problemi di verifica dei certificati firmati incrociatamente in LibreSSL, uno dei certificati radice nella catena di fiducia dei quali è scaduto. Come soluzione alternativa, è consigliato modificare in /etc/installurl il protocollo da HTTPS a HTTP (questo non compromette la sicurezza poiché gli aggiornamenti vengono ulteriormente verificati tramite firma digitale) oppure scegliere un mirror alternativo (ftp.usa.openbsd.org, ftp.hostserver.de, cdn.openbsd.org). È anche possibile rimuovere il certificato radice scaduto DST Root CA X3 dal file /etc/ssl/cert.pem.
- In DragonFly BSD si osservano problemi analoghi nell'uso di DPorts. Quando si avvia il gestore pacchetti pkg, viene restituito un errore di verifica del certificato. La correzione è stata aggiunta oggi ai rami master, DragonFly_RELEASE_6_0 e DragonFly_RELEASE_5_8. Come soluzione alternativa, si può rimuovere il certificato DST Root CA X3.
- Il processo di verifica dei certificati di Let’s Encrypt nelle applicazioni basate sulla piattaforma Electron è stato compromesso. Il problema è stato risolto negli aggiornamenti 12.2.1, 13.5.1, 14.1.0, 15.1.0.
- In alcune distribuzioni si riscontrano problemi di accesso ai repository dei pacchetti utilizzando il gestore pacchetti APT, legati a vecchie versioni della libreria GnuTLS. Il problema ha colpito Debian 9, che utilizzava un pacchetto GnuTLS non corretto, causando problemi di accesso a deb.debian.org per gli utenti che non hanno aggiornato in tempo (la correzione gnutls28-3.5.8-5+deb9u6 è stata proposta il 17 settembre). Come soluzione alternativa, si consiglia di rimuovere DST_Root_CA_X3.crt dal file /etc/ca-certificates.conf.
- Il funzionamento di acme-client nella distribuzione destinata alla creazione di firewall OPNsense è stato compromesso; il problema era stato segnalato in anticipo, ma gli sviluppatori non sono riusciti a rilasciare la patch in tempo.
- Il problema riguardava il pacchetto OpenSSL 1.0.2k in RHEL/CentOS 7, ma una settimana fa è stato rilasciato un aggiornamento del pacchetto ca-certificates-2021.2.50-72.el7_9.noarch per RHEL 7 e CentOS 7, dal quale è stato rimosso il certificato IdenTrust, ossia il problema è stato bloccato in anticipo. Un aggiornamento simile è stato pubblicato una settimana fa per Ubuntu 16.04, Ubuntu 14.04, Ubuntu 21.04, Ubuntu 20.04 e Ubuntu 18.04. Poiché gli aggiornamenti sono stati rilasciati in anticipo, il problema con la verifica dei certificati Let’s Encrypt ha riguardato solo gli utenti delle versioni obsolete di RHEL/CentOS e Ubuntu che non installano regolarmente gli aggiornamenti.
- Interruzione del processo di verifica dei certificati in grpc.
- Errore durante la compilazione della piattaforma Cloudflare Pages.
- Problemi in Amazon Web Services (AWS).
- Problemi di connessione al DB per gli utenti di DigitalOcean.
- Interruzione del funzionamento della piattaforma cloud Netlify.
- Problemi di accesso ai servizi Xero.
- Errore durante il tentativo di stabilire una connessione TLS al Web API del servizio MailGun.
- Problemi nelle versioni di macOS e iOS (11, 13, 14) che teoricamente non avrebbero dovuto essere colpite dal problema.
- Interruzione dei servizi Catchpoint.
- Errore di verifica dei certificati durante l'accesso all'API di PostMan.
- Interruzione del funzionamento di Guardian Firewall.
- Interruzione della pagina di supporto di monday.com.
- Interruzione della piattaforma Cerb.
- Errore durante la verifica dell'uptime in Google Cloud Monitoring.
- Problema con la verifica dei certificati in Cisco Umbrella Secure Web Gateway.
- Problemi di connessione ai proxy Bluecoat e Palo Alto.
- Sono sorti problemi di connessione all'OpenStack API in OVHcloud.
- Problemi di generazione di report in Shopify.
- Si riscontrano problemi durante le chiamate all'API di Heroku.
- Interruzione del funzionamento di Ledger Live Manager.
- Errore di verifica del certificato negli strumenti per sviluppatori di applicazioni Facebook.
- Problemi in Sophos SG UTM.
- Problemi di verifica dei certificati in cPanel.
Fonte: opennet.ru
