Talvez isso tenha chamado sua atenção após um teste de penetração de segurança ou talvez porque você esteja tentando impedir que alguém sequestre seu site ou o cubra com anúncios. De qualquer forma, é recomendável que você sempre inclua o cabeçalho X-Frame-Options nas respostas do site para aumentar a segurança do site e oferecer alguma segurança aos visitantes.
Esse cabeçalho especifica para o navegador como o seu site pode ser exibido em um quadro (ou iFrame). Um quadro permite que uma página da Web exiba conteúdo de outro site dentro dela (geralmente de uma forma que não é óbvia para o visualizador). Você pode achar que isso não é um problema, afinal, trata-se de uma página da Web pública, mas nunca é tão simples assim. E se alguém tiver registrado um erro ortográfico comum do seu nome de domínio e estiver exibindo seu site nele, usando um iFrame? Eles poderiam estar sobrepondo anúncios ou apresentando uma página de login falsa e tudo pareceria totalmente autêntico, porque, bem, seria o conteúdo do seu site – apenas servido de outro lugar. Não há maneira mais rápida de perder a confiança do cliente do que quando um agente mal-intencionado abusa desse recurso em benefício próprio. Há usos genuínos para os Frames, mas é muito provável que você não confie em nenhum deles.
Definir o cabeçalho X-Frame-Options em todas as suas respostas é uma maneira simples de evitar problemas desse tipo. Há três valores possíveis: DENY, SAMEORIGIN e ALLOWFROM;
-DENY impedirá a exibição do conteúdo do seu site em um quadro, mesmo que seja por outra página do seu site. Isso geralmente é aceitável, mas tem o hábito de quebrar aplicativos baseados em Java.
-SAMEORIGIN é a configuração mais comumente usada e significa que as páginas do seu site podem ser incluídas em Frames, mas somente em outras páginas do mesmo site.
-ALLOWFROM é bastante refinado e raramente usado – se for algo de que você precisa, provavelmente já sabe o que precisa fazer – caso contrário, entre em contato conosco.
Como sempre dizemos, uma grande vantagem de usar um balanceador de carga é que só precisamos fazer alterações em um único local para implantar esse cabeçalho em todos os nossos servidores. Não precisamos depender de desenvolvedores ou de reconfigurações do Apache. Basta importar um modelo de configuração do jetPACK e atribuir uma regra de tráfego flightPATH ao(s) serviço(s) virtual(is) que você deseja proteger.
O flightPATH é um mecanismo de regras dinâmico e baseado em eventos desenvolvido pela edgeNEXUS para manipular e rotear de forma inteligente o tráfego IP, HTTP e HTTPS com balanceamento de carga. Ele é altamente configurável e poderoso, mas muito fácil de usar.
A regra só adiciona o cabeçalho se ele não existir, portanto, funcionará mesmo quando nossos servidores da Web já o inserirem ou o inserirem somente em páginas específicas. Essa regra deve fazer parte da configuração padrão do Virtual Service – você não tem nada a perder, seja qual for o site, embora, é claro, seja sempre recomendável fazer testes. Você pode fazer o download do jetPACK no site do Github da edgeNEXUS aqui.
Essa é uma das muitas regras do flightPATH que desenvolvemos e que você pode implantar para aumentar a segurança do seu site e de seus usuários. Para saber mais sobre cabeçalhos HTTP relacionados à segurança, confira estes artigos:
- Simplificando os cabeçalhos HTTP de segurança com o gerenciamento de tráfego da edgeNEXUS: X-Content-Type-Options
- Como proteger o tráfego HTTP e proteger os usuários com o cabeçalho HTTP Strict Transport Security