Ataques

WhatsApp Hackeado – Como?

Tempo de leitura: 2 minutos

Semana passada (14/05/2019) o Facebook informou que o WhatsApp havia sido hackeado e que os alvos foram “escolhidos a dedo”. Algumas agências de notícias chegaram a afirmar que foi um trabalho de espionagem contra estes seletos usuários porque após o ataque ser bem sucedido, era instalado um aplicativo espião para roubar as conversas destes usuários.

Mas afinal, que falha foi explorada neste ataque?

A falha usada foi um 0day (ou seja, uma falha sem correção) que explorava uma vulnerabilidade de buffer overflow na pilha das chamadas VOIP do Whatsapp, permitindo a execução de comandos.

Basicamente foram enviados pacotes SRTCP especiamente criados para estourar o buffer do WhatsApp e executar comandos.

SRTCP significa Secure Real-time Transport Control Protocol. Este procolo é bastante semelhante do RTP (Real-time Transport Protocol) mas adiciona criptografia aos pacotes.

O Facebook fez uma notificação sobre a vulnerabilidade que pode ser vista em https://www.facebook.com/security/advisories/cve-2019-3568 e foi criado um CVE – Common Vulnerabilities and Exposures – Vulnerabilidades e Exposições Comuns – numerado como CVE-2019-3568.

O que o Facebook/WhatsApp fez para corrigir esta vulnerabilidade?

O pessoal de pesquisa da CheckPoint fez uma análise da correção. Eles pegaram o binário do WhatsApp com a falha corrigida, o binário do WhatsApp vulnerável e fizeram um “bindiff” para verificar as diferenças de código. Verificaram então que o Facebook/WhatsApp adicionou duas novas verificações de tamanho:

Verificação 1:

Função de entrada que lida com pacotes RTCP

A primeira verificação é realizada no início da função responsável por lidar com pacotes RTCP. O facebook/WhatsApp adicionou uma verificação de tamanho máximo de 1480 bytes (0x5C8).

Durante a sessão de debugging conduzida pela CheckPoint, confirmaram que esta função é chamada antes mesmo da ligação ser atendida.

Verificação 2:

Segunda verificação adicionada pelo Facebook/WhatsApp

Foram adicionadas outras duas verificações de tamanho para garantir que não ocorrerá o “overflow” novamente. A segunda verificação (marcada em azul) é feita bem antes de copiar os dados para a memória.

O que fazer para me proteger desta vulnerabilidade?

Como dito, foram liberados patches de correção. Para se proteger, apenas atualize o WhatsApp na Store oficial do seu Sistema Mobile.

Leave a Comment

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *