.
Se você possui um smartphone Google Pixel desde que a série 3 foi lançada em 2018, más notícias: qualquer captura de tela que você recortou ou redigiu em seu Pixel pode ser potencialmente restaurada sem muito barulho.
Os engenheiros reversos Simon Aarons e David Buchanan, que encontraram o bug e produziram uma ferramenta de recuperação de prova de conceito, respectivamente, o apelidaram de aCropalypsee observado “este bug é ruim” para pessoas preocupadas com sua privacidade.
A falha está em como o aplicativo de edição de imagem do Google Markup, disponível para a linha Pixel, trunca arquivos PNG depois que eles são editados – ou seja, isso não acontece, Buchanan detalhou em um escrever no final de semana.
Essencialmente, se você usar o aplicativo para cortar coisas sensíveis de uma captura de tela, o código do Google não reduz o arquivo real corretamente, deixando a parte recortada à espreita no final da string de dados, que pode ser potencialmente reconstruída. Mesmo que você não consiga ver a área recortada em um visualizador de imagens, os dados ainda estão no arquivo e possivelmente podem ser recuperados.
Isso significa que, se alguém se apossar de sua imagem recortada, poderá tentar recuperar a parte aparentemente ausente. Se a imagem foi editada rabiscando certas áreas, essas áreas podem ser visíveis na imagem restaurada. Isso não é bom para privacidade.
O Google corrigiu o aCropalypse, que Buchanan disse que será rastreado como CVE-2023-21036em sua Atualizações de segurança do pixel de março. Está tudo bem daqui para frente – agora você pode recortar, redigir e compartilhar sem medo de que suas imagens futuras possam ser recuperadas – mas não há descompartilhando capturas de tela que são vulneráveis ao exploit que você já passou, carregou no Discord, etc.
Buchanan disse que o Google ainda não emitiu um alerta de segurança sobre o bug. Perguntamos à gigante dos anúncios como ela planeja lidar com a notificação dos proprietários de pixels afetados de que eles podem ter dados confidenciais circulando on-line e não recebemos resposta até o momento desta publicação.
T é para truncar e não está implícito (no Android 10+)
A descrição de Buchanan detalha consideravelmente como ele descobriu o que acredita ser a causa raiz de um Cropalypse: um mudança silenciosa do Android 9 ao Android 10, no qual a função Java fornecida pelo sistema operacional parseMode()
agora requer o argumento “wt” quando um aplicativo deseja substituir e truncar um arquivo para um tamanho menor, não apenas “w”.
No passado, “w” truncava um arquivo de qualquer maneira; do Android 10, a função precisa de um “wt” explícito. A marcação do Google ainda estava usando “w” quando deveria ter usado “wt”, então o truncamento nunca aconteceu no Android 10+, deixando os dados da imagem anterior no final do arquivo PNG.
De acordo com Aarons, “quando você recorta e salva uma captura de tela, [Markup] substitui a imagem com a nova versão, mas deixa o restante do arquivo original em seu lugar” porque a marcação não está dizendo ao Android para truncar o arquivo ao gravar alterações nele.
(Tecnicamente falando, parseMode()
apenas converte uma string descrevendo o tipo de acesso que um aplicativo deseja, por exemplo, “wt”, em uma máscara de bits para usar com open()
. parseMode()
não executa o acesso real ao arquivo, ele ajuda o aplicativo a se preparar para isso.)
“O resultado final é que o arquivo de imagem é aberto sem o [truncate] sinalizador, de modo que, quando a imagem cortada for gravada, a imagem original não seja truncada”, disse Buchanan. “Se o novo arquivo de imagem for menor, o final do original será deixado para trás.”
Os bits do arquivo que deveriam estar truncados foram considerados recuperáveis como imagens depois de fazer alguma engenharia reversa da metodologia da biblioteca de compactação zlib, que Buchahan diz ter conseguido “depois de algumas horas mexendo”. O resultado final é uma prova de conceito de que qualquer pessoa com um dispositivo Pixel afetado pode experimentar para eles mesmos.
Enquanto você está nisso, certifique-se de instalar a última rodada de atualizações de segurança do Android, dispositivo Pixel ou não.
o que fazer com ele? Se você tiver um dispositivo Pixel afetado e tiver recortado ou editado capturas de tela e as compartilhado, quem as tiver poderá recuperar esses dados. Depois de instalar a atualização, as capturas de tela futuras devem estar OK. ®
.