PT-2026-83544 · Ash Sql · Ash Sql
CVSS v4.0
5.9
Média
| Vetor | AV:L/AC:L/AT:P/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N |
Nome do Software Vulnerável e Versões Afetadas
ash sql versões 0.4.1 até 0.7.0
Description
Um problema de autorização incorreta permite que um chamador ignore filtros de escopo ou autorização expressos como
exists/2 em um relacionamento que declara tanto um limite (ou from many?) quanto um filtro ou ordenação que referencia parent(...). A função AshSql.Join.related query/3 ignora o predicado exists fornecido pelo chamador e o delega para limit from many/5. Quando o filtro ou a ordenação do relacionamento referencia parent(...), a função limit from many/5 descarta tanto o limite quanto o predicado, resultando em um EXISTS correlacionado simples. Isso faz com que a verificação corresponda a qualquer registro que possua qualquer linha relacionada. Em contextos de política, como authorize if expr(exists(memberships, user id == ^actor(:id))), a condição de escopo do ator é removida, permitindo que a política seja aprovada para qualquer ator com qualquer linha relacionada.Recommendations
Atualize o ash sql para a versão 0.7.1 ou posterior.
Exploit
Correção
Incorrect Authorization
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Ash Sql