O YubiKey 5, o token de hardware mais amplamente utilizado para autenticação de dois fatores com base no Padrão FIDOcontém uma falha criptográfica que torna o dispositivo do tamanho de um dedo vulnerável à clonagem quando um invasor obtém acesso físico temporário a ele, disseram pesquisadores na terça-feira.
A falha criptográfica, conhecida como canal lateralreside em um pequeno microcontrolador usado em um grande número de outros dispositivos de autenticação, incluindo cartões inteligentes usados em serviços bancários, passaportes eletrônicos e acesso a áreas seguras. Embora os pesquisadores tenham confirmado que todos os modelos da série YubiKey 5 podem ser clonados, eles não testaram outros dispositivos usando o microcontrolador, como o SLE78 feito pela Infineon e microcontroladores sucessores conhecidos como Infineon Optiga Trust M e Infineon Optiga TPM. Os pesquisadores suspeitam que qualquer dispositivo usando qualquer um desses três microcontroladores e a biblioteca criptográfica Infineon contém a mesma vulnerabilidade.
Não é possível aplicar patch
O fabricante do YubiKey, Yubico, emitiu uma consultivo em coordenação com um relatório de divulgação detalhada da NinjaLab, a empresa de segurança que fez engenharia reversa na série YubiKey 5 e criou o ataque de clonagem. Todas as YubiKeys executando firmware anterior à versão 5.7 — que foi lançada em maio e substitui a criptobiblioteca Infineon por uma personalizada — são vulneráveis. Não é possível atualizar o firmware da chave na YubiKey. Isso deixa todas as YubiKeys afetadas permanentemente vulneráveis.
“Um invasor pode explorar esse problema como parte de um ataque sofisticado e direcionado para recuperar chaves privadas afetadas”, confirmou o aviso. “O invasor precisaria de posse física da YubiKey, Chave de Segurança ou YubiHSM; conhecimento das contas que deseja atingir; e equipamento especializado para executar o ataque necessário. Dependendo do caso de uso, o invasor também pode exigir conhecimento adicional, incluindo nome de usuário, PIN, senha da conta ou chave de autenticação.”
Canais laterais são o resultado de pistas deixadas em manifestações físicas, como emanações eletromagnéticas, caches de dados ou o tempo necessário para concluir uma tarefa que vaza segredos criptográficos. Nesse caso, o canal lateral é a quantidade de tempo gasto durante um cálculo matemático conhecido como inversão modular. A criptobiblioteca Infineon falhou em implementar uma defesa comum de canal lateral conhecida como tempo constante, pois realiza operações de inversão modular envolvendo o Algoritmo de Assinatura Digital de Curva Elíptica. O tempo constante garante que as operações criptográficas sensíveis ao tempo sejam executadas de forma uniforme, em vez de variável, dependendo das chaves específicas.
Mais precisamente, o canal lateral está localizado na implementação Infineon do Algoritmo Euclidiano Estendido, um método para, entre outras coisas, calcular o inverso modular. Ao usar um osciloscópio para medir a radiação eletromagnética enquanto o token está se autenticando, os pesquisadores podem detectar pequenas diferenças de tempo de execução que revelam a chave ECDSA efêmera de um token, também conhecida como nonce. Uma análise mais aprofundada permite que os pesquisadores extraiam a chave ECDSA secreta que sustenta toda a segurança do token.
No relatório de terça-feira, o cofundador do NinjaLab, Thomas Roche, escreveu: