Oito Bits de Confiança: chaves da CA da eMudhra quebradas em milissegundos
Uma grande autoridade certificadora indiana, a eMudhra, foi encontrada gerando várias chaves privadas de CA de curva elíptica com efetivamente apenas 8 bits de entropia, incluindo uma com o valor “4”, tornando-as quebráveis em milissegundos a partir de seus certificados públicos. Comentadores exploram como isso pôde escapar às auditorias e entrar nos trust stores dos navegadores, o que isso revela sobre a fragilidade do modelo de autoridades certificadoras da web e os limites de salvaguardas como o Certificate Transparency. Eles também destacam o impacto prolongado em dispositivos IoT e embarcados sem patch, que agora podem ficar trivialmente vulneráveis a ataques man-in-the-middle em HTTPS — ou ser oportunisticamente submetidos a jailbreak — até que seus trust stores sejam atualizados ou os dispositivos sejam aposentados.
Causa das Chaves Fracas
- Comentadores dissecam o relatório de bug da Mozilla: a eMudhra culpa uma variação do “KGC script” usada para empacotar/desempacotar chaves ECC para exportação.
- Um segundo par de chaves, muito mais fraco, aparentemente foi gerado devido a uma falha de código, e rótulos de chaves confusamente semelhantes levaram operadores a usar as chaves erradas para CSRs e cross-signing.
- Vários acham alarmante que o HSM ou as ferramentas de cerimônia pudessem gerar chaves em um intervalo tão pequeno; veem capacidades de “teste/chave fraca” como um defeito fundamental de projeto.
Malícia vs. Incompetência
- Muitos argumentam que isso é negligência grosseira ou “estupidez avançada”, não malícia: se você já controla a CA, não precisa de uma chave fraca para abusar dela.
- Outros observam que a fraqueza deliberada poderia fornecer plausibilidade para negação, mas a maioria ainda considera a explicação de “bug + procedimentos desleixados” mais plausível.
Problemas Sistêmicos de CA e Auditoria
- Há forte sentimento de que o ecossistema de CAs é superconfiado e pouco verificado: centenas de roots e milhares de intermediárias, mas sem testes básicos de entropia/unidade para chaves de CA.
- As auditorias são criticadas como exercícios de marcar caixas que podem deixar passar falhas triviais como chaves de 8 bits.
- Alguns sugerem que este incidente deveria encerrar a empresa; outros observam que muitas CAs são “anistiadas por antiguidade” e que requisitos políticos/do tipo eIDAS tornam improvável uma poda drástica.
Impacto e Mitigação
- Conselho imediato: atualizar os bundles de CA do sistema operacional, runtimes de linguagem e reconstruir imagens de contêiner; note que o Flatpak e alguns runtimes ainda podem distribuir seus próprios repositórios.
- Grande preocupação com dispositivos sem patch ou raramente atualizados (roteadores, TVs, impressoras, IoT, keystores Java embarcados) que confiarão nessas intermediárias até 2039.
Descoberta e Busca por Outras Chaves Fracas
- As chaves fracas teriam sido encontradas executando o paranoid_crypto do Google sobre certificados da CCADB; verificações adicionais desse corpus não encontraram casos semelhantes.
- Vários propõem verificações automatizadas mais amplas (“entropia do código da bagagem”) em todas as roots/intermediárias, inclusive para chaves truncadas ou semeadas por timestamp.
Debates sobre Alternativas à PKI
- Longas subthreads discutem substituir ou restringir CAs via DNSSEC/DANE, name constraints, ou assinatura de conteúdo e gráficos de confiança controlados pelo usuário.
- Contra-argumentos enfatizam falhas de implantação (DNSSEC), questões políticas/de controle com operadores de TLD, usabilidade para não especialistas e a persistência de clientes legados.
IoT e Uso Oportunista
- Várias pessoas já estão usando as chaves quebradas da CA para fazer MITM do tráfego e fazer jailbreak em dispositivos travados (smart speakers, eletrodomésticos, hardware ESP32).
- Esse aspecto de uso duplo é visto tanto como uma rara “vantagem” quanto como um sério risco à confidencialidade enquanto os dispositivos permanecem sem patch.