Um grupo de pesquisadores da Universidade do Texas, da Universidade de Illinois e da Universidade de Washington divulgou informações sobre uma nova família de ataques de canal lateral (CVE-2022-23823, CVE-2022-24436), codinome Hertzbleed. O método de ataque proposto é baseado nas características do gerenciamento dinâmico de frequência em processadores modernos e afeta todas as CPUs atuais da Intel e da AMD. Potencialmente, o problema pode também se manifestar em processadores de outros fabricantes que suportam a alteração dinâmica de frequência, como em sistemas ARM, mas o estudo realizado limitou-se à verificação de chips Intel e AMD. Os códigos fonte com a implementação do método de ataque foram publicados no GitHub (a implementação foi testada em um computador com CPU Intel i7-9700).
Para otimizar o consumo de energia e evitar superaquecimento, os processadores modificam dinamicamente a frequência de acordo com a carga, o que resulta em variações de desempenho e afeta o tempo de execução das operações (uma alteração de 1 Hz na frequência resulta em uma mudança de desempenho de 1 ciclo por segundo). No decorrer da pesquisa, foi descoberto que, em certas condições, a alteração da frequência em processadores AMD e Intel correlaciona-se diretamente com os dados processados, o que, por exemplo, faz com que o tempo de cálculo das operações '2022 + 23823' e '2022 + 24436' seja diferente. Com base na análise das discrepâncias nos tempos de execução das operações com diferentes dados, é possível restituir indiretamente informações utilizadas durante os cálculos. Além disso, em redes de alta velocidade com latências constantes previsíveis, o ataque pode ser realizado remotamente, avaliando o tempo de execução das requisições.
Caso o ataque seja bem-sucedido, os problemas identificados permitem determinar chaves privadas com base na análise do tempo de cálculo em bibliotecas criptográficas que utilizam algoritmos cujos cálculos matemáticos são sempre realizados em tempo constante, independentemente da natureza dos dados processados. Essas bibliotecas eram consideradas seguras contra ataques de canal lateral, mas, como se revelou, o tempo de cálculo é influenciado não apenas pelo algoritmo, mas também pelas características do funcionamento do processador.
Como exemplo prático que demonstra a viabilidade da aplicação do método proposto, foi mostrando um ataque à implementação do mecanismo de encapsulamento de chave SIKE (Supersingular Isogeny Key Encapsulation), que chegou à final do concurso sobre criptossistemas pós-quânticos realizado pelo Instituto Nacional de Padrões e Tecnologia dos EUA (NIST) e é posicionado como protegido contra ataques de canal lateral. Durante o experimento, utilizando uma nova variante de ataque baseada em texto cifrado escolhido (busca gradual baseada em manipulações do texto cifrado e recuperação da sua decodificação), foi possível restaurar completamente a chave usada para cifragem, realizando medições a partir de um sistema remoto, apesar da implementação do SIKE utilizar tempos de computação constantes. Para determinar uma chave de 364 bits usando a implementação da CIRCL, foram gastos 36 horas, enquanto para a PQCrypto-SIDH foram 89 horas.
As empresas Intel e AMD reconheceram que seus processadores estão vulneráveis ao problema, mas não têm planos de bloquear a vulnerabilidade através de uma atualização de microcódigo, já que não é possível eliminar a vulnerabilidade de forma hardware sem impacto significativo na performance. Em vez disso, recomendações foram dadas aos desenvolvedores de bibliotecas criptográficas para bloquear software as vazamentos de informações durante a realização de cálculos confidenciais. As empresas Cloudflare e Microsoft já adicionaram essa proteção em suas implementações do SIKE, o que resultou em uma redução de 5% na performance da CIRCL e 11% na da PQCrypto-SIDH. Como outra alternativa de bloquear a vulnerabilidade, no BIOS ou no driver, pode-se desativar os modos 'Turbo Boost', 'Turbo Core' ou 'Precision Boost', mas essa alteração resultará em uma queda drástica de performance.
As empresas Intel, Cloudflare e Microsoft foram notificadas sobre o problema no terceiro trimestre de 2021, enquanto a AMD foi notificada no primeiro trimestre de 2022, mas a pedido da Intel, a divulgação pública da informação foi adiada até 14 de junho de 2022. A existência do problema foi confirmada em processadores de desktop e laptops baseados nas microarquiteturas Intel Core da 8ª a 11ª geração, bem como em vários processadores de desktop, móveis e servidores AMD Ryzen, Athlon, A-Series e EPYC (os pesquisadores demonstraram o método em CPUs Ryzen com microarquiteturas Zen 2 e Zen 3).
Fonte: opennet.ru
