CVE-2025-67730 – Cross-Site Scripting (XSS) Armazenado
Visão Geral
CVE ID: CVE-2025-67730
Tipo de Vulnerabilidade: Cross-Site Scripting (XSS) Armazenado
Severidade: Média–Alta (dependente do contexto)
Esta vulnerabilidade permitia que usuários autenticados injetassem HTML e JavaScript maliciosos nos campos de descrição dos formulários de Vaga (Job), Curso (Course) e Turma (Batch). O payload injetado seria executado automaticamente no navegador de qualquer usuário que posteriormente visualizasse a Vaga, o Curso ou a Turma afetados.
Componentes Afetados
- Campo de descrição da Vaga
- Campo de descrição do Curso
- Campo de descrição da Turma
Impacto
- Execução de JavaScript arbitrário nos navegadores das vítimas
- Sequestro de sessão
- Roubo de credenciais
- Assunção de conta (dependendo do nível de privilégio)
- Manipulação de DOM e phishing
Como o payload é armazenado, o ataque persiste e afeta todos os usuários que visualizam o conteúdo comprometido.
Cenário de Ataque
- O atacante faz login com uma conta de usuário válida.
- O atacante cria ou edita uma Vaga, um Curso ou uma Turma.
- JavaScript malicioso é inserido no campo de descrição.
- O payload é salvo no banco de dados.
- Qualquer usuário que abrir a página afetada aciona o payload.
Prova de Conceito (PoC)
Passos para Reproduzir:
- Faça login como qualquer usuário autenticado.
- Navegue até a página de criação ou edição da Vaga / Curso / Turma.
- Cole o payload no campo de descrição.
- Salve o formulário.
- Abra a Vaga / o Curso / a Turma criados.
- O JavaScript é executado no navegador.
Causa Raiz
- Ausência ou insuficiência de sanitização de HTML no servidor
- Renderização insegura de entrada fornecida pelo usuário
- Falta de codificação de saída nos templates
Correção / Mitigação
Patch Oficial
- Corrigido na versão:
2.42.0
Melhorias de Segurança Implementadas
- Sanitização adequada de HTML na entrada
- Codificação segura de saída antes da renderização
- Restrição de tags e atributos executáveis
Práticas Recomendadas
- Sempre sanitize a entrada do usuário no lado do servidor
- Aplique codificação de saída com base no contexto (HTML, JS, URL)
- Use um sanitizador de HTML confiável (por exemplo, DOMPurify)
- Implemente uma Política de Segurança de Conteúdo (CSP)
Linha do Tempo
- Reportado por: Dharan Raghunathan
- Status: Corrigido
- Lançamento do Patch: Versão 2.42.0
Agradecimento
Este problema foi divulgado de forma responsável por Dharan Raghunathan.
Referências
Aviso Legal
Este documento é apenas para fins educacionais e de segurança defensiva.