
Uma vulnerabilidade de exposição de informações no Datart v1.0.0-rc.3 permite que atacantes autenticados acessem dados confidenciais por meio de uma string de conexão JDBC H2 personalizada.
ID do CVE: CVE-2025-70829
Produto: Datart
Versão: v1.0.0-rc.3
Tipo de Vulnerabilidade: Exposição de Informações
Uma vulnerabilidade de exposição de informações no Datart v1.0.0-rc.3 permite que atacantes autenticados acessem dados sensíveis por meio de uma string de conexão H2 JDBC personalizada. Ao fazer com que o aplicativo se conecte ao seu próprio arquivo de banco de dados interno, os atacantes podem consultar tabelas do sistema que contêm credenciais de usuário e detalhes de configuração.
jdbc:h2:file:./bin/h2/datart.demo;MODE=MySQL
Ao recuperar o hash da senha do usuário a partir do banco de dados, os atacantes podem forjar um token JWT válido para se passar por qualquer usuário (por exemplo, administrador). Isso ocorre porque o aplicativo usa uma chave secreta fixa no código (d@a$t%a^r&a*t) e inclui o hashCode() Java do hash da senha no payload do token.
Consulta SQL:
SELECT id, username, email, password, name FROM user;
Exploração: Use o hash
passwordrecuperado com ojwttest.pypara gerar um tokenBearerválido para efetuar login como qualquer usuário.
Os atacantes também podem recuperar a configuração de outras fontes de dados conectadas.
Consulta SQL:
SELECT * FROM source;
Descriptografia:
O campo config na tabela source geralmente é criptografado usando AES. O aplicativo usa uma chave de segurança padrão embutida no código:
Chave de Segurança Padrão:
d@a$t%a^r&a*t
Você pode usar o utilitário Decrypt.java fornecido (que inclui essa chave padrão) para descriptografar esses valores e obter credenciais em texto claro para bancos de dados externos.