# Generate Wordlists

## Tools

* <https://github.com/lctrcl/crwg>

### hashcat

Potentially valid usernames, `John Doe` as an example:

* <https://activedirectorypro.com/active-directory-user-naming-convention/>

```
$ cat << EOF >> passwords.txt
johndoe
jdoe
j.doe
doe
EOF
```

Common usernames:

```
$ cat << EOF >> passwords.txt
admin
administrator
root
guest
sa
changeme
password
EOF
```

Common patterns:

```
$ cat << EOF >> passwords.txt
January
February
March
April
May
June
July
August
September
October
November
December
Autumn
Fall
Spring
Winter
Summer
password
Password
P@ssw0rd
secret
Secret
S3cret
EOF
```

Add year and exclamation point to the end of each password:

```
$ for i in $(cat passwords.txt); do echo "${i}"; echo "${i}\!"; echo "${i}2020"; echo "${i}2020\!"; done > t
$ cp t passwords.txt
```

Mutate the wordlist with hashcat rules:

```
$ hashcat --force --stdout passwords.txt -r /usr/share/hashcat/rules/best64.rule -r /usr/share/hashcat/rules/toggles1.rule |sort -u |awk 'length($0) > 7' > t
$ cp t passwords.txt
```

### kwprocessor

* <https://github.com/hashcat/kwprocessor>

```
$ ./kwp basechars/full.base keymaps/en-us.keymap routes/2-to-16-max-3-direction-changes.route > passwords.txt
```

### cewl

* <https://github.com/digininja/CeWL>

```
$ cewl -d 5 -m 5 -w passwords.txt --with-numbers --email_file emails.txt http://megacorp.local/somedir/logs/html/index.htm
```

### psudohash

* <https://github.com/t3l3machus/psudohash>

```
$ python3 psudohash.py -w megacorp [-cpa] -y 2022,2023
```
