Iframe Traps

Reading time: 3 minutes

tip

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

Informações Básicas

Esta forma de abusar do XSS via iframes para roubar informações do usuário enquanto navega pela página da web foi originalmente publicada 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 que ocupa 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 dos 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).

tip

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