← voltar
CVE-2026-48587

Potential exposure of private data via whitespace padding in Vary header

CVSS 2.3 LOWEPSS 0.4%CWE-1023
Em resumo

O Django não remove espaços em branco dos cabeçalhos HTTP ao comparar respostas em cache, permitindo que atacantes burlem a validação do cache e acessem respostas que deveriam ser privadas. Isso ocorre porque o sistema trata 'Content-Type' e ' Content-Type ' como valores diferentes.

Detalhe técnico

O CVE-2026-48587 afeta Django versões 5.2 anteriores a 5.2.15 e 6.0 anteriores a 6.0.6 na função `has_vary_header()`, que não normaliza espaços em branco nos valores do cabeçalho Vary antes da comparação. Um atacante pode criar requisições com valores de cabeçalho preenchidos com espaços para contornar a validação do cache e recuperar respostas em cache destinadas a públicos diferentes, resultando em divulgação de informações. A vulnerabilidade requer que a aplicação armazene em cache respostas baseadas em cabeçalhos Vary sem normalização adequada.

Resumo gerado e traduzido por IA a partir da descrição oficial.
An issue was discovered in Django 5.2 before 5.2.15 and 6.0 before 6.0.6. `django.utils.cache.has_vary_header()` in Django does not strip leading or trailing whitespace from `Vary` response header values before comparison, which allows remote attackers to read cached responses via requests to URLs whose responses contain whitespace-padded Vary header values. Earlier, unsupported Django series (such as 5.0.x, 4.1.x, and 3.2.x) were not evaluated and may also be affected. Django would like to thank Navid Rezazadeh for reporting this issue.
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Produtos afetados
djangoproject · Django

Quer saber se a sua infraestrutura está exposta a isto?

Falar com a TrueHacking →