SwiftHTML & CSSSolidityDesenvolvimento de JogosSolana/Rust
03.01.2025

Como Bypassar Código de Frame Buster em JavaScript

Resposta Rápida

Para impedir que seu site seja incorporado em frames em outros sites, utilize este código JavaScript simples e eficaz:

if (window.top !== window.self) {
  window.top.location.replace(window.location.href);
}

Este código verifica se a página está sendo aberta em uma janela pai. Se não estiver, toda a janela do navegador é redirecionada para o endereço do seu site, eliminando a possibilidade de ser embutida em um frame.

Ferramentas Anti-Incorporação

Para evitar que sua página web seja incorporada em frames de sites de terceiros, você deve implementar medidas de proteção:

Cabeçalhos HTTP de Segurança: Os Guardiões Silenciosos

Utilize cabeçalhos HTTP de segurança confiáveis que atuam como os guardiões silenciosos dos seus interesses:

Proteção contra incorporação em frames:
- Use X-Frame-Options: DENY
- Configure Content-Security-Policy: frame-ancestors 'none'

Esses diretórios de cabeçalho protegerão seu conteúdo contra a incorporação em sites externos e ajudarão a manter a integridade da sua página web nas versões modernas de navegadores. Note que X-Frame-Options oferece uma proteção robusta mesmo nas versões mais antigas dos navegadores.

JavaScript: Seu Defensor Pessoal

JavaScript serve como outra barreira contra tentativas de incorporar sua página em frames:

setInterval(() => {
  if (window.top !== window.self) {
    document.body.style.display = "none";
    alert("Incorporar esta página em frames é proibido!");
  } 
}, 100);

Esse script verifica periodicamente se sua página foi incorporada em um frame. Se a incorporação for detectada, o conteúdo é ocultado e um aviso correspondente é apresentado ao usuário.

Atributo Sandbox do HTML5: Território Seguro

Para controlar o comportamento dos frames em seu site, utilize o atributo sandbox do HTML5:

<iframe src="exemplo.html" sandbox></iframe>

Ao usar o atributo sandbox, você pode impor restrições sobre as ações permitidas dentro do iframe, aumentando a segurança e dificultando que intrusos sequestren o frame.

Recursos Específicos do Navegador: Proteção Personalizada

Ao implementar medidas anti-incorporação, tenha em mente que diferentes navegadores se comportam de maneiras diferentes, afetando a eficácia desejada dessas medidas. Mantenha-se atualizado e adapte seus métodos de proteção de acordo com as especificidades de cada navegador.

Visualização

Pense na interação entre uma página web e um frame como um jogo de gato e rato, onde os frames representam obstáculos:

O site (🐭), lutando para permanecer independente, e o frame (📦), criado por um site persistente (🐱).

O defensor de embutimento (🚀) vem ao resgate para libertar o 🐭 do 📦. 

O intruso (🐱💣) tenta atrair 🐭 para uma armadilha, limitando suas opções de escape (🚀).

🔨 contesta as ações do intruso 🐱💣, proporcionando uma rota de escape segura para 🐭.

Esta é uma corrida técnica sem fim, onde novos métodos de defesa são substituídos por novas técnicas de ataque.

Recomendações e Melhores Práticas

Para garantir a eficácia do seu código anti-incorporação, siga estas recomendações:

  • Resolução oportuna de problemas: Se você encontrar problemas com o JavaScript, pode sempre confiar nos cabeçalhos HTTP.
  • Educação do usuário: Além da proteção, eduque os usuários sobre os métodos anti-incorporação e esteja pronto para alertá-los sobre possíveis ameaças.
  • Mantenha-se atualizado: Verifique e teste seu código regularmente em diferentes navegadores para garantir sua confiabilidade.
  • Uso ético da tecnologia: Explique aos usuários as razões para qualquer alteração ou redirecionamento.

Esteja Pronto para Proteger Seu Site

Não dê chance aos adversários ao empregar as seguintes medidas anti-incorporação adicionais:

Técnicas Sofisticadas de JavaScript

Tenha cuidado: hackers podem tentar contornar seus mecanismos de proteção. Atualize seu código regularmente e busque soluções pouco convencionais para se manter um passo à frente.

Comunicação Adequada com o Usuário

Utilize modais ou pop-ups para informar os usuários. Se necessário, forneça aos usuários uma opção para retornar à página anterior.

Mantenha-se Informado sobre Tendências de Segurança

Fique por dentro das últimas notícias em segurança web. Por exemplo, recursos da Universidade de Stanford podem fornecer insights valiosos sobre como combater técnicas de incorporação de frames e as medidas de proteção apropriadas.

Recursos Úteis

  1. CSP: frame-ancestors - HTTP | MDN – documentação detalhada do MDN sobre frame-ancestors.
  2. Content Security Policy Level 3 – o projeto W3C sobre CSP, onde as atualizações mais recentes podem ser encontradas.
  3. Padrão HTML – regras para uso de elementos iframe de acordo com os padrões HTML5.
  4. Universidade Carnegie Mellon, Instituto de Engenharia de Software – artigos analíticos sobre métodos de proteção contra frames de pesquisadores renomados.
  5. javascript - Código para evitar incorporação em frames… e código para remover frames - Stack Overflow – discussões e soluções sobre como contornar defesas de frames no Stack Overflow.
  6. web.dev – conhecimento atualizado sobre desenvolvimento web moderno e segurança em frames.

Video

Did you like this article? Rate it from 1 to 5:

Thank you for voting!