caramelosec. SCAN

CSP Frame-Ancestors Value

Checker ID: #10

v2.0.0-alpha

CSP Frame-Ancestors Value

Descrição

A regra do "Quem pode me colocar numa moldura?". Define quais sites podem exibir o seu site dentro de um <iframe>.

Importância

Previne ataques de Clickjacking (roubo de cliques). Se você tem parceiros ou portais que precisam exibir seu site, você deve autorizá-los explicitamente. Se não tem, bloqueie tudo.

Requisitos de Sucesso
  • • O parâmetro frame-ancestors deve ser 'none' (ninguém), 'self' (eu mesmo) ou uma lista de domínios confiáveis.

  • • O valor * (liberou geral) continua proibido.

Cenários de Teste
Cenário Aprovado: Ninguém (Blindado):
HTTP/1.1 200 OK
Content-Security-Policy: frame-ancestors 'none';
Content-Type: text/html; charset=UTF-8
Cenário Aprovado: Apenas eu mesmo e meu portal de parceiros:
HTTP/1.1 200 OK
Content-Security-Policy: frame-ancestors 'self' https://portal-parceiro.com;
Content-Type: text/html; charset=UTF-8
Cenário Reprovado: Permite tudo:
HTTP/1.1 200 OK
Content-Security-Policy: frame-ancestors *;
Content-Type: text/html; charset=UTF-8
v1.0.0-alpha

CSP Frame-Ancestors Value

Descrição

Essa é a regra do “não me clone”, que impede que outros sites exibam uma cópia da sua aplicação dentro de uma janela (iframe).

Importância

Isso evita o Clickjacking. Um site malicioso coloca o seu site num fundo transparente e põe um botão "Ganhe um Prêmio" por cima do seu botão "Deletar Conta". O usuário clica achando que é o prêmio, mas está clicando no seu site.

Requisitos de Sucesso
  • • O cabeçalho Content-Security-Policy deve conter o parâmetro frame-ancestors com o valor igual a 'none', ou seja, ninguém pode te “clonar” e colocar em uma janelinha (nem você mesmo).

Cenários de Teste
Cenário Aprovado: O parâmetro frame-ancestors contém o valor 'none' (ninguém pode renderizar o site por meio de <frames> ou <iframes>):
Content-Security-Policy: frame-ancestors 'none';
Cenário Reprovado: O parâmetro frame-ancestors contém o valor * (qualquer um pode renderizar o site por meio de <frames> ou <iframes>):
Content-Security-Policy: frame-ancestors *;
Cenário Reprovado: O parâmetro frame-ancestors contém o valor 'self' (apenas o próprio site pode renderizar suas páginas por meio de <frames> ou <iframes>):
Content-Security-Policy: frame-ancestors 'self';