Um grupo de pesquisadores de quatro universidades americanas desenvolveu uma técnica de ataque chamada Pixnapping (CVE-2025-48561), que permite a aplicativos Android não privilegiados, que não solicitam permissões adicionais, determinar o conteúdo exibido na tela por outros aplicativos. Como exemplo de aplicação prática do ataque, foi demonstrada a identificação de códigos de autenticação em duas etapas exibidos pelo aplicativo Google Authenticator. Também foi mostrado como é possível usar o ataque para extrair dados confidenciais exibidos na tela ao trabalhar com Gmail, Signal, Venmo e Google Maps.
Para determinar o conteúdo da tela, foi utilizado um método de análise pixel a pixel, implementado em 2023 pela mesma equipe de pesquisadores no ataque por canais laterais GPU.zip e descrito pela primeira vez em 2013. A essência do método é que, devido às otimizações presentes na GPU, a renderização de um pixel com uma cor que já foi exibida na tela é realizada mais rapidamente do que a de um pixel com uma cor diferente. Avaliando a diferença de tempo na renderização dos pixels, é possível reconstruir o conteúdo já exibido na tela e formar uma espécie de captura de tela.
O ataque Pixnapping consiste em chamar um aplicativo-alvo, sobrepor uma janela sobre ele e fazer uma varredura pixel a pixel do conteúdo, analisando o tempo de execução das operações gráficas em cada pixel. Esse tipo de varredura permite, com alta probabilidade, identificar quais pixels têm a cor de fundo branca e quais participam da exibição de caracteres. Para esconder as manipulações dos pixels do usuário, são sobrepostas camadas com máscaras — durante o ataque, o conteúdo da janela do aplicativo de onde a ataque é feito continua a ser exibido visualmente na tela.
Para ativar o aplicativo atacado e levar os pixels de sua janela para o pipeline de renderização, ocorre a mudança entre atividades do Android por meio de solicitações de intent. Janelas semi-transparentes são exibidas sobre a janela do aplicativo atacado, destacando pixels individuais e iniciando operações gráficas com eles por meio da API Window Blurs. Para medir o tempo exato de renderização de um pixel, são utilizados callbacks vinculados ao VSync.

Uma limitação do método proposto anteriormente GPU.zip foi a baixa performance — ao atacar o navegador, a determinação do nome pelo qual o usuário estava logado em outra aba no Wikipedia levou 30 minutos em um GPU AMD Ryzen 7 4800U e 215 minutos em um GPU Intel i7-8700 com precisão de 97-98%. Para se adequar ao intervalo de atualização de 30 segundos do Google Authenticator, o método foi aprimorado e otimizado. O número de verificações de cada pixel foi reduzido de 64 para 16, e o atraso entre o processamento dos pixels foi diminuído de 1,5 segundos para 70 milissegundos. A varredura foi realizada não em toda a tela, mas apenas na área onde o Google Authenticator exibe o código.
O método foi testado em smartphones Pixel 6, 7, 8 e 9 com versões do Android 13-16 para determinar os 106 códigos de seis dígitos de autenticação de dois fatores gerados no Google Authenticator. A precisão na determinação dos códigos nos smartphones testados foi de 73%, 53%, 29% e 53%, e o tempo de determinação foi de 14,3, 25,8, 24,9 e 25,3 segundos, respectivamente. No smartphone Samsung Galaxy S25, os pesquisadores não conseguiram se adequar ao intervalo de 30 segundos devido ao ruído gerado pela execução de outros aplicativos, mas no dispositivo foram apresentadas opções de ataque para outros aplicativos, para os quais não havia limitações de tempo. Os mecanismos utilizados nos ataques não são específicos para modelos de smartphones individuais e o ataque pode potencialmente afetar quaisquer dispositivos Android.
A empresa Google adicionou em seus patches de setembro uma proteção inicial contra ataques no Android baseada na proibição da aplicação da operação de desfoque em um grande número de camadas. Em resposta, os pesquisadores descobriram uma maneira de contornar essa limitação, portanto, o Google planeja implementar uma proteção mais abrangente na atualização de dezembro do Android. Os fabricantes de GPU ainda não anunciaram a intenção de corrigir o canal de vazamento, apesar de o método de ataque ser conhecido há mais de 12 anos.Um grupo de pesquisadores de quatro universidades americanas desenvolveu uma técnica de ataque chamada Pixnapping (CVE-2025-48561), que permite a partir de aplicativos Android não privilegiados, que não solicitam permissões adicionais.
Fonte: opennet.ru
