Password Mutations

Hashcat

FunctionDescription
:Do nothing.
lLowercase all letters.
uUppercase all letters.
cCapitalize the first letter and lowercase others.
sXYReplace all instances of X with Y.
$!Add the exclamation character at the end.

Each rule is written on a new line which determines how the word should be mutated.

Example Hashcat Rule File

> cat custom.rule

:
c
so0
c so0
sa@
c sa@
c sa@ so0
$!
$! c
$! so0
$! sa@
$! c so0
$! c sa@
$! so0 sa@
$! c so0 sa@

Hashcat will apply the rules to each word in password.list and store the mutated version in our mut_password.list accordingly. Thus, 1 word will have 15 mutations.

> hashcat --force password.list -r custom.rule --stdout | sort -u > mut_password.list
> cat mut_password.list

password
Password
passw0rd
Passw0rd
p@ssword
P@ssword
P@ssw0rd
password!
Password!
passw0rd!
p@ssword!
Passw0rd!
P@ssword!
p@ssw0rd!
P@ssw0rd!

Best64

a list of existing useful rules

> ls /usr/share/hashcat/rules/

best64.rule                  specific.rule
combinator.rule              T0XlC-insert_00-99_1950-2050_toprules_0_F.rule
d3ad0ne.rule                 T0XlC-insert_space_and_special_0_F.rule
dive.rule                    T0XlC-insert_top_100_passwords_1_G.rule
generated2.rule              T0XlC.rule
generated.rule               T0XlCv1.rule
hybrid                       toggles1.rule
Incisive-leetspeak.rule      toggles2.rule
InsidePro-HashManager.rule   toggles3.rule
InsidePro-PasswordsPro.rule  toggles4.rule
leetspeak.rule               toggles5.rule
oscommerce.rule              unix-ninja-leetspeak.rule
rockyou-30000.rule

CeWL

> cewl https://www.inlanefreight.com -d 4 -m 6 --lowercase -w inlane.wordlist
> wc -l inlane.wordlist

326

-d depth to spider
-m minimum length of the word
-w store into file