Recebi um relatório de bug alegando contornamento da lista de permissões de iframe do onebox, alguém pode ajudar a verificar?

Nós administramos um fórum Discourse e recebemos um relatório externo alegando uma vulnerabilidade de injeção de código armazenada via o mecanismo onebox / allowed_onebox_iframes. Antes de agir sobre isso, gostaria da ajuda da comunidade/equipe para confirmar se o comportamento descrito é realmente possível no Discourse atual.

O relatório alega:

  • O Discourse cria oneboxes de URLs soltas em sua própria linha e incorpora o twitter:player da página como um iframe para todos os espectadores.
  • A correspondência de origem para a lista de permissões de iframes é “apenas prefixo”, então um host como www.youtube.com.attacker.example seria aceito como uma incorporação legítima do YouTube, enquanto serve HTML controlado pelo atacante.
  • O allowed_onebox_iframes padrão é efetivamente um curinga.

Minha compreensão é que (a) o Discourse corresponde hosts de iframes na lista de permissões com base em limites de domínio, e não em um prefixo simples, e (b) a lista de permissões padrão de iframes onebox é uma lista curada de provedores, não *. Alguém pode confirmar como funciona a correspondência de hosts para allowed_onebox_iframes na versão atual, e se um truque de sufixo de subdomínio como o descrito poderia realmente passar pela validação?

Estamos na versão do Discourse v2026.8.0-latest. Felizes em compartilhar o relatório bruto privativamente com a equipe de segurança, se for útil.

Obrigado.

Desconfio de que este seja um relatório de segurança de LLM proveniente de um pipeline incompleto.

Um pipeline de segurança de LLM totalmente desenvolvido elaboraria uma teoria, configuraria uma instalação de teste do Discourse, ajustaria as configurações de site problemáticas e demonstraria o problema ali. Isso não parece ter ocorrido, e eles passaram diretamente da Teoria para o envio do relatório a você.

Olá @Saurabh1,

Posso confirmar que a vulnerabilidade é legítima e temos uma correção em andamento.

Uma correção para este problema está incluída em July 31st 2026 intermediate releases