# Phishing por "Instalar como Aplicação": Quando um Sítio Web Finge Ser Software

> O Chrome deixa qualquer sítio instalar-se como uma aplicação autónoma. Uma técnica documentada usa isso para falsificar uma janela de início de sessão inteira, barra de endereço incluída. O que consegue e não consegue esconder, e como verificar o que está de facto instalado.

HisnLabs Security & Research Team · Published 2026-09-25
Canonical: https://hisnlabs.com/pt/blog/pwa-phishing-install-as-app-security-nightmare

Os navegadores baseados em Chromium deixam um utilizador transformar quase qualquer página web naquilo que parece uma aplicação nativa: a sua própria janela, o seu próprio ícone no Dock, sem elementos visíveis do navegador. Essa funcionalidade destina-se a sítios legítimos que usa com frequência. O investigador de segurança [mr.d0x documentou](https://mrd0x.com/progressive-web-apps-pwa-phishing/), a 11 de junho de 2024, como o mesmo mecanismo pode ser transformado num kit de phishing: instalar uma página como aplicação, e depois desenhar uma janela de navegador falsa, barra de endereço incluída, dentro do próprio HTML da aplicação.

## Como se constrói a ilusão de aplicação instalada

Na técnica documentada, uma vítima é levada a uma página que a convida a instalá-la como aplicação, com o próprio pedido de instalação a mostrar um nome falsificado como "Microsoft Login." Uma vez instalada, a aplicação abre na sua própria janela, sem elementos de navegador. Como não há nenhuma barra de endereço real para falsificar, a página desenha a sua própria com CSS: uma imitação convincente, posicionada exatamente onde estaria a barra de endereço de um navegador, a mostrar o URL que o atacante quiser exibir. Para alguém treinado a "verificar a barra de endereço," a aplicação parece passar nessa verificação, porque aquilo que está a ver não é de todo a barra de endereço do navegador.

> **Note:** Isto tem um limite real, indicado pelo próprio investigador: "a janela da PWA mostra brevemente o nome de domínio real no canto superior direito" quando se abre pela primeira vez. Esse relance da origem verdadeira é o único sinal honesto que a técnica não consegue suprimir por completo. É fácil de perder, mas está lá.

## O que realmente torna isto convincente

- Instala-se como software normal: um ícone no Dock ou na pasta Aplicações, a sua própria janela, por vezes notificações push, nada disto exigindo sair do próprio fluxo de instalação do navegador.
- O nome e o ícone do pedido de instalação são o que o manifesto do atacante declarar que são. Nada no passo de instalação verifica se o nome corresponde ao sítio.
- Uma vez a correr, a interface falsa persiste durante toda a vida da sessão: sem separadores de navegador, sem barra de marcadores nem ícones de extensões para quebrar a ilusão.

## Auditar o que está de facto instalado, a partir do terminal

No macOS, o Chrome e os navegadores baseados em Chromium instalam estas "aplicações" como pacotes de aplicação normais, e cada uma regista o URL real a partir do qual foi instalada dentro do seu próprio `Info.plist`, seja qual for o nome mostrado no Finder. Confirmámos isto contra uma aplicação real, atualmente instalada, nesta máquina (um atalho instalado pelo navegador para um painel da Cloudflare):

*Terminal*

```console
$ 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 facto que uma barra de endereço falsa não consegue alterar: é definido uma vez, no momento da instalação, a partir do próprio manifesto da página, e é o que a aplicação de facto abre sempre que arranca. Uma aplicação chamada "Início de Sessão do Banco" cujo `CrAppModeShortcutURL` aponta para outro sítio que não o domínio real do seu banco denunciou-se a si própria.

1. Liste todas as aplicações web instaladas: `ls ~/Applications/*.localized/*/`, uma vez por cada navegador baseado em Chromium que usa (`Chrome Apps.localized`, `Brave Browser Apps.localized`, `Edge Apps.localized`, e semelhantes).
2. Para tudo o que não se lembre claramente de ter instalado, ou que trate de um início de sessão, verifique o seu URL real: `plutil -p "<caminho>/Contents/Info.plist" | grep -i CrAppMode`.
3. Fique atento à origem verdadeira que o Chromium mostra brevemente quando a aplicação abre, e leia-a, em vez de ler a interface desenhada pela própria aplicação.

## Por que isto é um problema de rede, e não só de interface

Seja qual for o aspeto da janela, uma página de recolha de credenciais continua a ter de enviar o que recolheu para algum lado, através da rede, a partir de um processo a correr no seu Mac. Uma firewall que só pergunta "o binário desta aplicação está assinado e é de confiança" não pode ajudar aqui: uma PWA instalada corre dentro do próprio executável assinado e de confiança do navegador. O que pode ajudar é vigiar a própria ligação: qual o processo que a está a fazer, e para onde está de facto a ir, independentemente do que a janela no ecrã alega ser.

## O papel do FireAI e da HisnLabs

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: uma firewall com IA que corre diretamente no seu Mac. Mostra, em linguagem clara, cada ligação que as suas aplicações fazem e deixa-o decidir o que sai do seu Mac — a IA funciona localmente, pelo que o seu tráfego nunca é enviado para nós nem para mais ninguém. A equipa de investigação em segurança da HisnLabs é quem mantém essas decisões fiáveis: cataloga que domínios são simples telemetria e quais são um serviço real, acompanha o país e a rede por detrás de uma ligação e treina o modelo local (a funcionalidade FireAI Pilot) com padrões de tráfego reais, sem que nada disso saia do seu Mac.

Pode ler as decisões técnicas por detrás dele, ou experimentar o FireAI durante 17 dias, em [FireAI, da HisnLabs](https://hisnlabs.com/fireai/pt/download).

## Sources

- [mr.d0x: Progressive Web Apps (PWAs) Phishing](https://mrd0x.com/progressive-web-apps-pwa-phishing/)
- [MDN: Progressive web apps](https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps)
- [web.dev: What makes a good PWA](https://web.dev/explore/progressive-web-apps)
