caramelosec SCAN

CORS Access-Control-Allow-Origin Value

Checker ID: #15

v0.1.1

CORS Access-Control-Allow-Origin Value

Importância

O cabeçalho Access-Control-Allow-Origin define quais origens externas têm permissão para acessar os recursos da aplicação via navegador. Uma configuração fraca pode permitir que sites maliciosos leiam dados sensíveis do usuário autenticado, levando ao vazamento de dados.

Descrição Técnica

Analisa a resposta HTTP retornada pelo servidor do website sob teste para confirmar se o cabeçalho Access-Control-Allow-Origin está presente e configurado de forma segura.

Cenários de Teste
Cenário Aprovado: O cabeçalho Access-Control-Allow-Origin do site https://www.test.example está presente e contém o valor https://www.test.example
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
Access-Control-Allow-Origin: https://www.test.example
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 Access-Control-Allow-Origin 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 Access-Control-Allow-Origin do site https://www.test.example está presente mas contém o valor https://www.test002.example
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
Access-Control-Allow-Origin: https://www.test002.example
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 Access-Control-Allow-Origin do site https://www.test.example contém o valor *
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
Access-Control-Allow-Origin: *
Last-Modified: Mon, 01 Dec 2025 10:00:00 GMT
ETag: "5f8c-60d4-1a2b"
Cache-Control: max-age=3600
Content-Length: 1540