caramelosec. SCAN

X-Frame-Options Value

Checker ID: #14

v2.0.0-alpha

X-Frame-Options Value

Descrição

A versão clássica da proteção contra Clickjacking, mantida para garantir compatibilidade com navegadores mais antigos.

Importância

Impede que seu site seja escondido sob botões falsos. Aceitamos tanto o bloqueio total quanto a permissão para exibir o site dentro dele mesmo (útil para modais e previews).

Requisitos de Sucesso
  • • O cabeçalho deve ser DENY ou SAMEORIGIN.

Cenários de Teste
Cenário Aprovado: Bloqueio total:
HTTP/1.1 200 OK
X-Frame-Options: DENY
Content-Type: text/html; charset=UTF-8
Cenário Aprovado: Permite mesma origem:
HTTP/1.1 200 OK
X-Frame-Options: SAMEORIGIN
Content-Type: text/html; charset=UTF-8
Cenário Reprovado: Ausente ou valor inválido:
HTTP/1.1 200 OK
X-Frame-Options: ALLOW-FROM https://example.com
Content-Type: text/html; charset=UTF-8
v1.0.0-alpha

X-Frame-Options Value

Descrição

Essa é a versão clássica da regra do “não me clone”, mantida principalmente para garantir compatibilidade com navegadores mais antigos, impedindo que outros sites exibam uma cópia da sua aplicação dentro de uma janela (iframe).

Importância

Isso evita o clickjacking, um tipo de ataque em que um site malicioso coloca o seu site escondido no fundo da tela e sobrepõe botões falsos por cima. Por exemplo, o usuário acha que está clicando em “Ganhe um prêmio”, mas na verdade está clicando em um botão perigoso do seu próprio site, como “Excluir conta”. Mesmo existindo proteções mais modernas, essa regra continua importante porque também funciona em navegadores antigos, garantindo segurança mesmo em ambientes desatualizados.

Requisitos de Sucesso
  • • O cabeçalho X-Frame-Options deve estar presente e conter estritamente o valor DENY (Ninguém vai conseguir mostrar a sua aplicação em um iframe/janela).

Cenários de Teste
Cenário Aprovado: O cabeçalho X-Frame-Options está presente e contém o valor DENY:
HTTP/1.1 200 OK
Date: Wed, 17 Dec 2025 11:45:00 GMT
Server: nginx/1.18.0
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Strict-Transport-Security: max-age=31536000
X-Frame-Options: DENY
Last-Modified: Mon, 01 Dec 2025 10:00:00 GMT
ETag: "5f8c-60d4-1a2b"
Cache-Control: max-age=3600
Content-Length: 1540
Cenário Reprovado: O cabeçalho X-Frame-Options está ausente:
HTTP/1.1 200 OK
Date: Wed, 17 Dec 2025 11:45:00 GMT
Server: nginx/1.18.0
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Strict-Transport-Security: max-age=31536000
Last-Modified: Mon, 01 Dec 2025 10:00:00 GMT
ETag: "5f8c-60d4-1a2b"
Cache-Control: max-age=3600
Content-Length: 1540
Cenário Reprovado: O cabeçalho X-Frame-Options está presente mas contém o valor SAMEORIGIN:
HTTP/1.1 200 OK
Date: Wed, 17 Dec 2025 11:45:00 GMT
Server: nginx/1.18.0
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Strict-Transport-Security: max-age=31536000
X-Frame-Options: SAMEORIGIN
Last-Modified: Mon, 01 Dec 2025 10:00:00 GMT
ETag: "5f8c-60d4-1a2b"
Cache-Control: max-age=3600
Content-Length: 1540