em busca de CurveSwap: medindo implementações de curvas elípticas no mundo real
Detalhes
2018 IEEE European Symposium on Security and Privacy (EuroS&P), pp. 384-398. IEEE, 2018.
Resumo
Realizamos uma pesquisa sobre implementações de curvas elípticas a partir de vários pontos de vista. Executamos varreduras na internet para TLS em um grande número de portas, bem como SSH e IPsec para medir o suporte e os comportamentos de implementação de curvas elípticas, e coletamos medidas passivas do suporte de curva do cliente para TLS. Também realizamos medições ativas para estimar a vulnerabilidade do servidor a ataques conhecidos contra implementações de curvas elípticas, incluindo suporte a curvas fracas, ataques de curva inválida e ataques de torção de curva. Estimamos que 1,53 % dos hosts HTTPS, 0,04 % dos hosts SSH e 4,04 % dos hosts IKEv2 que suportam curvas elípticas não realizam verificações de validade de curva como especificado nos padrões de curvas elípticas. Descrevemos como tais vulnerabilidades poderiam ser usadas para construir um ataque de downgrade de parâmetro de curva elíptica chamado CurveSwap para TLS e observamos que não parece haver combinações de comportamentos fracos que examinamos que permitam um ataque CurveSwap viável no mundo real. Também analisamos o código-fonte de implementações de curvas elípticas e descobrimos que um número de bibliotecas não realiza a validação de ponto para JSON Web Encryption e encontramos uma falha nos algoritmos de multiplicação Java e NSS.