IA Squad
BuscarEN
php · web-token/jwt-frameworkCrítico

web-token/jwt-framework: Unprotected header override de 'alg' em JWSVerifier e JWEDecrypter

JWSVerifier::getAlgorithm() mescla cabeçalhos protegidos e não protegidos com spread operator, permitindo que o cabeçalho não protegido sobrescreva o parâmetro 'alg' protegido.

19 Jun 2026Leitura 1 minSeveridade: mexe agora

O que mudou

JWSVerifier::getAlgorithm() mescla cabeçalhos protegidos e não protegidos com spread operator, permitindo que o cabeçalho não protegido sobrescreva o parâmetro 'alg' protegido. O mesmo problema ocorre em JWEDecrypter.php com array_merge().

Quem isso afeta

Todas as aplicações que usam web-token/jwt-framework e dependem de JWSVerifier ou JWEDecrypter para verificação de assinatura ou descriptografia, especialmente aquelas com conjuntos de chaves mistos ou sem HeaderCheckerManager.

O que fazer hoje

Aplique a correção fornecida: modifique JWSVerifier::getAlgorithm() para ler 'alg' exclusivamente do cabeçalho protegido e corrija JWEDecrypter para usar valores do cabeçalho protegido para 'alg' e 'enc'.

A esteira
Coletado Auditado Redigido Publicado