.

Em 2018, os telefones Pixel ganharam um editor de captura de tela integrado chamado “Markup” com o lançamento do Android 9.0 Pie. A ferramenta aparece sempre que você tira uma captura de tela e tocar no ícone da caneta do aplicativo dá acesso a ferramentas como cortar e algumas canetas de desenho coloridas. Isso é muito útil, assumindo que a ferramenta de marcação do Google realmente faz o que diz, mas uma nova vulnerabilidade indica que as edições feitas por essa ferramenta não foram realmente destrutivas! É possível cortar ou não editar capturas de tela do Pixel tiradas nos últimos quatro anos.
O bug foi descoberto por Simon Aarons e é apelidado de “Acropalypse”, ou mais formalmente CVE-2023-21036. Há um aplicativo de prova de conceito que pode não editar capturas de tela do Pixel em acropalypse.app e funciona! Há também um bom artigo técnico aqui do colaborador de Aarons, David Buchanan. A essência básica do problema é que o editor de captura de tela do Google substitui o arquivo de captura de tela original com sua nova captura de tela editada, mas não trunca ou recomprime esse arquivo de forma alguma. Se a captura de tela editada tiver um tamanho de arquivo menor do que o original – isso é muito fácil de fazer com a ferramenta de corte – você terá um PNG com vários dados indesejados ocultos no final. Esses dados inúteis são compostos dos bits finais da captura de tela original e é realmente possível recuperar esses dados.
Isso soa como uma maneira ruim de escrever uma ferramenta de recorte de captura de tela, mas em defesa do Google, o lançamento do Android 9 da ferramenta Markup funcionou corretamente e truncou o arquivo sobrescrito. O Android 10 trouxe muitas mudanças dramáticas de “armazenamento com escopo” em como o armazenamento de arquivos funcionava no Android. Não está claro como ou por que isso aconteceu, mas talvez como parte dessa enorme onda de commits de manipulação de arquivos, uma alteração não documentada chegou ao analisador de arquivos do Android Framework: o modo de “gravação” do Framework parou de truncar os arquivos sobrescritos e o bug na marcação foi criado. A ferramenta de marcação dependia do manuseio de arquivos do sistema operacional e a maneira como funcionava mudou em uma versão posterior, que parece que ninguém percebeu.

Ron Amadeo
A ferramenta de prova de conceito em acropalypse.app funciona muito bem. Se você tiver um dispositivo Pixel sem patch por aí, pode recortar uma captura de tela, alimentá-la na ferramenta e obterá os dados não recortados de volta. Não é perfeito – você geralmente obtém um PNG fortemente corrompido com uma grande seção em branco e, em seguida, uma faixa de cores estranhas, mas pode recuperar com bastante segurança a parte inferior de uma imagem cortada. O bug foi corrigido na atualização de segurança de março de 2023 para dispositivos Pixel, onde foi marcado como uma vulnerabilidade de segurança “Alta”. Isso afetou apenas o editor de captura de tela do Pixel, que salva os PNGs sobrescrevendo-os, não o editor do Google Fotos, que salva os JPGs fazendo uma nova cópia. Normalmente, as capturas de tela cortadas são vulneráveis, não as fotos cortadas da câmera – a menos que você esteja fazendo algo estranho, como tirar uma captura de tela da saída da câmera.
Apenas corrigir o bug para usuários futuros não resolve o problema. Ainda há a questão dos últimos quatro anos de capturas de tela do Pixel que estão por aí e possivelmente cheias de dados ocultos que as pessoas não perceberam que estavam compartilhando. Se você compartilhou essa captura de tela publicamente, se essa captura de tela está ou não vazando dados depende de quem a está hospedando. Alguns aplicativos, como o Twitter, recompactarão todos os arquivos carregados e excluirão os dados ocultos em sua captura de tela. Se, em vez disso, um aplicativo compartilhar o arquivo original, terceiros poderão cortar sua captura de tela. Notavelmente, o Discord está confirmado para fazer isso, e muitos outros aplicativos de mensagens provavelmente também compartilham o arquivo original.
.







