bruteforce-luks

Brute-force la passphrase d'un volume chiffré en LUKS à l'aide d'une wordlist ou de candidats générés. Brute-forces the passphrase of a LUKS-encrypted volume using a wordlist or generated candidates.

↗ https://github.com/glv2/bruteforce-luks

Overview

bruteforce-luks attacks the passphrase protecting a LUKS (Linux Unified Key Setup) encrypted volume, trying candidates from a wordlist against the volume’s key slots. It’s used in forensic recovery and offline password-auditing scenarios where a disk image with LUKS encryption needs to be opened and the passphrase is weak or partially known.

Common Usage

Brute-force with a wordlist against a LUKS volume/image

bruteforce-luks -f wordlist.txt /dev/sdb1

Against a raw disk image instead of a block device

bruteforce-luks -f wordlist.txt disk.img

Use multiple threads to speed up the attack

bruteforce-luks -f wordlist.txt -t 8 disk.img

Stop at the first match and print it

bruteforce-luks -f rockyou.txt -t 4 disk.img

Typical Workflow

Step 1: Confirm the volume is LUKS and inspect header info

cryptsetup luksDump disk.img

Step 2: Run the brute-force

bruteforce-luks -f /usr/share/wordlists/rockyou.txt -t 8 disk.img

Step 3: Once found, open the volume with the recovered passphrase

sudo cryptsetup luksOpen disk.img recovered -

Tips

  • LUKS uses a deliberately slow KDF (PBKDF2/Argon2) — expect low attempts/sec even with strong wordlists; this is not a fast attack
  • Multi-threading (-t) roughly scales with core count since each attempt is CPU-bound on the KDF
  • If a keyfile rather than passphrase protects the volume, this tool won’t help — that requires the keyfile itself
Help / Man page
Usage: bruteforce-luks [options] <luks_device_or_image>

Options:
  -f FILE     Wordlist file to try as passphrases
  -t THREADS  Number of threads to use (default: 1)
  -s N        Start at line N in the wordlist
  -v          Verbose output (print each attempt)
  -h          Show help

Exits with the found passphrase printed to stdout on success.

Vue d’ensemble

bruteforce-luks attaque la passphrase protégeant un volume chiffré LUKS (Linux Unified Key Setup), en essayant des candidats d’une wordlist contre les key slots du volume. Il sert dans les scénarios de récupération forensique et d’audit de mot de passe hors ligne, où une image disque chiffrée en LUKS doit être ouverte et où la passphrase est faible ou partiellement connue.

Utilisation courante

# Brute-force avec une wordlist contre un volume/une image LUKS
bruteforce-luks -f wordlist.txt /dev/sdb1

# Contre une image disque brute au lieu d'un périphérique bloc
bruteforce-luks -f wordlist.txt disk.img

# Utiliser plusieurs threads pour accélérer l'attaque
bruteforce-luks -f wordlist.txt -t 8 disk.img

# S'arrêter à la première correspondance et l'afficher
bruteforce-luks -f rockyou.txt -t 4 disk.img

Workflow typique

# Étape 1 : confirmer que le volume est en LUKS et inspecter les infos d'en-tête
cryptsetup luksDump disk.img

# Étape 2 : lancer le brute-force
bruteforce-luks -f /usr/share/wordlists/rockyou.txt -t 8 disk.img

# Étape 3 : une fois trouvée, ouvrir le volume avec la passphrase récupérée
sudo cryptsetup luksOpen disk.img recovered -

Conseils

  • LUKS utilise une KDF volontairement lente (PBKDF2/Argon2) : attendez-vous à peu de tentatives/sec même avec de bonnes wordlists ; ce n’est pas une attaque rapide
  • Le multi-threading (-t) monte à peu près avec le nombre de cœurs, puisque chaque tentative est limitée par le CPU sur la KDF
  • Si le volume est protégé par un fichier de clé plutôt qu’une passphrase, cet outil ne servira à rien : il faut le fichier de clé lui-même
Aide / Page de manuel
Usage: bruteforce-luks [options] <luks_device_or_image>

Options:
  -f FILE     Wordlist file to try as passphrases
  -t THREADS  Number of threads to use (default: 1)
  -s N        Start at line N in the wordlist
  -v          Verbose output (print each attempt)
  -h          Show help

Exits with the found passphrase printed to stdout on success.