Este tópico descreve como o comprometimento das chaves privadas da CA intermediária eMudhra afeta o repositório de confiança do Alibaba Cloud Linux. Ele fornece procedimentos para remover a confiança dos certificados raiz relacionados, atualizar pacotes e verificar os resultados.
Visão geral do incidente
Em 20 de outubro de 2026, foi divulgado publicamente o comprometimento das chaves privadas da autoridade certificadora (CA) intermediária pertencente à eMudhra. Partes não autorizadas podem usar as chaves comprometidas para emitir certificados X.509 fraudulentos. Se conseguirem interceptar ou redirecionar o tráfego de rede, elas podem se passar por services HTTPS e realizar ataques man-in-the-middle para roubar ou modificar dados de comunicação.
Trata-se de um problema de confiança em uma CA de terceiros, e não de uma vulnerabilidade de código no Alibaba Cloud Linux. Isso não significa que um sistema tenha sido atacado. Como os certificados raiz relacionados no repositório de confiança do sistema podem estabelecer cadeias de confiança para as CAs intermediárias comprometidas, o risco de confiança de certificados ainda exige remediação.
Detalhes do incidente
Em uma infraestrutura de chave pública (PKI), os clientes verificam a identidade de um service por meio de uma cadeia composta pelo certificado do servidor, certificados de CA intermediária e um certificado de CA raiz confiável. As chaves comprometidas pertencem a CAs intermediárias. Essas CAs podem encadear, por meio de assinaturas ou assinaturas cruzadas, às raízes Comodo AAA Services e emSign ECC Root CA - G3 presentes no repositório de confiança do sistema. Se as validações de cadeia, validade, uso e outras verificações forem aprovadas, os clientes que ainda confiam nessas raízes podem aceitar certificados de service fraudulentos.
O procedimento a seguir remove a confiança nos dois certificados raiz listados abaixo. Os rótulos de confiança identificam os certificados nos comandos. Use as impressões digitais SHA-256 para verificar a identidade do certificado.
|
Certificado raiz (rótulo de confiança) |
CN do assunto do certificado |
Impressão digital SHA-256 |
|
Comodo AAA Services root |
AAA Certificate Services |
D7:A7:A0:FB:5D:7E:27:31:D7:71:E9:48:4E:BC:DE:F7:1D:5F:0C:3E:0A:29:48:78:2B:C8:3E:E0:EA:69:9E:F4 |
|
emSign ECC Root CA - G3 |
emSign ECC Root CA - G3 |
86:A1:EC:BA:08:9C:4A:8D:3B:BE:27:34:C6:12:BA:34:1D:81:3E:04:3C:F9:E8:A8:62:CD:5C:57:A3:6B:BE:6B |
Programas que utilizam o repositório de confiança do sistema para validar certificados TLS podem ser afetados. Exemplos incluem curl, wget, yum/dnf e aplicativos OpenSSL, GnuTLS, NSS ou Java configurados para usar esse repositório. O impacto depende do repositório de confiança e da cadeia de certificados em uso, e não apenas do nome do programa.
Produtos e versões afetados
A equipe de segurança do Alibaba Cloud Linux confirmou que os seguintes produtos e versões do pacote ca-certificates são afetados:
|
Product |
Versões do pacote ca-certificates |
Status |
|
Alibaba Cloud Linux 2 |
2023.2.60_v7.0.306-72.1.al7 e anteriores |
Afetado |
|
Alibaba Cloud Linux 3 |
2024.2.69_v8.0.303-80.0.al8 e anteriores |
Afetado |
|
Alibaba Cloud Linux 4 |
2024.2.69_v8.0.303-3.alnx4 e anteriores |
Afetado |
|
Alibaba Cloud Linux 4 (Deb Edition) |
< 20260816ubuntu0.24.04.1 |
Afetado |
Atualizar o ca-certificates no host não atualiza automaticamente imagens de contêiner, o certifi do Python, o repositório de CA integrado do Node.js, keystores Java fornecidos por aplicativos ou outros repositórios de confiança mantidos independentemente. Confirme os procedimentos de remediação e as versões corrigidas com os fornecedores correspondentes e atualize os ambientes que realmente executam seus aplicativos.
Remediação
Remover a confiança dessas CAs raiz torna não confiáveis os certificados de service que só podem encadear a essas raízes. Se um provedor de service não tiver substituído sua cadeia de certificados e nenhuma cadeia alternativa para outra CA confiável estiver disponível, a validação do certificado TLS falhará e os clientes afetados podem não conseguir se conectar. Antes de prosseguir, avalie as dependências de negócios, faça backup da configuração relevante e teste as alterações. Agende uma janela de manutenção, se necessário. Entre em contato com o provedor de service para substituir a cadeia de certificados por uma confiável. Não desative a validação de certificados TLS nem a ignore com opções como curl -k.
Alibaba Cloud Linux 2, 3 e 4
Execute as operações a seguir como root em um ambiente bash. Primeiro, execute o comando somente leitura abaixo para verificar a versão do pacote. Se trust, OpenSSL ou update-ca-trust não estiverem disponíveis, pare e verifique se as ferramentas necessárias estão instaladas. Um comando ausente não significa que a remediação foi concluída.
rpm -q ca-certificates
-
Execute os comandos a seguir na mesma sessão bash para extrair os dois certificados raiz para o diretório local de desconfiança. Use o diretório blocklist se ele existir; caso contrário, use o diretório blacklist. A cadeia de comandos será interrompida se o diretório não existir, se a extração falhar ou se um arquivo de saída estiver vazio. Resolva o problema antes de continuar.
d=/etc/pki/ca-trust/source/blocklist [ -d "$d" ] || d=/etc/pki/ca-trust/source/blacklist test -d "$d" && trust extract --overwrite --format=pem-bundle --filter='pkcs11:object=Comodo%20AAA%20Services%20root;type=cert' "$d/Comodo_AAA_Services_root.pem" && test -s "$d/Comodo_AAA_Services_root.pem" && trust extract --overwrite --format=pem-bundle --filter='pkcs11:object=emSign%20ECC%20Root%20CA%20-%20G3;type=cert' "$d/emSign_ECC_Root_CA_-_G3.pem" && test -s "$d/emSign_ECC_Root_CA_-_G3.pem" -
Na mesma sessão, exiba as impressões digitais SHA-256 dos certificados extraídos e compare cada uma com as impressões digitais na seção Detalhes do incidente. Se um comando falhar ou uma impressão digital não corresponder, pare. Não atualize o repositório de confiança.
openssl x509 -in "$d/Comodo_AAA_Services_root.pem" -noout -fingerprint -sha256 openssl x509 -in "$d/emSign_ECC_Root_CA_-_G3.pem" -noout -fingerprint -sha256 -
Após verificar a identidade de ambos os certificados, regenere o repositório de confiança do sistema:
update-ca-trust extract -
Execute os comandos a seguir para verificar se o pacote de certificados do sistema gerado ainda contém essas raízes. A configuração pipefail impede que a verificação de correspondência seja executada se o pipeline do OpenSSL falhar.
set -o pipefail subjects=$(openssl crl2pkcs7 -nocrl -certfile /etc/pki/tls/certs/ca-bundle.crt | openssl pkcs7 -print_certs -noout) && printf '%s\n' "$subjects" | grep -E 'subject=.*CN ?= ?(AAA Certificate Services|emSign ECC Root CA - G3)'As raízes estarão ausentes deste pacote somente se a listagem de certificados for bem-sucedida, o OpenSSL não relatar erros e o grep não produzir nenhuma saída correspondente. Um código de saída 1 do grep significa que nenhuma correspondência foi encontrada, o que é esperado. Se assuntos de certificados aparecerem ou ocorrer um erro de leitura de arquivo ou análise de certificado, não conclua que a remediação foi bem-sucedida. Esta verificação não confirma que todos os repositórios de confiança específicos de aplicativos foram atualizados.
Não edite diretamente arquivos gerados, como /etc/pki/tls/certs/ca-bundle.crt. Eles são sobrescritos quando o update-ca-trust é executado ou quando pacotes são atualizados. Os comandos de extração sobrescrevem arquivos de desconfiança existentes com os mesmos nomes. Faça backup desses arquivos fora dos diretórios do repositório de confiança antes de prosseguir.
Se você precisar reverter essa configuração local de desconfiança, primeiro avalie o risco de segurança de restaurar a confiança do certificado e obtenha a aprovação de alteração necessária. Em seguida, remova os dois arquivos PEM adicionados por este procedimento, execute update-ca-trust extract e verifique seus services. A reversão pode restaurar a confiança nas cadeias de certificados afetadas e não deve ser a resposta normal para falhas de conexão.
Alibaba Cloud Linux 4 (Deb Edition)
Atualize o ca-certificates por meio do repositório oficial de software configurado para a versão 20260816ubuntu0.24.04.1 ou posterior:
sudo apt update && sudo apt install --only-upgrade ca-certificates
Após a atualização ser concluída com êxito, execute o seguinte comando somente leitura para visualizar a versão completa do pacote instalado e compará-la com a versão corrigida acima:
dpkg-query -W -f='${Package} ${Version}\n' ca-certificates
Se o pacote não estiver instalado, o repositório não fornecer a versão corrigida ou a atualização falhar, não considere a conclusão do comando como uma remediação bem-sucedida. O Deb Edition usa seu próprio mecanismo de gerenciamento de repositório de confiança. Não aplique os diretórios de sistema RPM ou os comandos update-ca-trust acima ao Deb Edition.
Após a remediação, confirme o repositório de confiança realmente usado por cada aplicativo e verifique conexões TLS críticas e logs de erros. Para processos de longa duração que armazenam em cache informações de confiança da CA, recarregue-os conforme exigido pelo aplicativo ou reinicie-os durante uma janela de manutenção. Atualize e verifique contêineres e outros repositórios de confiança independentes separadamente.