PT-2026-22154 · Discourse · Discourse-Policy+1
CVSS v3.1
5.4
Média
| Vetor | AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N |
Nome do Software Vulnerável e Versões Afetadas
Versões do Discourse anteriores a 2025.12.2
Versões do Discourse anteriores a 2026.1.1
Versões do Discourse anteriores a 2026.2.0
Descrição
O Discourse é uma plataforma de discussão de código aberto. Antes das versões 2025.12.2, 2026.1.1 e 2026.2.0, o plugin
discourse-policy permitia que qualquer usuário autenticado interagisse com políticas em posts para os quais não tinha permissão de visualização. O PolicyController carregava posts por ID sem verificar o acesso do usuário atual. Isso permitia que membros do grupo de políticas aceitassem ou cancelassem políticas em posts de categorias privadas ou mensagens privadas que não podiam visualizar, e qualquer usuário autenticado enumerasse IDs de posts com políticas anexadas por meio de respostas de erro diferenciadas, resultando em vazamento de informações. O problema foi resolvido com a adição de uma verificação guardian.can see?(@post) no before action set post, garantindo que a visibilidade do post seja verificada antes que qualquer ação de política seja processada.Recomendações
Versões anteriores a 2025.12.2 devem ser atualizadas para a versão 2025.12.2 ou posterior.
Versões anteriores a 2026.1.1 devem ser atualizadas para a versão 2026.1.1 ou posterior.
Versões anteriores a 2026.2.0 devem ser atualizadas para a versão 2026.2.0 ou posterior.
Como medida temporária, desative o plugin
discourse-policy definindo policy enabled = false.Exploit
Correção
Missing Authorization
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Discourse
Discourse-Policy