Iframe Traps

Tip

Aprenda e pratique AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE) Navegue pelo catálogo completo do HackTricks Training para as trilhas de assessment (ARTA/GRTA/AzRTA) e Linux Hacking Expert (LHE).

Support HackTricks

Informações Básicas

Esta forma de abusar de XSS via iframes para roubar informações do usuário enquanto ele navega pela página web foi originalmente publicada nesses 2 posts do trustedsec.com: here and here.

O ataque começa em uma página vulnerável a XSS onde é possível fazer as vítimas não saírem do XSS tornando-as navegar dentro de um iframe que ocupa toda a aplicação web.

O ataque XSS basicamente carregará a página web dentro de um iframe ocupando 100% da tela. Portanto, a vítima não perceberá que está dentro de um iframe. Então, se a vítima navegar na página clicando em links dentro do iframe (dentro do site), ela estará navegando dentro do iframe com o JS arbitrário carregado, roubando informações dessa navegação.

Além disso, para tornar mais realista, é possível usar alguns listeners para verificar quando um iframe muda a localização da página, e atualizar a URL do navegador com essas localizações — fazendo o usuário pensar que está mudando de página usando o navegador.

https://www.trustedsec.com/wp-content/uploads/2022/04/regEvents.png

https://www.trustedsec.com/wp-content/uploads/2022/04/fakeAddress-1.png

Além disso, é possível usar listeners para roubar informações sensíveis, não apenas as outras páginas que a vítima está visitando, mas também os dados usados para preencher formulários e enviá-los (credenciais?) ou para roubar o local storage

Obviamente, as principais limitações são que uma vítima fechando a aba ou colocando outra URL no navegador escapará do iframe. Outra forma de escapar seria atualizar a página, contudo, isso pode ser parcialmente prevenido desabilitando o menu de contexto do clique direito toda vez que uma nova página é carregada dentro do iframe ou detectando quando o mouse do usuário sai do iframe, possivelmente para clicar no botão de recarregar do navegador — nesse caso a URL do navegador é atualizada com a URL original vulnerável a XSS, então se o usuário recarregá-la, ela será contaminada novamente (observe que isso não é muito furtivo).

Armadilha modernizada (2024+)

  • Use um full‑viewport iframe mais History/Navigation API para imitar navegação real.
Armadilha de full-viewport iframe ```html ```
  • Navigation API (navigation.navigate, currententrychange) mantém a barra de URL externa sincronizada sem leaking da URL real.
  • fullscreen para ocultar a UI do navegador e desenhar sua própria barra de endereço/cadeado falsa.

Uso de overlay & skimmer

  • Comerciantes comprometidos substituem hosted payment iframes (Stripe, Adyen, etc.) por um pixel‑perfect overlay que encaminha as teclas enquanto o frame real fica por baixo, às vezes usando legacy validation APIs para que o fluxo nunca quebre.
  • Aprisionar usuários no top frame captura dados de autofill/password‑manager antes que notem que a barra de URL nunca mudou.

Truques de evasão observados em pesquisas de 2025

  • about:blank/data: local frames herdam a origem do pai e contornam algumas heurísticas de bloqueadores de conteúdo; iframes aninhados podem ressurgir mesmo quando extensões desmontam frames de terceiros.
  • Permission propagation: reescrever o atributo pai allow concede a frames aninhados do atacante fullscreen/camera/microphone sem mudanças óbvias no DOM.

Dicas rápidas de OPSEC

  • Restabeleça o foco no iframe quando o mouse sair (mouseleave no body) para impedir que os usuários alcancem a UI do navegador.
  • Desative o menu de contexto e atalhos comuns (keydown para F11, Ctrl+L, Ctrl+T) dentro do frame para retardar tentativas de escape.
  • Se CSP bloquear scripts inline, injete um bootstrapper remoto e habilite srcdoc no iframe para que seu payload viva fora do CSP aplicado da página principal.

Clickjacking

Referências

Tip

Aprenda e pratique AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE) Navegue pelo catálogo completo do HackTricks Training para as trilhas de assessment (ARTA/GRTA/AzRTA) e Linux Hacking Expert (LHE).

Support HackTricks