Recentemente, foi descoberta uma vulnerabilidade significativa na série YubiKey 5, um dos tokens de hardware mais amplamente utilizados para autenticação de dois fatores (2FA) baseados no padrão FIDO. A falha, que reside em um microcontrolador utilizado por uma vasta gama de dispositivos de autenticação, expõe os usuários ao risco de clonagem do dispositivo caso um atacante tenha acesso físico temporário ao YubiKey. Exploremos em mais detalhes essa vulnerabilidade, seus impactos e as possíveis medidas de mitigação.
A Natureza da Vulnerabilidade
A vulnerabilidade identificada na YubiKey 5 está relacionada a um “side channel”, ou canal lateral, uma forma de ataque que explora pistas físicas, como emanações eletromagnéticas ou diferenças temporais na execução de operações criptográficas, para extrair segredos criptográficos. Neste caso, o problema específico está na implementação do Algoritmo Euclidiano Estendido (EEA) na biblioteca criptográfica da de um microcontrolador. Ele contém falhas na defesa comum contra ataques de canal lateral conhecida como “tempo constante”.
Ao monitorar as pequenas diferenças de tempo na execução dessas operações, é possível deduzir a chave ECDSA temporária, ou nonce, e, com mais análise, extrair a chave secreta ECDSA, comprometendo completamente a segurança do token. A exploração dessa falha foi demonstrada por pesquisadores da NinjaLab, que conseguiram clonar um dispositivo YubiKey 5Ci após uma análise detalhada da implementação da Infineon.
Impacto no ecossistema YubiKey
Todos os dispositivos YubiKey 5 que executam firmware anterior à versão 5.7.0 são vulneráveis a este tipo de ataque. Como a atualização do firmware não é possível nesses dispositivos, eles permanecem permanentemente vulneráveis, deixando os usuários sem uma solução direta para corrigir o problema. A Yubico, fabricante das YubiKeys, emitiu um aviso confirmando que a vulnerabilidade poderia ser explorada em ataques sofisticados e direcionados, onde o atacante teria acesso físico ao dispositivo e os conhecimentos necessários sobre as contas-alvo, além de equipamento especializado para realizar o ataque.
Para realizar o ataque de clonagem, o invasor precisa ter acesso físico à YubiKey e executar uma série de passos altamente técnicos. Primeiro, seria necessário abrir o dispositivo para expor a placa lógica que armazena os segredos criptográficos. Depois, o chip seria conectado a hardware e software especializados para medir a radiação eletromagnética enquanto o token autentica uma conta existente. Com essas medições em mãos, o atacante poderia então extrair a chave secreta ECDSA e criar um clone do dispositivo. Esse clone permitiria que o atacante acessasse as contas protegidas pela YubiKey original sem que o usuário legítimo percebesse.
A falha afeta principalmente os casos de uso que dependem do padrão FIDO, como o uso de YubiKeys para autenticação em serviços online. Embora a probabilidade de um ataque desse tipo ser amplamente utilizado seja baixa, dado o nível de sofisticação necessário, o fato de uma YubiKey poder ser clonada viola uma das garantias fundamentais das chaves compatíveis com FIDO: que o material criptográfico armazenado nelas não pode ser lido ou copiado por outros dispositivos.
Todas as YubiKeys da série 5 com versões de firmware anteriores à 5.7.0 foram afetadas, bem como a YubiHSM 2 com firmware anterior à versão 2.4.0. Dispositivos mais novos, como a YubiKey 5 e YubiHSM 2, com firmwares 5.7.0 e 2.4.0, respectivamente, não são vulneráveis, pois a Yubico substituiu a biblioteca criptográfica da Infineon por uma desenvolvida internamente, que não possui a mesma vulnerabilidade.
Medidas de mitigação
Embora não seja possível corrigir a falha diretamente nas YubiKeys afetadas, existem algumas medidas que podem ser tomadas para mitigar os riscos:
- Controle Físico Rigoroso: Usuários devem manter o controle rigoroso de seus dispositivos YubiKey, especialmente em ambientes onde o risco de acesso físico por terceiros seja alto. Em caso de perda ou roubo de uma YubiKey, é importante descadastrar o dispositivo imediatamente dos serviços associados;
- Autenticação Biométrica e PIN: Para YubiKeys da série Bio, que requerem verificação do usuário (como uma impressão digital) em todas as credenciais, os usuários devem garantir que essa proteção esteja habilitada para fornecer uma camada adicional de segurança contra ataques físicos;
- Uso de Chaves de Backup: Organizações e usuários podem considerar a utilização de chaves de backup ou métodos de autenticação alternativos para minimizar o impacto potencial de um dispositivo YubiKey comprometido;
- Atenção às Configurações de Sessão: As organizações podem ajustar as configurações de seus provedores de identidade para reduzir a duração das sessões e exigir autenticação mais frequente, limitando a janela de tempo em que um dispositivo clonado poderia ser usado;
- Alternativas Criptográficas: Nos casos onde a criptografia ECDSA é utilizada, os usuários podem optar por chaves RSA para evitar o impacto da vulnerabilidade.
Embora a vulnerabilidade na YubiKey 5 seja séria, especialmente para alvos de alto valor, como grandes corporações, a autenticidade baseada em FIDO ainda é uma das formas mais robustas de autenticação. O uso adequado e o controle físico dos dispositivos, combinado com a adoção de medidas de segurança adicionais, podem ajudar a mitigar os riscos. No entanto, a descoberta desta vulnerabilidade serve como um lembrete de que, mesmo as soluções de segurança mais respeitadas, não são infalíveis e devem ser monitoradas e atualizadas constantemente para enfrentar novos desafios.
Fique por dentro das principais notícias da semana sobre o mundo da tecnologia e do Linux, assine nossa newsletter!