CVE Intelligence
Análise Assistido por IA

CVE-2026-9733: Plugin OAuth2 do Mojolicious para Perl: parâmetro state previsível por padrão (CWE-338)

O plugin Mojolicious::Plugin::Web::Auth::OAuth2 para Perl, nas versões até 0.17, gera por padrão um valor state do OAuth2 a partir de fontes de baixa entropia quando nenhum gerador é configurado. Um state previsível pode viabilizar CSRF em fluxos OAuth2. A CNA informa pontuação CVSS 3.1 de 9.1; o registro não mostra inclusão no catálogo KEV e não há exploração confirmada nas fontes consultadas.

Publicada em 13/10/2026 · Atualizada em 13/10/2026 · Read in English

Visão geral

O registro descreve o Mojolicious::Plugin::Web::Auth::OAuth2 para Perl, um plugin do framework web Mojolicious que trata fluxos de autorização OAuth2. Quando nenhum gerador de state é definido no construtor, o plugin recorre a um hash SHA-1 construído a partir de entradas previsíveis e de baixa entropia, incluindo o tempo epoch exposto pelo cabeçalho HTTP Date e a função rand nativa do Perl. O registro classifica a fraqueza como CWE-338, uso de gerador pseudoaleatório fraco.

Impacto

O registro afirma que um valor state previsível permite que um atacante sequestre a sessão de outro usuário por meio de cross-site request forgery. O parâmetro state deve vincular a resposta de autorização à sessão que a iniciou; um valor adivinhável enfraquece essa proteção. A CNA atribui pontuação CVSS 3.1 base 9.1, com vetor de rede, baixa complexidade, sem privilégios exigidos e sem interação do usuário, além de alto impacto em confidencialidade e integridade.

Produtos e versões afetados

  • A descrição indica o Mojolicious::Plugin::Web::Auth::OAuth2 para Perl nas versões até a 0.17.
  • A lista estruturada de itens afetados no registro está vazia, então a faixa exata de versões é apenas a que consta na descrição.
  • O registro não informa versão corrigida.
  • O registro referencia um arquivo de patch para a versão 0.17 hospedado no site de segurança do MetaCPAN. O registro não diz se esse patch é a correção oficial nem o que ele altera.

Status de exploração

O registro mostra que a CVE não consta no catálogo KEV da CISA. Não há exploração confirmada nas fontes consultadas. O registro não traz pontuação EPSS.

Correção e mitigação

  • Mapeie as aplicações que usam este plugin na versão 0.17 ou anterior, incluindo dependências indiretas.
  • Configure um gerador de state explícito, baseado em fonte aleatória criptograficamente segura e com alta entropia, em vez de depender do padrão.
  • Analise o patch referenciado e consulte a página de releases do plugin para identificar uma versão que o mantenedor indique como corrigida antes de atualizar.
  • Confirme que a aplicação valida o state em todo callback OAuth2 e rejeita respostas que não correspondam à sessão.

Orientações de detecção

  • Revise os logs de callbacks OAuth2 em busca de respostas cujo state não corresponda a uma requisição pendente na sessão do usuário.
  • Observe rajadas de callbacks de autorização que o usuário não iniciou, o que pode indicar requisições forjadas.
  • Mantenha a versão do plugin visível nos inventários de software para localizar rapidamente as implantações afetadas.

Limitações das informações disponíveis

  • O registro não tem faixa estruturada de versões afetadas, versão corrigida nem status confirmado de patch.
  • O nome da CWE está nulo no registro e o status da fonte é Deferred.
  • Dados EPSS e SSVC estão ausentes.
  • O registro não diz se aplicações que fornecem seu próprio gerador de state são afetadas.
  • Não havia teste independente nem análise de fornecedor além das referências listadas.

Referências: entrada no NVD, código-fonte no MetaCPAN, publicação na lista oss-security.

Perguntas frequentes

Esta vulnerabilidade foi confirmada como explorada na natureza?

Não. O registro mostra que a CVE não consta no catálogo KEV da CISA e não há exploração confirmada nas fontes consultadas.

Quais versões são afetadas?

A descrição cita versões até a 0.17 do Mojolicious::Plugin::Web::Auth::OAuth2 para Perl. A lista estruturada de itens afetados está vazia, então não há faixa mais precisa.

Existe versão corrigida?

O registro não informa versão corrigida. Ele referencia um arquivo de patch para a versão 0.17, mas não confirma o efeito do patch, então o status de correção deve ser considerado desconhecido.

Esta análise foi redigida com auxílio de IA a partir de dados verificados das fontes e checada automaticamente contra eles.