Os pesquisadores extraem chaves RSA de erros de assinatura do servidor SSH
20 de Novembro de 2023

Uma equipe de pesquisadores acadêmicos de universidades na Califórnia e Massachusetts demonstrou que é possível, em certas condições, para invasores passivos de rede obterem chaves RSA secretas de erros que ocorrem naturalmente, resultando em tentativas falhas de conexão SSH (secure shell).

SSH é um protocolo de rede criptográfico para comunicação segura, amplamente utilizado em acessos remotos a sistemas, transferências de arquivos, e tarefas de administração de sistemas.

RSA é um sistema de criptografia de chave pública usado no SSH para autenticação de usuários.

Ele usa uma chave privada, secreta, para decifrar a comunicação que é criptografada com uma chave pública, compartilhável.

Um artigo publicado por pesquisadores universitários Keegan Ryan, Kaiwen He, Nadia Heninger e George Arnold Sullivan, mostra que é possível para um invasor passivo de rede obter uma chave RSA privada de servidores SSH que estão apresentando falhas durante o cálculo de assinatura.

"Se uma implementação de assinatura usando CRT-RSA tem uma falha durante o cálculo de assinatura, um invasor que observa essa assinatura pode ser capaz de calcular a chave privada do assinante”, dizem os pesquisadores em seu artigo técnico.

O Teorema Chinês do Resto (CRT) é usado com o algoritmo RSA para diminuir o tamanho do bit para a chave pública e acelerar o tempo de descriptografia.

"Esses ataques exploram o fato de que, se um erro é cometido durante o cálculo de módulo um primo, digamos q, então a assinatura inválida resultante 's' é equivalente à assinatura correta módulo um fator primo p, mas não q", explicam os pesquisadores.

Embora erros deste tipo sejam raros, eles são inevitáveis devido a falhas de hardware.

Dado um conjunto de dados suficientemente grande, um invasor pode encontrar e aproveitar muitas oportunidades para exploração.

Esse é um problema conhecido que afeta versões mais antigas do TLS.

Foi endereçado em TLS 1.3, cifrando o handshake que estabelece a conexão, impedindo assim eavesdroppers passivos de lerem as assinaturas.

O SSH era anteriormente considerado seguro contra este ataque, mas os pesquisadores provaram que é possível recuperar segredos do RSA usando ataques baseados em treliça que recuperam a chave privada de nonces parcialmente conhecidos.

Os pesquisadores notam que seus testes não incluem resultados "para RSA-1024, SHA512 porque o número de bits desconhecidos no hash está muito além do que podemos forçar brutalmente ou resolver com treliças."

No entanto, eles acrescentam que "o ataque de treliça é bastante eficiente" e que seus testes tiveram uma taxa de sucesso de 100%.

Usando seu ataque de treliça, os pesquisadores conseguiram encontrar 4.962 assinaturas inválidas que revelaram a fatoração da chave pública RSA correspondente, permitindo assim a recuperação das chaves privadas correspondentes a 189 chaves públicas RSA únicas.

Muitos dos segredos recuperados vieram de dispositivos com implementações vulneráveis, o maior número de assinaturas veio de dispositivos Zyxel.

Os pesquisadores divulgaram o problema para a Cisco e Zyxel no início deste ano e os fornecedores investigaram a causa.

A Cisco determinou que uma mitigação adequada foi introduzida no ano passado no Software Cisco ASA e FTD.

A empresa informou aos pesquisadores que estava procurando formas de mitigar no Software Cisco IOS e IOS XE.

A Zyxel descobriu que a versão do firmware ZLD que os pesquisadores usaram no experimento havia mudado para o uso do OpenSSL, o qual elimina o risco.

Os pesquisadores alertam que, se as implementações de assinatura que usam o algoritmo do Teorema Chinês do Resto (CRT) com RSA tiverem uma falha ao calcular a assinatura, um invasor que observa a assinatura pode ser capaz de computar a chave privada do assinante.

Para contrariar a capacidade de um invasor de recuperar a chave secreta, os pesquisadores recomendam implementações que validem assinaturas antes de enviá-las, como a suíte OpenSSH que se baseia em OpenSSL para gerar assinaturas.

Publicidade

Proteja sua empresa contra hackers através de um Pentest

Tenha acesso aos melhores hackers éticos do mercado através de um serviço personalizado, especializado e adaptado para o seu negócio. Qualidade, confiança e especialidade em segurança ofensiva de quem já protegeu centenas de empresas. Saiba mais...