Skip to content
KitploitKITPLOIT
HerramientasBlog
Log in
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
JKS-private-key-cracker-hashcat — Clavo en el ataúd JKS - Descifrando contraseñas de entradas de clave privada en un archivo JKS | Kitploit
Herramientas/GitHubGitHub/floyd-fuh/jks-private-key-cracker-hashcat
Descifrado de ContraseñasAnálisis de VulnerabilidadesCriptografía
GitHubfloyd-fuh/jks-private-key-cracker-hashcat

JKS-private-key-cracker-hashcat

Clavo en el ataúd JKS - Descifrando contraseñas de entradas de clave privada en un archivo JKS

Ver Repositorio

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
18818107hace 6 añosRevisado por Kitploit

JKS private key cracker - Clavo en el ataúd de JKS

El Java Key Store (JKS) es la forma que tiene Java de almacenar una o varias claves criptográficas privadas y públicas para criptografía asimétrica en un archivo. Si bien existen varios formatos de almacén de claves, Java y Android todavía usan por defecto el formato de archivo JKS. JKS es uno de los formatos de archivo para los almacenes de claves de Java, pero JKS se usa de manera confusa como acrónimo de la API general de almacenes de claves de Java. Este proyecto incluye información sobre los mecanismos de seguridad del formato de archivo JKS y cómo se puede descifrar la protección por contraseña de la clave privada. Debido al diseño inusual de JKS, la implementación desarrollada puede ignorar la contraseña del almacén de claves y descifrar directamente la contraseña de la clave privada. Debido a que ignora la contraseña del almacén de claves, esta implementación puede atacar cualquier configuración de JKS, lo que no es el caso de la mayoría de otras herramientas. Al explotar una debilidad del esquema de cifrado basado en contraseña para la clave privada en JKS, las contraseñas se pueden descifrar de manera muy eficiente. Hasta ahora, no había ninguna herramienta pública disponible que explotara esta debilidad. Esta técnica se implementó en hashcat para amplificar la eficiencia del algoritmo con velocidades de descifrado más altas en GPUs.

Para obtener la parte teórica, consulte el artículo de POC||GTFO '15:12 Clavo en el ataúd de Java Key Store' en el número 0x15 incluido en este repositorio (pocorgtfo15.pdf) o disponible en varios espejos como este hermoso: https://unpack.debug.su/pocorgtfo/

Antes de que preguntes: JCEKS o BKS o cualquier otro formato de almacén de claves no es compatible (aún).

Cómo deberías descifrar archivos JKS

La respuesta es construir tu propio hardware de descifrado para ello ;) . Pero seamos un poco más prácticos, entonces la respuesta es usar tu GPU:``` : _____________ : v3.6.0 ____________ _\ |_ /___ \ |____ _ / ______ | _ | __ \ / _ | /_ __ |/ | | | \ ___ / | | \ / \ | | || |__/ / /| |/: | |_:-aTZ!/_/ |: /__:

  • BLAKE2 * BLOCKCHAIN2 * DPAPI * CHACHA20 * JAVA KEYSTORE * ETHEREUM WALLET *
Todo lo que necesitas hacer es ejecutar el siguiente comando:```
java -jar JksPrivkPrepare.jar your_JKS_file.jks > hash.txt

Si tu hash.txt termina vacío, significa que no hay ninguna clave privada en el archivo JKS o que especificaste un archivo que no es JKS.

Luego, pasa el archivo hash.txt a hashcat (versión 3.6.0 y superior, pero si quieres estar seguro y también asegurarte de poder descifrar contraseñas muy largas, usa al menos la versión 4 de hashcat!), por ejemplo así:``` $ ./hashcat -m 15500 -a 3 -1 '?u|' -w 3 hash.txt ?1?1?1?1?1?1?1?1?1 hashcat (v3.6.0) starting...

OpenCL Platform #1: NVIDIA Corporation

  • Device #1: GeForce GTX 1080, 2026/8107 MB allocatable, 20MCU

Hashes: 1 digests; 1 unique digests, 1 unique salts Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates

Applicable optimizers:

  • Zero-Byte
  • Precompute-Init
  • Not-Iterated
  • Appended-Salt
  • Single-Hash
  • Single-Salt
  • Brute-Force

Watchdog: Temperature abort trigger set to 90c Watchdog: Temperature retain trigger set to 75c

$jksprivk$D1BC102EF5FE5F1A7ED6A63431767DD4E1569670...8test:POC||GTFO

Session..........: hashcat Status...........: Cracked Hash.Type........: JKS Java Key Store Private Keys (SHA1) Hash.Target......: $jksprivk$D1BC102EF5FE5F1A7ED6A63431767DD4E1569670...8test Time.Started.....: Tue May 30 17:41:58 2017 (8 mins, 25 secs) Time.Estimated...: Tue May 30 17:50:23 2017 (0 secs) Guess.Mask.......: ?1?1?1?1?1?1?1?1?1 [9] Guess.Charset....: -1 ?u|, -2 Undefined, -3 Undefined, -4 Undefined Guess.Queue......: 1/1 (100.00%) Speed.Dev.#1.....: 7946.6 MH/s (39.48ms) Recovered........: 1/1 (100.00%) Digests, 1/1 (100.00%) Salts Progress.........: 4014116700160/7625597484987 (52.64%) Rejected.........: 0/4014116700160 (0.00%) Restore.Point....: 5505024000/10460353203 (52.63%) Candidates.#1....: NNVGFSRFO -> Z|ZFVDUFO HWMon.Dev.#1.....: Temp: 75c Fan: 89% Util:100% Core:1936MHz Mem:4513MHz Bus:1

Started: Tue May 30 17:41:56 2017 Stopped: Tue May 30 17:50:24 2017

Así que de este repositorio básicamente solo necesitas el archivo JksPrivkPrepare.jar para ejecutar una sesión de cracking.

# Del formato de John The Ripper al formato de hashcat
Descargar herramienta