Antes de entrarmos em detalhes, o melhor lugar para melhorar a segurança do seu site é adicionar cabeçalhos de segurança HTTP. Isso deve garantir que você esteja atualizado com as melhores práticas de segurança.
Os clientes visitam seu website, compram produtos e transmitem informações confidenciais, como senhas, detalhes de cartão de crédito, etc. Se houver um local para se infiltrar em seu website, os hackers poderão roubar os dados de seus clientes.
Quando se trata de segurança de sites, há muitas coisas que você pode fazer para proteger sua segurança do WordPress.
Os cabeçalhos de segurança HTTP adicionam outra camada de segurança, ajudando a aliviar ataques e vulnerabilidades de segurança.
Neste artigo, discutiremos quais são os cabeçalhos de resposta HTTP e como adicionar cabeçalhos de segurança HTTP no WordPress.
O que são cabeçalhos de segurança HTTP?
Quando um usuário visita um site por meio de um navegador da Web, o servidor reage com cabeçalhos de resposta HTTP. Esses cabeçalhos informam ao navegador da web como agir durante toda a interação com o site. Esses cabeçalhos geralmente consistem em metadados, como controle de cache, códigos de erro de status, codificação de conteúdo, etc.
Ao utilizar cabeçalhos de resposta HTTP, você pode proteger a segurança do seu site e também prevenir/atenuar ataques.
Por exemplo, ao adicionar o strict-transport-security, você pode forçar todos os navegadores da web mais recentes, como o Google Chrome, o Firefox e o Safari, a se comunicarem com seu site somente por HTTPS.
Vamos dar uma olhada em 6 cabeçalhos de segurança HTTP,
- HTTP Strict Transport Security (HSTS)
- X-Frame-Options
- X-XSS-Protection
- X-Content-Type-Options
- Referrer-Policy
- Feature-Policy
HTTP Strict Transport Security (HSTS) – (Segurança de transporte estrito de HTTP [HSTS])
Digamos que você tenha um site example.com e configure um certificado SSL/TLS para passar de HTTP para HTTPS.
Agora você sabe que seu website está acessível apenas com HTTPS.
E se eu disser que seu site ainda está acessível por HTTP? Sim, você ouviu direito. Existem vários scripts disponíveis que os hackers usam para abrir um site via HTTP.
Ao utilizar a segurança de transporte estrito, você pode forçar todos os navegadores da Web mais recentes, como o Google Chrome, o Firefox e o Safari, a se comunicarem com seu site somente por HTTPS. Portanto, se um invasor tentar abrir seu site do WordPress por HTTP, o navegador da Web não carregará a página.
Proteção X-XSS
O X-XSS, também conhecido como cross-site scripting, é um cabeçalho de segurança que protege sites contra scripts entre sites.
Por padrão, esse cabeçalho de segurança é integrado e ativado em navegadores da web modernos. A implementação irá forçar o seu navegador carregá-lo. Esse cabeçalho de segurança não deixaria uma página ser carregada se detectasse um ataque de script entre sites.
X-Content-Type-Options (Opções de tipo de conteúdo)
O X-Content-Type-Options é um tipo de cabeçalho de segurança com o valor de nosniff que impede que o Google Chrome, o Internet Explorer e o Firefox a partir de MIME-Sniffing uma resposta longe do tipo de conteúdo declarado.
Esse cabeçalho de segurança protege o conteúdo e reduz o risco de downloads drive-by.
x-frame-options
O cabeçalho x-frame-options protege sites contra clickjacking, não permitindo que iframes sejam preenchidos em seu site. É suportado pelo IE 8+, pelo Chrome 4.1+, pelo Firefox 3.6.9+, pelo Opera 10.5+ e pelo Safari 4+.
Nesse método, um invasor engana o usuário para clicar em algo que não está lá. Um usuário pode acreditar que ele está no site principal; no entanto, algo mais está sendo executado em segundo plano. Desta forma, os hackers podem roubar informações do seu navegador.
Referrer-Policy (Política de Referência)
Quando um usuário visita um site, imediatamente é incluído um cabeçalho “Referente” que informa o servidor de onde o visitante está originando. Este cabeçalho é utilizado para funções analíticas.
Como você compreende, isso apresenta um problema de privacidade pessoal. Isso pode ser evitado adicionando-se a Política de referência ao seu site WordPress.
Feature-Policy (Política de Recurso)
A política de recursos é um tipo de cabeçalho de segurança que permite que os proprietários de sites permitam e desaprovam funções específicas da plataforma Web em suas próprias páginas e nas que incorporam.
Utilizando o cabeçalho de política de recursos, você, como proprietário de um site, pode restringir as funções do navegador da Web de um site.
Para cada função, você deve especificar o que é permitido e o que não é. Aqui estão as políticas de recursos:
- geolocation (Geolocalização)
- midi
- notifications (Notificações)
- push (empurra/forçar)
- sync-xhr
- microphone (microfone)
- camera
- magnetometer (Magnetômetro)
- gyroscope (Giroscópio)
- speaker (Alto Falante)
- vibrate (Vibração)
- fullscreen (Tela Cheia)
- payment (forma de pagamento)
Por exemplo, se você deseja desabilitar a localização geográfica e a câmera em seu site WordPress, é necessário definir uma política de recursos da seguinte maneira:
Feature-Policy: geolocation ‘none’ ; camera ‘none’
Ao especificar a palavra “none” (nenhum) para a lista de origem, os recursos específicos serão desativados para todos os contextos dos navegadores.
- Nota:
- Antes de adicionar cabeçalhos de segurança HTTP em seu site WordPress, verifique se você tem um certificado SSL instalado ou se seu site não estaria acessível.
- Antes de editar qualquer um dos seus arquivos, faça um backup completo.
Como adicionar cabeçalhos de resposta HTTP no WordPress
Para adicionar cabeçalhos de resposta HTTP no WordPress, você só precisa adicionar as seguintes linhas ao seu arquivo .htaccess.
Primeiro, faça o login na sua conta do cPanel hospedando o WordPress e de lá vá para a pasta raiz do seu site WordPress. Em seguida, localize o arquivo .htaccess e edite-o.
Como é um arquivo (.), Ele pode estar oculto. Se você não encontrar o arquivo .htaccess dentro da pasta raiz, acesse as configurações e clique em “mostrar arquivos ocultos”.
Agora adicione a seguinte parte das linhas no final:
Header set Strict-Transport-Security "max-age=31536000" env=HTTPS Header set X-XSS-Protection "1; mode=block" Header set X-Content-Type-Options nosniff Header always append X-Frame-Options SAMEORIGIN Header Referrer-Policy: no-referrer-when-downgrade
Uma vez adicionado, salve o arquivo.
Agora, vá para securityheaders.com para verificar se o código está funcionando ou não.
Observação: não adicionamos a política de recursos e a política de segurança de conteúdo, pois eles são mais complicados de configurar e podem prejudicar seu site. Mas estes são suficientes para endurecer a segurança do seu WordPress.
É isso aí. Esperamos que este tutorial tenha ajudado você a entender os fundamentos do cabeçalho de segurança HTTP e como implementá-los em seu site WordPress. Se você tiver alguma dúvida sobre este artigo, informe-nos na seção de comentários.
Artigo publicado originalmente no site Tripwire