WhatsApp para Windows permite execução de scripts
29 de Julho de 2024

Uma falha de segurança na versão mais recente do WhatsApp para Windows permite o envio de anexos em Python e PHP que são executados sem qualquer aviso quando o destinatário os abre.

Para que o ataque seja bem-sucedido, é necessário ter o Python instalado, um pré-requisito que pode limitar os alvos a desenvolvedores de software, pesquisadores e usuários avançados.

O problema é semelhante ao que afetou o Telegram para Windows em abril, o qual inicialmente foi rejeitado mas corrigido mais tarde, onde os atacantes poderiam contornar alertas de segurança e realizar execução remota de código ao enviar um arquivo Python .pyzw através do cliente de mensagens.

O WhatsApp bloqueia múltiplos tipos de arquivo considerados arriscados para os usuários, mas a empresa informou que não planeja adicionar scripts Python à lista.

Testes adicionais mostram que arquivos PHP (.php) também não estão incluídos na lista de bloqueios do WhatsApp.

O pesquisador de segurança Saumyajeet Das encontrou a vulnerabilidade enquanto experimentava tipos de arquivo que poderiam ser anexados às conversas do WhatsApp para ver se o aplicativo permitia algum dos considerados arriscados.

Ao enviar um arquivo potencialmente perigoso, como .EXE, o WhatsApp o mostra e dá ao destinatário duas opções: Abrir ou Salvar Como.

No entanto, ao tentar abrir o arquivo, o WhatsApp para Windows gera um erro, deixando os usuários apenas a opção de salvar o arquivo no disco e iniciá-lo a partir de lá.

Nos testes, esse comportamento foi consistente com os tipos de arquivo .EXE, .COM, .SCR, .BAT e Perl usando o cliente do WhatsApp para Windows.

Das descobriu que o WhatsApp também bloqueia a execução de .DLL, .HTA e VBS.

Para todos eles, um erro ocorreu ao tentar lançá-los diretamente do aplicativo clicando em "Abrir".

Foi possível executá-los apenas após salvá-los no disco primeiro.

Das disse que encontrou três tipos de arquivo que o cliente do WhatsApp não bloqueia a execução: .PYZ (aplicativo ZIP Python), .PYZW (programa PyInstaller) e .EVTX (arquivo de Log de eventos do Windows).

Se todos os recursos estiverem presentes, tudo o que o destinatário precisa fazer é clicar no botão "Abrir" no arquivo recebido, e o script é executado.

Das reportou o problema para a Meta em 3 de junho e a empresa respondeu em 15 de julho dizendo que o problema já havia sido reportado por outro pesquisador e que deveria ter sido corrigido.

"Reportei esse problema para a Meta através do programa de recompensas por bugs, mas infelizmente eles o fecharam como Não Aplicável.

É decepcionante, pois este é um erro simples que poderia ser facilmente mitigado", explicou o pesquisador.

O representante da empresa também explicou que o WhatsApp tem um sistema para alertar os usuários quando eles são contatados por usuários que não estão em suas listas de contato, ou que têm números de telefone registrados em um país diferente.

No entanto, se a conta de um usuário for sequestrada, o atacante pode enviar para todos na lista de contatos scripts maliciosos que são mais fáceis de executar diretamente do aplicativo de mensagens.

Além disso, esses tipos de anexos poderiam ser postados em grupos de chat públicos e privados, o que poderia ser abusado por atores de ameaças para disseminar arquivos maliciosos.

Respondendo à rejeição do relatório pelo WhatsApp, Das expressou decepção com como o projeto lidou com a situação.

"Adicionando simplesmente as extensões .pyz e .pyzw à sua lista de bloqueios, a Meta pode prevenir potenciais explorações através desses arquivos zip Pythonicos", disse o pesquisador.

Ele adicionou que, ao abordar a questão, o WhatsApp "não só aprimoraria a segurança de seus usuários, mas também demonstraria seu comprometimento em resolver prontamente preocupações de segurança.

Publicidade

Aprenda hacking e pentest na prática com esse curso gratuito

Passe por todas as principais fases de um pentest, utilizando cenários, domínios e técnicas reais utilizados no dia a dia de um hacker ético. Conte ainda com certificado e suporte, tudo 100% gratuito. Saiba mais...