Navegadores baseados em Chromium permitem que um usuário transforme quase qualquer página web em algo que parece um aplicativo nativo: sua própria janela, seu próprio ícone no Dock, nenhum elemento visível de navegador. Esse recurso é pensado para sites legítimos que você usa com frequência. O pesquisador de segurança mr.d0x documentou, em 11 de junho de 2024, como o mesmo mecanismo pode ser transformado em um kit de phishing: instalar uma página como aplicativo, e depois desenhar uma janela de navegador falsa, barra de endereço e tudo, dentro do próprio HTML do aplicativo.
Como a ilusão de aplicativo instalado é construída
Na técnica documentada, uma vítima é levada a uma página que a convida a instalá-la como aplicativo, com o próprio aviso de instalação mostrando um nome falsificado como "Microsoft Login." Uma vez instalado, o aplicativo abre em sua própria janela sem elementos de navegador. Como não existe uma barra de endereço real para falsificar, a página desenha a sua própria com CSS: uma falsificação convincente, posicionada exatamente onde a barra de endereço de um navegador estaria, mostrando qualquer URL que o atacante queira exibir. Para alguém treinado a "verificar a barra de endereço," o aplicativo parece passar nesse teste, porque o que essa pessoa está olhando não é, de forma alguma, a barra de endereço do navegador.
O que de fato torna isso convincente
- Instala-se como um software normal: um ícone no Dock ou na pasta Aplicativos, sua própria janela, às vezes notificações push, nada disso exigindo sair do próprio fluxo de instalação do navegador.
- O nome e o ícone do aviso de instalação são o que quer que o manifesto do atacante declare que sejam. Nada na etapa de instalação verifica se o nome corresponde ao site.
- Uma vez rodando, os elementos falsos de navegador persistem por toda a sessão: sem abas de navegador, sem barra de favoritos, sem ícones de extensão para quebrar a ilusão.
Auditando o que está realmente instalado, pelo terminal
No macOS, o Chrome e navegadores baseados em Chromium instalam esses "aplicativos" como bundles de aplicativo comuns, e cada um registra a URL real de onde foi instalado dentro do seu próprio Info.plist, seja qual for o nome exibido no Finder. Confirmamos isso contra um aplicativo real, atualmente instalado neste Mac (um atalho instalado pelo navegador para um painel da Cloudflare):
ls ~/Applications/*.localized/
Cloudflare.app
plutil -p ~/Applications/"Brave Browser Apps.localized"/Cloudflare.app/Contents/Info.plist | grep -i CrAppMode
"CrAppModeShortcutName" => "Cloudflare"
"CrAppModeShortcutURL" => "https://dash.cloudflare.com/"Esse campo CrAppModeShortcutURL é o fato que uma barra de endereço falsa não consegue alterar: ele é definido uma única vez, no momento da instalação, a partir do próprio manifesto da página, e é o que o aplicativo de fato abre toda vez que é iniciado. Um aplicativo chamado "Login do Banco" cujo CrAppModeShortcutURL aponta para outro lugar que não o domínio real do seu banco se entregou.
- Liste todo aplicativo web instalado:
ls ~/Applications/*.localized/*/, uma vez para cada navegador baseado em Chromium que você usa (Chrome Apps.localized,Brave Browser Apps.localized,Edge Apps.localized, e similares). - Para qualquer coisa da qual você não se lembre claramente de ter instalado, ou que lide com login, verifique sua URL real:
plutil -p "<path>/Contents/Info.plist" | grep -i CrAppMode. - Fique atento à origem verdadeira que o Chromium mostra brevemente quando o aplicativo abre, e leia isso, em vez da própria interface desenhada pelo aplicativo.
Por que isso é um problema de rede, não apenas de interface
Seja qual for a aparência da janela, uma página que coleta credenciais ainda precisa enviar o que coletou para algum lugar, pela rede, a partir de um processo rodando no seu Mac. Um firewall que só pergunta "o binário deste aplicativo está assinado e é confiável" não ajuda aqui: uma PWA instalada roda dentro do próprio executável assinado e confiável do navegador. O que pode ajudar é observar a própria conexão: qual processo está fazendo-a, e para onde ela de fato vai, independentemente do que a janela na tela alega ser.
Onde FireAI e HisnLabs entram nessa história
Whatever a fake login screen looks like, it still has to send the password it captured somewhere; FireAI shows you exactly which process is trying to phone home and to what destination, installed web app or not, and lets you say no before anything leaves your Mac.
O FireAI é o produto da HisnLabs: um firewall com IA que roda direto no seu Mac. Ele mostra, em linguagem simples, cada conexão que seus aplicativos fazem e deixa você decidir o que sai do seu Mac — a IA roda localmente, então seu tráfego nunca é enviado para nós nem para ninguém. A equipe de pesquisa em segurança da HisnLabs é quem mantém essas decisões confiáveis: cataloga quais domínios são telemetria comum e quais são um serviço de verdade, rastreia o país e a rede por trás de uma conexão e treina o modelo local (o recurso Autopilot) com padrões reais de tráfego, sem que nada disso saia do seu Mac.
Você pode ler as decisões técnicas por trás dele, ou testar o FireAI por 17 dias, em FireAI, da HisnLabs.
