blank

blank

Uma técnica de renderização que afeta as principais plataformas de mensagens e e-mail do mundo, incluindo Instagram, iMessage, WhatsApp, Signal e Facebook Messenger, permitiu que os agentes de ameaças criassem mensagens de phishing de aparência legítima nos últimos três anos.

 As vulnerabilidades estão renderizando bugs que fazem com que a interface dos aplicativos exiba URLs incorretamente com caracteres de controle Unicode RTLO (substituição da direita para a esquerda) injetados, tornando o usuário vulnerável a ataques de falsificação de URI.

Ao injetar um caractere RTLO em uma string, ele faz com que um navegador ou aplicativo de mensagens exiba a string da direita para a esquerda em vez de sua orientação normal da esquerda para a direita. Este caractere é usado predominantemente para a exibição de mensagens em árabe ou hebraico.

Isso permite que ataques de phishing falsifiquem domínios confiáveis ​​em mensagens enviadas a usuários no WhatsApp, iMessage, Instagram, Facebook Messenger e Signal, fazendo com que pareçam subdomínios legítimos e confiáveis ​​de apple.com ou google.com.

blank
Snap do vídeo de demonstração de exploração (GitHub)

As vulnerabilidades foram atribuídas aos seguintes CVEs e são conhecidas por funcionar nas seguintes versões de aplicativos de mensagens instantâneas:

CVE-2020-20093 – Facebook Messenger 227.0 ou anterior para iOS e 228.1.0.10.116 ou anterior no Android
CVE-2020-20094 – Instagram 106.0 ou anterior para iOS e 107.0.0.11 ou anterior no Android
CVE-2020-20095 – iMessage 14.3 ou anterior para iOS
CVE-2020-20096 – WhatsApp 2.19.80 ou anterior para iOS e 2.19.222 ou anterior no Android

O Signal não possui um ID CVE correspondente porque o método de ataque específico foi divulgado a eles recentemente.

Descoberta e PoC

Os IDs CVE são tão antigos porque a descoberta inicial das vulnerabilidades ocorreu em agosto de 2019 por um pesquisador chamado ‘zadewg’.

O pesquisador de segurança freelance Sick.Codes notou as falhas quando o Programa CVE as publicou recentemente no Twitter e decidiu investigar mais.

O Sick.Codes entrou em contato com o pesquisador para perguntar se ele havia acabado de tornar seu repositório público ou não, e o pesquisador respondeu com surpresa sobre os CVEs serem lançados agora, depois de tanto tempo.

O pesquisador estava relutante em compartilhar mais informações sobre o método de exploração das falhas, que havia sido demonstrado apenas em vídeo, então Sick.Codes decidiu replicar a exploração por conta própria e escrever uma prova de conceito (PoC) para ela.

Os dois pesquisadores de segurança concordaram com o lançamento imediato do PoC no GitHub, já que as vulnerabilidades podem estar sob exploração ativa há muito tempo.

A exploração é um abuso de uma linha que abusa da confiança dos gTLDs do iOS e do Android e do suporte à exibição de texto bidirecional e é tão simples quanto adicionar um único caractere de controle ‘\u202E’ entre dois URLs válidos.

Por exemplo, o PoC lançado abusa de google.com para o URL mascarado e clicável e define bit.ly/3ixIRwm como destino.

blank
O URL resultante mostrado como mesclado para o destinatário (Sick.Codes)

Após o caractere de controle RTLO injetado, a URL é revertida devido a tratá-la como um idioma “da direita para a esquerda” (árabe, hebraico etc.), portanto, o agente da ameaça deve considerar ao registrar o domínio de destino.

Por exemplo, usar um URL ‘gepj.xyz’ criado apareceria como o arquivo de imagem JPEG inócuo ‘zyx.jpeg’, enquanto criar “kpa.li” apareceria como um arquivo APK ‘li.apk’ etc.

Na realidade, esses destinos podem hospedar qualquer coisa, então a falsificação é altamente evasiva e difícil de detectar.

No entanto, o BleepingComputer notou algumas peculiaridades ao testar esse bug no iMessage, Signal e até no Gmail. Por exemplo, embora os URLs combinados possam aparecer como um único URL, na verdade eles são tratados como dois URLs.

Isso significa que, se um usuário clicar no lado esquerdo da URL, ele irá para Google.com e, se clicar no lado direito, irá para BleepingComputer.com.

Ainda mais estranho, enquanto o iMessage no iOS 15 mostra o texto ao contrário na tela de visualização da lista de mensagens, ele remove a string inversa na mensagem real.

blank
A lista de visualização de mensagens do iMessage mostra o texto invertido

Outros testes realizados pelo BleepingComputer mostram que essa falha de renderização não funciona como esperado no Gmail, Outlook.com ou ProtonMail.

Enquanto o URL é exibido como uma única string com o texto reverso, o caractere RTLO Unicode no hiperlink é convertido em seu equivalente hexadecimal, deixando um URL como:

http://www.google.com/%E2%80%AEwww.bleepingcomputer.com

 

Fonte: Bleeping Computer


Descubra mais sobre DCiber

Assine para receber os posts mais recentes por e-mail.