Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/floyd-fuh/jks-private-key-cracker-hashcat
Passwort-CrackingSchwachstellenanalyseKryptographie
GitHubfloyd-fuh/jks-private-key-cracker-hashcat

JKS-private-key-cracker-hashcat

Der letzte Nagel im Sarg der JKS - Knacken von Passwörtern privater Schlüsseleinträge in einer JKS-Datei

Repository anzeigen

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
18818107vor 6 JahrenVon Kitploit geprüft

JKS Private-Key-Cracker – Nagel im JKS-Sarg

Der Java Key Store (JKS) ist die Java-Methode, um einen oder mehrere kryptografische private und öffentliche Schlüssel für asymmetrische Kryptografie in einer Datei zu speichern. Obwohl es verschiedene Keystore-Formate gibt, verwenden Java und Android standardmäßig immer noch das JKS-Dateiformat. JKS ist eines der Dateiformate für Java-Keystores, aber JKS wird verwirrenderweise auch als Akronym für die allgemeine Java-Keystore-API verwendet. Dieses Projekt enthält Informationen zu den Sicherheitsmechanismen des JKS-Dateiformats und darüber, wie der Passwortschutz des privaten Schlüssels geknackt werden kann. Aufgrund des ungewöhnlichen Designs von JKS kann die entwickelte Implementierung das Keystore-Passwort ignorieren und direkt das Passwort des privaten Schlüssels knacken. Da es das Keystore-Passwort ignoriert, kann diese Implementierung jede JKS-Konfiguration angreifen, was bei den meisten anderen Tools nicht der Fall ist. Durch Ausnutzung einer Schwäche des passwortbasierten Verschlüsselungsverfahrens für den privaten Schlüssel in JKS können Passwörter sehr effizient geknackt werden. Bisher war kein öffentliches Tool verfügbar, das diese Schwäche ausnutzt. Diese Technik wurde in hashcat implementiert, um die Effizienz des Algorithmus mit höheren Knackgeschwindigkeiten auf GPUs zu verstärken.

Für den theoretischen Teil verweisen wir auf den POC||GTFO-Artikel "15:12 Nail in the Java Key Store Coffin" in Ausgabe 0x15, der in diesem Repository enthalten ist (pocorgtfo15.pdf) oder auf verschiedenen Spiegelservern wie diesem schönen verfügbar ist: https://unpack.debug.su/pocorgtfo/

Bevor Sie fragen: JCEKS, BKS oder andere Keystore-Formate werden (noch) nicht unterstützt.

Wie Sie JKS-Dateien knacken sollten

Die Antwort lautet: Bauen Sie Ihre eigene Knack-Hardware dafür ;). Aber seien wir etwas praktischer: Die Antwort lautet, Ihre GPU zu verwenden:``` : _____________ : v3.6.0 ____________ _\ |_ /___ \ |____ _ / ______ | _ | __ \ / _ | /_ __ |/ | | | \ ___ / | | \ / \ | | || |__/ / /| |/: | |_:-aTZ!/_/ |: /__:

  • BLAKE2 * BLOCKCHAIN2 * DPAPI * CHACHA20 * JAVA KEYSTORE * ETHEREUM WALLET *
Alles, was Sie tun müssen, ist den folgenden Befehl auszuführen:```
java -jar JksPrivkPrepare.jar your_JKS_file.jks > hash.txt

Wenn Ihre hash.txt am Ende leer ist, gibt es entweder keinen privaten Schlüssel in der JKS-Datei oder Sie haben eine Nicht-JKS-Datei angegeben.

Geben Sie dann die hash.txt-Datei an hashcat weiter (Version 3.6.0 und höher, aber um auf der sicheren Seite zu sein und auch sicherzustellen, dass Sie sehr lange Passwörter knacken können, verwenden Sie bitte mindestens Version 4 von hashcat!), zum Beispiel so:``` $ ./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

So aus diesem Repository benötigt man im Grunde nur die JksPrivkPrepare.jar, um eine Cracking-Sitzung durchzuführen.

# Vom John The Ripper Format zum hashcat Format
Tool herunterladen