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
keepass_dump — Dumper para KeePass 2.X (CVE-2023-32784) | Kitploit
Ferramentas/GitHubGitHub/z-jxy/keepass_dump
Quebra de SenhasForensia de MemóriaAnálise de VulnerabilidadesExploraçãoAnálise ForenseForensia Digital
GitHubz-jxy/keepass_dump

keepass_dump

Dumper para KeePass 2.X (CVE-2023-32784)

Ver Repositório
2955há 3 anosRevisado pelo Kitploit

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

Keepass-Dumper

Esta é a minha implementação de PoC para CVE-2023-32784

A minha versão é um port em Python do PoC do @vdohney com algumas alterações e funcionalidades adicionais.

Alterações

Uma mudança foi usar strings conhecidas que podem ser encontradas no arquivo de dump para saltar com mais precisão para a localização dos caracteres da chave-mestra. Isso resulta em menos caracteres falsos positivos e reduz bastante o tempo necessário para analisar o arquivo. Caso as strings não sejam encontradas no arquivo de dump, a análise começará do início. Esta opção está ativada por padrão, mas se quiser fazer uma análise completa, pode usar --full-scan. Para estes casos, também adicionei a flag --skip para acelerar a análise. Isso é feito deslocando o ponteiro para saltar os próximos 1000 bytes, uma vez que normalmente contêm apenas o mesmo caractere repetido várias vezes. Por exemplo, se o caractere ●e for encontrado no arquivo de dump, aparecerá da seguinte forma:

root@kitploit:~
●e
●e
●e
●e
●e
●e
●e
●e
●e
●e
●●c

Usando a flag --skip, é possível saltar esses bytes repetidos para acelerar a análise, embora isso não seja necessário quando se utilizam os pontos de salto.

root@kitploit:~
[*] 15567777 | Found: ●e
[*] 15568797 | Found: ●e
[*] 15570355 | Found: ●●c
[*] 15571375 | Found: ●●c
[*] 15572925 | Found: ●●●r
[*] 15573973 | Found: ●●●r

alt text

Funcionalidades

Esta versão inclui uma funcionalidade de recuperação que tenta encontrar quaisquer caracteres desconhecidos restantes da chave. Isso é feito tentando localizar as diferentes combinações possíveis dos caracteres encontrados no dump; se uma correspondência for encontrada, os caracteres restantes são extraídos do dump até que o próximo caractere não ASCII seja encontrado.

Isso funciona se a senha completa em texto simples estiver armazenada no arquivo de dump (isso parece acontecer quando o usuário exibe a chave-mestra desativando a ocultação por asteriscos).

Você pode ativar esse comportamento usando a flag --recover.

alt text

Você também pode especificar um arquivo de saída usando -o para exportar as diferentes combinações encontradas. Aqui você pode ver que, mesmo no caso em que caracteres de outra chave-mestra foram encontrados, e com a senha em texto simples não estando armazenada no dump, na lista de combinações ainda conseguimos obter 23/24 caracteres da chave na combinação final encontrada abaixo.

alt text

Neste caso, a primeira entrada também mostra na verdade 4/5 caracteres da segunda chave, ducks, que também estava no dump, no entanto foi emparelhada com os caracteres da outra chave, resultando em ucks|tMasterPassword123!. Parece haver potencialmente uma solução alternativa para isso, porém ainda é um WIP.

Também adicionei a capacidade de procurar possíveis senhas dentro do arquivo de dump fornecendo uma wordlist com -w. Essa flag gerará strings contendo caracteres das palavras encontradas na lista para procurar dentro do arquivo de dump. Você também pode especificar o padding para as strings criadas usando as flags -p ou --padding.

Exemplo: --padding 2 => ●●a | --padding 3 => ●●●a

alt text

Para o exemplo acima, a senha estava armazenada em texto simples dentro do dump. Então foi possível corresponder a string encontrada para extrair os caracteres adicionais. No entanto, no caso em que a senha em texto simples não está armazenada em texto simples dentro do dump, ainda é possível extrair os caracteres restantes:

alt text

Neste caso, mesmo não tendo conseguido encontrar uma correspondência de texto simples no dump, ainda foi capaz de extrair todos os caracteres adicionais.

Referências

Créditos para @vdohney que originalmente descobriu esta vulnerabilidade. O link para o projeto dele está aqui

Detalhes do CVE: CVE-2023-32784

Baixar ferramenta