Falha no Telegram Desktop pode expor histórico de conversas em arquivos exportados

Uma vulnerabilidade de segurança encontrada no Telegram Desktop poderia permitir que mensagens armazenadas em arquivos de conversas exportadas fossem roubadas por meio de código JavaScript escondido em mensagens aparentemente comuns. O problema estava relacionado especificamente ao recurso que transforma conversas do aplicativo em páginas HTML para consulta fora do Telegram.

A falha foi corrigida pelo Telegram em julho de 2026, mas existe um detalhe importante: atualizar o aplicativo não corrige arquivos HTML que já haviam sido exportados usando versões vulneráveis. Por isso, usuários que mantêm cópias antigas de conversas precisam ter atenção antes de abri-las novamente.

O problema foi identificado pelos pesquisadores de segurança Denis Rostilov e Aleksander Rostilov, da ExPatch, e envolve uma técnica conhecida como Cross-Site Scripting (XSS). Segundo os pesquisadores, o código malicioso poderia ser inserido em determinados elementos de mensagens criadas por bots e permanecer escondido na conversa até que ela fosse exportada para HTML.

Como a vulnerabilidade funcionava

O Telegram Desktop permite que usuários exportem uma conversa individual ou dados de uma conta para arquivos que podem ser visualizados posteriormente em um navegador.

Esse recurso pode ser útil para criar backups, guardar registros de conversas ou consultar mensagens sem precisar abrir o aplicativo. O problema estava na forma como o Telegram Desktop tratava determinados botões adicionados às mensagens por bots.

Esses botões fazem parte do recurso chamado inline keyboard, utilizado por bots para oferecer opções interativas aos usuários.

Antes da correção, o Telegram tratava corretamente vários campos das mensagens, como o texto das mensagens e nomes dos remetentes, mas não aplicava o mesmo processo de proteção ao texto utilizado nesses botões. Isso permitia que um atacante inserisse comandos HTML e JavaScript em um campo que deveria conter apenas texto.

Para tornar o ataque menos perceptível, os pesquisadores demonstraram que era possível utilizar caracteres invisíveis para fazer com que o conteúdo malicioso não ficasse evidente no aplicativo.

Assim, a mensagem poderia parecer normal para quem estivesse visualizando a conversa no Telegram.

O problema aparecia posteriormente, durante a exportação.

Quando o Telegram Desktop vulnerável transformava a conversa em uma página HTML, o conteúdo malicioso podia ser incorporado ao arquivo sem a proteção necessária. Ao abrir esse arquivo em um navegador com JavaScript ativado, o código poderia ser executado.

O ataque não acontecia simplesmente ao receber a mensagem

Um ponto importante é que a vulnerabilidade não significava que qualquer mensagem recebida no Telegram imediatamente permitiria que um criminoso roubasse conversas.

Era necessário que uma sequência de condições fosse atendida.

Primeiro, a mensagem maliciosa precisava estar presente em uma conversa que fosse posteriormente exportada. Depois, a exportação precisava ter sido realizada usando uma versão vulnerável do Telegram Desktop. Por fim, o arquivo HTML precisava ser aberto em um navegador com JavaScript habilitado.

Isso reduz o cenário de exploração direta, mas não elimina o risco.

O problema é que um arquivo exportado pode permanecer armazenado durante meses ou até anos. Uma pessoa pode ter criado um backup de uma conversa antes da atualização do aplicativo e só voltar a abrir esse arquivo muito tempo depois.

Nesse cenário, o código malicioso permaneceria dentro do documento até que ele fosse carregado em um navegador.

Mensagens poderiam ser enviadas para servidores criminosos

Segundo os pesquisadores, depois que o JavaScript fosse executado, o código poderia acessar informações presentes naquele arquivo HTML.

Entre os dados potencialmente acessíveis estavam:

  • conteúdo das mensagens;
  • nomes dos remetentes;
  • horários das mensagens;
  • nome e tipo da conversa;
  • quantidade de participantes;
  • caminho local onde o arquivo estava armazenado.

O conteúdo poderia então ser enviado para um servidor controlado pelo invasor.

Isso significa que uma pessoa poderia acreditar estar simplesmente abrindo um backup de uma conversa antiga, enquanto o navegador executaria código escondido no documento e transmitiria informações para terceiros.

Em uma conversa contendo informações profissionais, documentos, dados pessoais, credenciais ou outras informações confidenciais, o impacto poderia ser significativo.

É importante, porém, fazer uma distinção: a vulnerabilidade não dava ao invasor acesso automático a toda a conta do Telegram.

O código conseguia acessar o conteúdo disponível no arquivo HTML que havia sido aberto. O Telegram Desktop também divide exportações grandes em arquivos separados, com até aproximadamente mil mensagens por arquivo. Dessa forma, o alcance do código ficava relacionado ao conteúdo daquele documento específico.

Arquivo também poderia ter seu conteúdo alterado

O problema não estava limitado ao roubo de informações.

Os pesquisadores também demonstraram que o JavaScript poderia modificar o conteúdo apresentado pelo navegador.

Em uma demonstração, o arquivo exportado teve sua interface substituída por uma falsa página de verificação do Telegram. Isso abre espaço para ataques de engenharia social, nos quais o criminoso tenta convencer a vítima a fornecer informações adicionais.

Também seria possível alterar elementos visuais apresentados no documento, como datas, nomes de remetentes ou textos das mensagens.

Isso não significa que o invasor conseguisse alterar a conversa original armazenada nos servidores do Telegram. A manipulação aconteceria na página HTML carregada pelo navegador.

Essa diferença é importante porque um arquivo exportado pode ser utilizado como registro ou evidência de uma conversa. Um documento visualmente alterado poderia apresentar informações diferentes daquelas armazenadas originalmente no Telegram.

Ataque poderia permanecer escondido durante meses

Outro aspecto preocupante é que o bot malicioso não necessariamente precisava estar dentro do grupo que seria posteriormente afetado.

De acordo com os pesquisadores, determinadas mensagens de bots contendo botões com links poderiam ser encaminhadas para outras conversas. Os botões poderiam permanecer associados à mensagem quando ela fosse encaminhada.

Isso cria uma possibilidade interessante para os criminosos: uma mensagem aparentemente inofensiva poderia ser distribuída em grupos e permanecer armazenada no histórico até que alguém exportasse a conversa.

O código permaneceria inativo durante todo esse período.

Somente quando o usuário criasse e abrisse o arquivo HTML em um navegador as condições para execução seriam atendidas.

Na prática, isso transforma uma mensagem aparentemente antiga em uma espécie de “armadilha” que pode permanecer escondida por bastante tempo.

Telegram corrigiu a falha em julho

O problema foi corrigido pelo Telegram antes da divulgação pública dos detalhes.

A correção foi adicionada inicialmente à versão beta 6.9.4, disponibilizada em 3 de julho de 2026. Posteriormente, chegou à versão estável 7.0.1, lançada em 14 de julho.

Segundo os pesquisadores, o código vulnerável estava presente em versões estáveis desde a versão 4.15.1, lançada em março de 2024.

Com a atualização, o Telegram passou a tratar corretamente o conteúdo dos botões para impedir que códigos HTML e JavaScript fossem interpretados como comandos pelo navegador.

As versões indicadas como corrigidas são:

  • Telegram Desktop 7.0.1 ou posterior, no canal estável;
  • Telegram Desktop 6.9.4 ou posterior, para usuários da versão beta.

Atualizar o aplicativo não basta para arquivos antigos

Essa é provavelmente a recomendação mais importante para quem utiliza o recurso de exportação.

Se um arquivo HTML foi criado antes da correção, ele não é automaticamente corrigido quando o Telegram Desktop é atualizado.

O documento já foi salvo no computador e pode continuar contendo o código malicioso.

Por isso, usuários que tenham exportado conversas importantes usando versões antigas devem considerar a possibilidade de gerar uma nova exportação depois de atualizar o aplicativo.

Outra alternativa, caso seja realmente necessário abrir um arquivo antigo, é utilizar um ambiente em que o JavaScript esteja desativado. Essa medida reduz o risco de execução automática do código presente no documento.

Arquivos HTML antigos também devem ser tratados como documentos potencialmente não confiáveis, principalmente quando vierem de grupos grandes nos quais não seja possível verificar facilmente a origem de todas as mensagens.

Falha não recebeu CVE

Apesar da gravidade do problema, os pesquisadores informaram que, até 14 de setembro de 2026, a vulnerabilidade não possuía um identificador CVE atribuído.

Também não havia um comunicado de segurança específico publicado pelo Telegram para o problema. As notas de lançamento das versões corrigidas não destacavam explicitamente a vulnerabilidade, segundo o levantamento divulgado pelos pesquisadores.

Os pesquisadores classificaram a vulnerabilidade com pontuação 8,2 no CVSS 3.1, considerada de alta gravidade.

É importante observar, entretanto, que a existência da vulnerabilidade não significa que usuários do Telegram tenham sido necessariamente vítimas de ataques. Os pesquisadores demonstraram a técnica e explicaram as condições necessárias para exploração, mas isso é diferente de afirmar que houve uma campanha generalizada utilizando o problema contra usuários reais.

O que usuários do Telegram devem fazer?

A recomendação principal é manter o Telegram Desktop atualizado.

Quem utiliza o aplicativo no computador deve verificar se está usando pelo menos a versão 7.0.1 no canal estável ou uma versão posterior.

Também é recomendável revisar arquivos HTML antigos de conversas. Caso tenham sido criados com uma versão vulnerável do aplicativo, o ideal é evitar abri-los diretamente no navegador.

Para arquivos importantes, uma nova exportação deve ser realizada depois da atualização.

Também é importante lembrar que abrir um arquivo HTML local não significa que ele seja automaticamente seguro. Diferentemente de uma imagem ou de um documento puramente estático, uma página HTML pode conter códigos que o navegador interpreta e executa.

A falha encontrada no Telegram Desktop mostra justamente esse risco. Uma mensagem que parece apenas texto dentro de um aplicativo pode acabar se transformando em código executável quando é exportada para outro formato.

O caso também reforça uma recomendação que vale para qualquer aplicativo de mensagens: arquivos exportados devem ser tratados como cópias dos dados, e não necessariamente como documentos confiáveis. Mesmo depois de uma vulnerabilidade ser corrigida, arquivos antigos podem continuar carregando elementos perigosos.

Para quem possui históricos importantes armazenados em HTML, portanto, a combinação de atualização do Telegram, nova exportação dos dados e cautela com arquivos antigos é a maneira mais segura de reduzir o risco associado à vulnerabilidade.