NAME
progpick - Bruteforce with a stream of permutations of a specific pattern
SYNOPSIS
progpick [-vqc] [-e cmd] PATTERN
DESCRIPTION
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}}}'
AUTHORS
This program was originally written and is currently maintained by kpcyrd. Bug reports and patches are welcome on github:
https://github.com/kpcyrd/progpick