PT-2026-95162 · Unknown · Ashauthentication
CVSS v4.0
7.4
Alta
| Vetor | AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Nome do Software Vulnerável e Versões Afetadas
ash authentication versões 0.2.0 até 4.14.9
ash authentication versões 5.0.0-rc.0 até 5.0.0-rc.13
Description
Um problema de fixação de sessão permite que um invasor mantenha uma sessão autenticada se conseguir plantar um identificador de sessão no navegador de uma vítima antes que ela faça login. Isso ocorre porque a função
store in session/2 em AshAuthentication.Plug.Helpers utiliza Plug.Conn.put session/3 para gravar o sujeito autenticado sem chamar Plug.Conn.configure session(renew: true), fazendo com que o identificador de pré-autenticação persista. Isso afeta a função padrão success/4 em AshAuthentication.Phoenix.Controller. using /1, o AuthController de mix ash authentication phoenix.install e o auto-login de lembrete (remember-me). Além disso, a função clear session/2 utiliza Plug.Conn.clear session/1, que remove o conteúdo da sessão, mas mantém o identificador, permitindo que um ID plantado sobreviva a um ciclo de logout e login. Em implantações que utilizam armazenamento de sessão no servidor (como ETS, Mnesia, Redis ou banco de dados), isso pode levar ao controle total da conta. Isso é possível se o invasor conseguir plantar um cookie via cookie tossing de um subdomínio irmão, um host HTTP sem HSTS ou um navegador compartilhado.Recommendations
Atualize o ash authentication para a versão 4.15.0 ou posterior.
Atualize o ash authentication para a versão 5.0.0-rc.14 ou posterior.
Como solução temporária, chame
Plug.Conn.configure session(conn, renew: true) dentro da função success/4 antes que store in session/2 seja chamada.
Como solução temporária, adicione Plug.Conn.configure session(conn, drop: true) durante o processo de encerramento da sessão (sign-out) para garantir que identificadores plantados sejam removidos.Exploit
Correção
Session Fixation
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Ashauthentication