Ilustração: Poluição de protótipo pode enfraquecer cookies de sessão no Express
express-session · Divulgada

Poluição de protótipo pode enfraquecer cookies de sessão no Express

· 1 min de leitura

O pesquisador varanda demonstrou que poluição de protótipo em aplicações Express pode fazer a biblioteca express-session criar cookies de sessão com atributos de segurança enfraquecidos, como httpOnly: false e sameSite: none. A causa é um laço for...in que copia configurações e também lê propriedades herdadas da cadeia de protótipos. Não há correção citada; defina explicitamente os atributos de segurança dos cookies e trate poluição de protótipo na aplicação.

WhatsApp LinkedIn X
MédiaFalhaDivulgadaCorreção a confirmar
Neste artigo
  1. O que aconteceu
  2. Por que importa
  3. O que fazer
  4. Para o time técnico
  5. Linha do tempo
  6. Fontes

O que aconteceu

Um pesquisador demonstrou que uma falha de poluição de protótipo em aplicações Express pode fazer a biblioteca express-session gerar cookies de sessão com proteções reduzidas, como httpOnly desativado e sameSite none. Isso abre caminho para ataques de CSRF e XSS.

Incidentes como este, todo dia de manhã

Os que pedem ação primeiro, em 3 minutos de leitura.

Grátis · 1 e-mail por dia, de manhã · sem spam, cancele em 1 clique

Por que importa

Sessões de usuários podem ficar expostas a roubo de cookie e a ações não autorizadas em nome do usuário. O problema atinge empresas cujas aplicações usam Express com express-session e que também tenham uma falha de poluição de protótipo.

O que fazer

Verifique se todas as aplicações Express definem explicitamente httpOnly, sameSite, secure e domain nos cookies de sessão. Corrija as fontes de poluição de protótipo na aplicação.

Para o time técnico

Afetados
express-session (biblioteca de sessões para Node.js) · Aplicações Express que usam a biblioteca express-session e são vulneráveis a poluição de protótipo. A fonte não cita versões.
Exploração
Sem exploração relatada. Pesquisa publicada pelo pesquisador varanda no dbugs.
Correção
Não citada na fonte. Mitigação indicada: definir explicitamente os atributos de segurança dos cookies (httpOnly, sameSite, secure, domain) na configuração da sessão.
Vetor
A biblioteca express-session define valores padrão seguros, como httpOnly: true, e depois copia as configurações da aplicação para um novo objeto com um laço for...in. Esse laço também itera propriedades herdadas da cadeia de protótipos. Se a aplicação for vulnerável a poluição de protótipo, o atacante altera Object.prototype e os novos cookies podem herdar httpOnly: false e sameSite: none quando o desenvolvedor não definiu esses atributos explicitamente.
Mais detalhes
Consequências citadas: httpOnly false torna o cookie de sessão acessível a injeção de JavaScript, aumentando o risco de XSS; sameSite none permite o envio do cookie em requisições entre sites quando os requisitos de Secure são atendidos, criando condições para CSRF; alterar Domain e Secure pode ampliar o escopo do cookie ou enfraquecer a proteção de sua transmissão. Exemplo de payload citado: {"__proto__": {"httpOnly": false, "sameSite": "none"}}.

Linha do tempo

  1. Pesquisa do pesquisador varanda, publicada no dbugs, detalhou a fraqueza na criação de cookies da biblioteca.

Fontes 1 fonte

Receba o próximo amanhã de manhã

Um e-mail por dia com o que mudou, o que corrigir primeiro e como. Depois da inscrição você entra no feed completo.

Grátis · 1 e-mail por dia, de manhã · sem spam, cancele em 1 clique

Indique para o seu time

Quem cuida de segurança com você também devia receber.

LinkedIn X

Seu colega recebe um pedido de confirmação. Nada é enviado sem ele confirmar.

Ver todas as notícias

Leia também

Antes de sair: receba isso todo dia

A edição diária do HIFY Radar chega de manhã com os incidentes que pedem ação. Grátis.

Grátis · 1 e-mail por dia, de manhã · sem spam, cancele em 1 clique