Bug do WhatsApp CVE-2020-1910 pode ter levado à exposição de dados de usuários

A agora corrigida vulnerabilidade CVE-2020-1910 no recurso de filtro de imagem da WhatApp pode ter exposto os dados do usuário a atacantes remotos.

Uma vulnerabilidade de segurança de alta gravidade no recurso de filtro de imagem do WhatApp, rastreada como CVE-2020-1910 , pode ter sido explorada por invasores para ler informações confidenciais da memória do aplicativo simplesmente enviando uma imagem especialmente criada pelo aplicativo de mensagens

A falha foi descoberta por especialistas da Check Point em 10 de novembro de 2020, eles descobriram que o problema pode permitir que invasores travem o WhatsApp alternando entre vários filtros nos arquivos GIF maliciosos.

whatsapp CVE-2020-1910

A vulnerabilidade é um problema de leitura / gravação fora dos limites e decorre da aplicação de filtros de imagem específicos a uma imagem não autorizada e do envio da imagem alterada a um usuário alvo, a falha recebeu uma pontuação CVSS de 7,8.

“Uma verificação de limites ausentes no WhatsApp para Android anterior a v2.21.1.13 e no WhatsApp Business para Android anterior a v2.21.1.13 poderia ter permitido leitura e gravação fora dos limites se um usuário aplicasse filtros de imagem específicos a um imagem e enviou a imagem resultante. ” lê o comunicado publicado pelo WhatsApp.

Os pesquisadores da CheckPoint usaram uma técnica de difusão começando com um conjunto de imagens de alguns tipos de imagens (ou seja, bmp, ico, gif, jpeg e png) e aplicaram várias modificações a elas em um processo chamado mutação. Em seguida, os especialistas analisaram as imagens fornecidas como entrada que causaram o travamento do aplicativo. Os especialistas começaram a vasculhar as bibliotecas interessantes do WhatsApp e descobriram que a falha reside na função “applyFilterIntoBuffer ()” que lida com filtros de imagem.

A função pega a imagem de origem, aplica o filtro escolhido pelo usuário e copia o resultado no buffer de destino.

“Fizemos engenharia reversa na biblioteca libwhatsapp.so e usamos um depurador para analisar a causa raiz do travamento. Descobrimos que a vulnerabilidade reside em uma função nativa  applyFilterIntoBuffer ()  na  biblioteca libwhatsapp.so  . ” lê a análise publicada pela CheckPoint. “O problema é que as imagens de destino e de origem têm as mesmas dimensões e também o mesmo formato RGBA (o que significa que cada pixel é armazenado como 4 bytes, daí a multiplicação por 4).
No entanto, não há verificações realizadas no formato das imagens de origem e destino.
Portanto, quando uma imagem de origem criada com códigos maliciosos tem apenas 1 byte por pixel, a função tenta ler e copiar 4 vezes a quantidade do buffer de imagem de origem alocado, o que leva a um acesso à memória fora dos limites. ”

O WhatsApp respondeu ao CheckPoint que esse problema é complexo de explorar porque solicita várias ações dos usuários-alvo.

“Este relatório envolve várias etapas que um usuário teria que seguir e não temos nenhuma razão para acreditar que os usuários teriam sido afetados por este bug. Dito isso, mesmo os cenários mais complexos que os pesquisadores identificam podem ajudar a aumentar a segurança para os usuários ”. disse WhatsApp. “Como acontece com qualquer produto de tecnologia, recomendamos que os usuários mantenham seus aplicativos e sistemas operacionais atualizados, baixem atualizações sempre que estiverem disponíveis, relatem mensagens suspeitas e entrem em contato conosco se tiverem problemas com o WhatsApp.”

Autor: Pierluigi Paganini
Fonte: https://securityaffairs.co/