Mais umas brincadeiras de engenharia social com Punycode

A internacionalização de domínios web parece ter trazido mais dores de cabeça que vantagens.

Foi descoberta recentemente mais uma forma de enganar utilizadores na web usando Punycode. A técnica per se não é nova, como se pode comprovar pelo artigo da Wikipedia sobre ataques recorrendo a homografia: consiste em colocar na barra de localização um endereço o mais semelhante possível ao qual se pretende fazer passar. A novidade é o uso de certificados por parte do site do atacante. Ao utilizar um certificado válido, o utilizador vê o endereço que supostamente pretendia aceder, acompanhado do cadeado verde. Ou seja, o navegador acaba por induzir ainda mais o utilizador em erro, dando-lhe o falso feedback de que aquele site é o que pretendia visitar.

Exemplo de análise do certificado no Google Chrome
Exemplo de análise do certificado no Google Chrome

Na figura pode-se ver o endereço que é, aparentemente, do site da Apple, quando na verdade de trata de um domínio registado com carateres muito semelhantes. Podem ver aqui a prova de conceito: https://www.xn--80ak6aa92e.com. Neste caso, o site do atacante tem um certificado. Ao obter os detalhes do certificado, o nome também aparece convertido. À data de visualização da prova de conceito, o site utilizava um certficado da Let’s Encrypt, que é relativamente fácil de obter e instalar, sem burocracia nem pagamentos.

No Firefox, no entanto, um utilizador mais curioso daria com a diferença. No popup que aparece ao clicar no cadeado verde aparece o domínio forjado, no entanto, ao abrir a janela que permite ver os detalhes do certificado, pode-se verificar que o domínio não corresponde.

No Firefox, tem de se ir à janela de análise do certificado para se perceber que o domínio não corresponde ao esperado
No Firefox, tem de se ir à janela de análise do certificado para se perceber que o domínio não corresponde ao esperado

Entretanto, os browsers estão a ser atualizados, e este “truque” deixará de ter efeito (no mínimo, espero que o certificado seja apresentado com o nome de domínio real). Mas tenho a certeza que este não será o último episódio de engenharia social envolvendo Punycode.

Via ARSTechnica