Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
keepass_dump — Dumper de KeePass 2.X (CVE-2023-32784) | Kitploit
Herramientas/GitHubGitHub/z-jxy/keepass_dump
Descifrado de ContraseñasForensia de MemoriaAnálisis de VulnerabilidadesExplotaciónAnálisis ForenseForensia Digital
GitHubz-jxy/keepass_dump

keepass_dump

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

Ver Repositorio
295hace 2 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Keepass-Dumper

Esta es mi implementación de PoC para CVE-2023-32784

Mi versión es un puerto en Python del PoC de @vdohney junto con algunos cambios y características adicionales.

Cambios

Un cambio fue usar cadenas conocidas que pueden encontrarse en el archivo de volcado para saltar con mayor precisión a la ubicación de los caracteres de la clave maestra. Esto da como resultado menos caracteres falsos positivos y reduce en gran medida el tiempo que se tarda en escanear el archivo. En caso de que las cadenas no se encuentren en el archivo de volcado, el escaneo comenzará desde el principio. Esta opción está habilitada por defecto, pero si quieres hacer un escaneo completo en su lugar, puedes usar --full-scan. Para estos casos, también he añadido una bandera --skip para ayudar a acelerar el escaneo. Esto se hace desplazando el puntero para saltar los siguientes 1000 bytes, ya que normalmente solo contienen el mismo carácter repetido varias veces. Por ejemplo, si el carácter ●e se encuentra en el archivo de volcado, aparecería de la siguiente manera:

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

Usando la bandera --skip, es posible saltar estos bytes repetidos para ayudar a acelerar el escaneo, aunque esto no es necesario cuando se usan los puntos de salto.

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

alt text

Características

Esta versión incluye una funcionalidad de recuperación que intenta encontrar los caracteres desconocidos restantes de la clave. Esto se hace intentando localizar las diferentes combinaciones posibles de los caracteres encontrados dentro del volcado; si se encuentra una coincidencia, los caracteres restantes se extraen del volcado hasta que se encuentre el siguiente carácter no ASCII.

Esto funciona si la contraseña en texto plano completa está almacenada dentro del archivo de volcado (esto parece suceder cuando el usuario muestra la clave maestra desactivando la ocultación mediante asteriscos).

Puedes habilitar este comportamiento usando la bandera --recover.

alt text

También puedes especificar un archivo de salida usando -o para exportar las diferentes combinaciones encontradas. Aquí puedes ver que, incluso en el caso de que se encontraran caracteres de otra clave maestra y de que la contraseña en texto plano no estuviera almacenada en el volcado, en la lista de combinaciones todavía somos capaces de obtener 23/24 caracteres de la clave en la combinación final que se encuentra a continuación.

alt text

En este caso, la primera entrada también muestra en realidad 4/5 caracteres de la segunda clave, ducks, que también estaba dentro del volcado; sin embargo, se emparejó junto con los caracteres de la otra clave, lo que resultó en ucks|tMasterPassword123!. Parece que podría haber una solución para esto, sin embargo, sigue siendo un trabajo en progreso (WIP).

También he añadido la capacidad de buscar posibles contraseñas dentro del archivo de volcado proporcionando una lista de palabras con -w. Esta bandera generará cadenas que contienen caracteres de las palabras encontradas en la lista para buscar dentro del archivo de volcado. También puedes especificar el relleno (padding) para las cadenas creadas usando las banderas -p o --padding.

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

alt text

Para el ejemplo anterior, la contraseña se almacenó en texto plano dentro del volcado. Por lo tanto, fue posible hacer coincidir la cadena encontrada para extraer los caracteres adicionales. Sin embargo, en el caso de que la contraseña en texto plano no esté almacenada en texto plano dentro del volcado, todavía es posible extraer los caracteres restantes:

alt text

En este caso, aunque no fue capaz de encontrar una coincidencia de texto plano en el volcado, aún así pudo extraer todos los caracteres adicionales.

Referencias

Crédito a @vdohney, quien descubrió originalmente esta vulnerabilidad. El enlace a su proyecto está aquí

Detalles del CVE: CVE-2023-32784

Descargar herramienta