PT-2026-37308 · Unknown · Yet Another Forum.Net
CVE-2026-43937
·
Publicado
2026-05-05
·
Atualizado
2026-05-12
CVSS v3.1
8.8
Alta
| Vetor | AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Nome do Software Vulnerável e Versões Afetadas
YetAnotherForum.NET (YAF.NET) versões anteriores a 4.0.5
Descrição
Existe uma falha de bypass de autorização porque o
PageSecurityCheckAttribute é implementado como um ResultFilterAttribute, que é executado após a conclusão do manipulador da página. Consequentemente, qualquer manipulador OnPost de administrador executa seus efeitos colaterais antes que a resposta seja reescrita para um redirecionamento. Uma instância crítica deste problema é encontrada no endpoint '/Admin/RunSql', onde a função OnPostRunQuery() vincula a variável Editor do corpo POST e a passa para IDbAccess.RunSql() sem verificar as permissões do chamador. Isso permite que qualquer usuário autenticado de baixo privilégio execute SQL blind arbitrário contra o banco de dados, levando potencialmente à perda total de confidencialidade, integridade e disponibilidade. Se a instância do SQL Server tiver xp cmdshell ou integração CLR habilitada, isso pode escalar para a execução de comandos no nível do sistema operacional no host do banco de dados.Recomendações
Atualizar para a versão 4.0.5.
Converter o
PageSecurityCheckAttribute de um ResultFilterAttribute para um IAsyncPageFilter para garantir que a verificação de administrador ocorra antes de qualquer efeito colateral do manipulador.
Implementar uma política de autorização do ASP.NET Core usando AddAuthorization e AuthorizeFolder('/Admin', 'YafAdmin') como defesa em profundidade.
Restringir o endpoint '/Admin/RunSql' apenas para HostAdmin e implementar uma lista de permissões de tipos de instruções para IDbAccess.RunSql() para rejeitar SQL que não seja apenas de leitura.
Auditar e corrigir toda a lógica de autorização implementada em ResultFilterAttribute ou OnResultExecuting(Async) para resolver o erro de ciclo de vida.Exploit
Correção
SQL injection
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Yet Another Forum.Net