# Generate Wordlists

* [username_generator](https://github.com/therodri2/username_generator.git)
* [CeWL](../enumeration/CeWL/README.md)
* [Mentalist](https://github.com/sc0tfree/mentalist.git)
* [lyricpass](https://github.com/initstring/lyricpass.git)
* [pnwgen phonenumbers](https://github.com/toxydose/pnwgen.git)

## Cupp

* [cupp](https://github.com/Mebus/cupp.git)
    * Interactive dialogue via `cupp.py -i`
    * Wordlistdownload via `cupp.py -l`
    * Connections to alecto DB via `-a`

## crunch

```ish
crunch <minlen> <maxlen> <charPool> -o <output.file>
```

* Option `-t` specifies variable characters
    * `@`, lower case alpha characters
    * `,`, upper case alpha characters
    * `%`, numeric characters
    * `^`, special characters including space
```sh
crunch 8 8 -t passw%%rd
```

### Generate Pins with crunch

Generate a list of pins with a min len of 3, the maximum length of 6 a character pool of 0x0 to 0xF and save the output in a file

```sh
crunch 3 6 0123456789ABCDEF -o pins.txt
```

## ttpassgen 
* [ttpassgen](https://github.com/tp7309/TTPassGen.git)
* Generate lists from the ground up
* `pip install ttpassgen`

```sh
ttpassgen --rule '[?d]{6:6:*}' 6digitpins.txt
```
```sh
ttpassgen --rule '[?l]{1:5:*}' all_letter_combinations.txt
```
```sh
ttpassgen --dictlist "in.txt,in2.txt" --rule '$0[_]?$1' -s " " out.txt
```

An example for the policy of the following parameters. A given passwordlist as a base + 1 or 2 numbers + 1 or 2 a special characters
```sh
ttpassgen --dictlist "password_base_list.txt" --rule '$0[?d]{1:2:*}[!@#$%^]{1:2:*}' tt_password.list
```

# exrex

* Generate all possible outcomes from regex string
