progpick1
Bruteforce with a stream of permutations of a specific pattern
Usage
progpick [-vqc]
[-e
cmd]
PATTERN
Overview
progpick is a program to generate permutations of an explicitly provided pattern. It's useful if you forgot some details about a passphrase but you still remember most of it.
Options
-
-v, --verbose -
Verbose logs (can be used multiple times, maximum: 4)
-
-q, --quiet -
Do not print progress bar
-
-c, --count -
Count total number of permutations instead of printing them
-
-e cmd, --exec cmd -
Send permutations to stdin of a subprocess. cmd is parsed into a list of arguments and then executed directly instead of going through /bin/sh, so shell quoting works, but other shell features don't.
-
-h, --help -
Prints help information.
Examples
Generate all combinations from a-z with a length of 5
progpick '{a..z}{a..z}{a..z}{a..z}{a..z}'
With progress bar
progpick '{a..z}{a..z}{a..z}{a..z}{a..z}' > /dev/null
Without progress bar
progpick -q '{a..z}{a..z}{a..z}{a..z}{a..z}' > /dev/null
To make a character optional
progpick '{a..z}{{a..z},}'
From a-z and 0-9
progpick '{{a..z},{0..9}}'
Run a script for each result
progpick 'a{b,c{d,e{f,g}}}' | while read -r x; do
./script "$x"
done
Send the result to stdin of a script
progpick -e './script.sh' 'a{b,c{d,e{f,g}}}'
Attempt to open a luks partition
sudo progpick -e 'cryptsetup open --test-passphrase /dev/sdc1' 'a{b,c{d,e{f,g}}}'