La società Mozilla ha avvertito della compromissione delle chiavi private associate a otto certificati radice intermedi (secondari) dell'autorità di certificazione eMudhra. Le chiavi compromesse consentivano di emettere certificati TLS falsi per qualsiasi sito, percepiti come attendibili in tutti i browser, e di utilizzarli per intercettare o modificare il traffico in transito.
Le chiavi private sono state ricreate da ricercatori a partire dai dati pubblicamente disponibili, reso possibile da un errore nel processo di generazione delle chiavi basato sulla curva ellittica P-384. L'errore ha portato alla generazione di chiavi utilizzando interi inferiori a 256 al posto di numeri casuali crittograficamente sicuri, ovvero la dimensione della chiave privata è risultata di 1 byte invece dei dovuti 48 byte. Con tale generazione, la chiave privata può essere ricostruita tramite l'algoritmo del logaritmo discreto o semplicemente provando a generare le prime 256 chiavi possibili. Poiché i valori delle chiavi private sono ora noti (4, 56, 66, 115, 155, 156, 230 e 237), si raccomanda a tutti gli utenti di aggiornare urgentemente i browser e i pacchetti di certificati radice.
Come prova della fuga delle chiavi private, il ricercatore che ha segnalato l'incidente ha pubblicato un messaggio firmato con le chiavi private di ciascuno degli otto certificati compromessi di eMudhra. È possibile controllare il proprio browser per gli aggiornamenti sulle informazioni relative ai certificati revocati sul sito dedicato all'incidente.
Sono stati urgentemente creati aggiornamenti correttivi per Firefox 158.0.1, 115.43.1 e 153.5.1, oltre che per le librerie NSS 3.131.1, che aggiornano il deposito di certificati radice e bloccano i certificati problematici. In Chrome e nei prodotti Google, i certificati compromessi sono stati bloccati il 17 ottobre, in Apple il 19 ottobre, e in Microsoft il 20 ottobre. Il blocco è stato effettuato anche tramite liste centralizzate di certificati revocati come OneCRL, CRLite e CRLSets.
Pacchetti con certificati radice aggiornati sono stati rilasciati per Ubuntu (ca-certificates 20260816ubuntu0.2*.04.1), Debian (ca-certificates 20250419+deb13u1), Arch Linux (ca-certificates-mozilla 3.131.1-1), Gentoo (ca-certificates 20260816.3.125), curl, Homebrew, Go (1.27.3, 1.26.10), Python, RustTLS, Electron e Elixir. Le liste dei certificati radice rimangono non aggiornate in FreeBSD, Node.js, Bun e Composer.
Prima dell'aggiornamento del pacchetto ca-certificates, per rimuovere manualmente i certificati radice problematici su Debian e Ubuntu è possibile utilizzare il comando:
sed -i \
-e 's|^mozilla/emSign_ECC_Root_CA_-_G3.crt|!&|’ \
-e 's|^mozilla/Comodo_AAA_Services_root.crt|!&|’ \
/etc/ca-certificates.conf && update-ca-certificates
Su Fedora, RHEL, CentOS Stream, Rocky Linux, AlmaLinux e Amazon Linux 2023:
d=/etc/pki/ca-trust/source/blocklist; [ -d $d ] || d=/etc/pki/ca-trust/source/blacklist
trust extract —overwrite —format=pem-bundle \
—filter='pkcs11:object=ComodoAAAServicesroot;type=cert' \
$d/Comodo_AAA_Services_root.pem &&
trust extract —overwrite —format=pem-bundle \
—filter='pkcs11:object=emSignECCRootCA-G3;type=cert' \
$d/emSign_ECC_Root_CA_-_G3.pem &&
update-ca-trust
Su openSUSE e SLES:
d=/etc/pki/trust/blocklist; [ -d $d ] || d=/etc/pki/trust/blacklist
trust extract —format=pem-bundle \
—filter='pkcs11:object=ComodoAAAServicesroot;type=cert' \
$d/Comodo_AAA_Services_root.pem &&
trust extract —format=pem-bundle \
—filter='pkcs11:object=emSignECCRootCA-G3;type=cert' \
$d/emSign_ECC_Root_CA_-_G3.pem &&
update-ca-certificates
Su NixOS:
security.pki.caCertificateBlacklist = [
«Comodo AAA Services root»
«emSign ECC Root CA — G3»
];
Su NetBSD:
certctl untrust /usr/share/certs/mozilla/all/emSign_ECC_Root_CA_-_G3.pem &&
certctl untrust /usr/share/certs/mozilla/all/Comodo_AAA_Services_root.pem
Fonte: opennet.ru
