Password Attackslukspasswordbruteforceforensicscryptographydecryption

bruteforce-luks

bruteforce-luks attempts to discover passwords for LUKS encrypted volumes by trying all possible combinations. It is particularly useful when partial password knowledge is available, such as in forensics scenarios.

Description

The program is used to try discovery a password for encrypted LUKS volume used to security reasons. It works trying decrypt at least one of the key slots by trying all the possible passwords. It is used in forensics and is especially useful if you know something about the password (i.e. you forgot a part of your password but still remember most of it).

Because of cryptography complexity, crack the password of a LUKS volume without knowing anything about it would take way too much time (unless the password is really short and/or weak).

Sending a USR1 signal to a running bruteforce-luks process makes it print progress info to standard error and continue.

How It Works

bruteforce-luks generates and tests possible passwords against a LUKS encrypted volume, attempting to decrypt at least one key slot. It supports specifying password beginnings, ends, lengths, or reading from files, systematically brute-forcing combinations based on provided constraints. Progress can be monitored via USR1 signal to stderr.

Installation

bash
sudo apt install bruteforce-luks

Flags

-b <string>Beginning of the password. default: ""
-e <string>End of the password. default: ""
-f <file>Read the passwords from a file instead of generating them.
-hShow help and quit.
-l <length>Minimum password length (beginning and end included). default: 1

Examples

Show help and usage information for the tool.
bruteforce-luks --help
Basic usage: attempt to bruteforce the password of the specified LUKS volume.
bruteforce-luks /path/to/luks_volume
Bruteforce passwords starting with 'pass' on the LUKS volume.
bruteforce-luks -b 'pass' /path/to/luks_volume
Bruteforce passwords ending with '123' on the LUKS volume.
bruteforce-luks -e '123' /path/to/luks_volume
Read passwords from a file and test them against the LUKS volume.
bruteforce-luks -f passwords.txt /path/to/luks_volume
Bruteforce passwords with minimum length of 8 characters on the LUKS volume.
bruteforce-luks -l 8 /path/to/luks_volume
Send USR1 signal to running bruteforce-luks process to print progress info to stderr.
kill -USR1 <pid>
Updated 2026-04-16kali.org ↗