
Ferramenta de teste para CVE-2024-26144 que verifica se servidores web e CDNs armazenam em cache incorretamente respostas HTTP contendo cabeçalhos Set-Cookie, revelando configurações incorretas de cache.
Requisitos:
$ deno run --allow-run --allow-net check.ts
Se quiser testar a CDN, defina a URL no argumento.
(Certifique-se de que todos os caches são limpos antes de executar!)
$ deno run --allow-run --allow-net check.ts https://example.com/
Se a resposta HTTP contém o cabeçalho Set-Cookie...
| Web server | Resposta em cache (*1) | Cache contém Set-Cookie |
|---|
| Nginx + proxy_cache | NO | - |
| Nginx + Passenger | YES | YES |
| Apache + mod_cache | YES | YES |
| HAProxy | YES | YES |
| Cloudflare (Free plan) | NO | - |
| CloudFront (CachingOptimized) | YES | NO |
| CloudFront (UseOriginCacheControlHeaders) | NO | - |
| Fastly | NO | - |
*1 É o resultado de saber se o cache funciona para o usuário anônimo. Mesmo que diga NO, pode retornar cache para a requisição com o mesmo cookie.