hacktricks/pentesting-web/iframe-traps.md

4.8 KiB

Iframe Traps

{% hint style="success" %} Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

Basic Information

Esta forma de abusar do XSS via iframes para roubar informações do usuário que navega pela página da web foi publicada originalmente nestes 2 posts do trustedsec.com: aqui e aqui.

O ataque começa em uma página vulnerável a um XSS onde é possível fazer com que as vítimas não deixem o XSS fazendo com que elas naveguem dentro de um iframe que ocupa toda a aplicação web.

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

Além disso, para tornar isso mais realista, é possível usar alguns ouvintes para verificar quando um iframe muda a localização da página e atualizar a URL do navegador com essas localizações que o usuário pensa que está mudando de páginas 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 ouvintes para roubar informações sensíveis, não apenas das 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 armazenamento local...

Claro, as principais limitações são que uma vítima fechando a aba ou colocando outra URL no navegador escapará do iframe. Outra maneira de fazer isso seria atualizar a página, no entanto, isso poderia ser parcialmente prevenido desabilitando o menu de contexto do clique direito toda vez que uma nova página é carregada dentro do iframe ou notando quando o mouse do usuário sai do iframe, potencialmente para clicar no botão de recarregar do navegador e, nesse caso, a URL do navegador é atualizada com a URL original vulnerável ao XSS, então se o usuário recarregar, ele será envenenado novamente (note que isso não é muito furtivo).

{% hint style="success" %} Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}