Skip to content

A practical wordlist generator designed for password cracking, leveraging target-specific information.

License

Notifications You must be signed in to change notification settings

AxylumRust/FxWordlist

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 

Repository files navigation

FxWordlist Project - Powerful Wordlist Generator.

A practical wordlist generator designed for password cracking, leveraging target-specific information.

YouTube Video : https://youtu.be/nUvhwK4Asgk

Note: The effectiveness of the tool is greatly improved when used competently. Adapt your configuration according to the amount of information on the target.

FxWordlist Getting Started

Getting Started

To use this program effectively, follow these steps:

  1. Write down all target information in a .txt file (firstname, lastname, date of birth, etc.). One piece of information per line.

    Example in "informations.txt":

    Alice
    Bob
    1990
    [...]
    

    OR

  2. Use the -i command for interactive questions without a file.

    python fxwordlist.py -i [options]

Usage

Don't forget to specify your "informations_file.txt" or use the -i command in your command line.

Examples:

  1. python fxwordlist.py informations.txt -m soft
  2. python fxwordlist.py -m soft informations.txt
  3. python fxwordlist.py -i -m soft
  4. python fxwordlist.py -m soft -i

This tool contains 4 modes for easy configuration:

-m, --mode {soft;optimized;advanced;deep} || Choose the generation mode.

- SOFT

python fxwordlist.py informations.txt -m soft

  1. Description :

Soft mode is used to generate small password lists. As a result, most of the program's functions will be toned down, allowing you to do less work.

  1. Why use this mode ?

This mode doesn't involve any great complexity of passwords, which means it can be used as a basis for breaking a password that isn't very complex/robust.


- OPTIMIZED (default mode)

python fxwordlist.py -m optimized informations.txt

>> (if no options are used, the default mode will be automatically activated).
  1. Description :

Optimized mode is the default mode. It aims to generate password lists that optimize both quantity and quality. As a result, most of the program's features are probabilistically designed to retain only the most likely passwords.

  1. Why use this mode ?

This mode is widely preferred because it facilitates the creation of password lists that are not excessively voluminous, while focusing as much as possible on the probability of the passwords' existence.


- ADVANCED

python fxwordlist.py informations.txt -m advanced

  1. Description :

This mode pushes generation further by implementing additional functions and increasing generation parameters, thus creating larger wordlists.

  1. Why use this mode ?

If you really want to increase your chances of finding a password without worrying about its size, this may be the mode for you.


- DEEP

python fxwordlist.py informations.txt -m deep

  1. Description :

This mode is very heavy, it will test a very large number of possibilities, which can easily make the wordlist absolutely enormous.

  1. Why use this mode?

This mode should only be used if you have very little information about a person. That's why maximum rules have been included in its programming. Beyond 3-4 pieces of information, it will generate so many passwords that it won't necessarily be useful (this also depends on the size of each piece of information). However, if you don't have much information, it can be very useful for testing countless combinations.


CONFIGURATION

This tool is highly flexible, allowing you to tailor word lists to your specific needs using a variety of available options. You can also specify a mode and modify one or more of its values with commands, for example: -m soft -p3 -a1 -s0 (0 disables)...

When you input any of these commands without specifying a mode, all other options will be automatically disabled, ensuring precise execution aligned with your intent. Feel free to combine them as needed:

For instance, using all commands:

fxwordlist.py informations.txt -m soft -p2 -s3 -d2 -a3 -fY -lY -bY -c1 -w wordlist.txt --merge 0_2050.txt -o my_custom_wordlist.txt

If no options are used, the default mode will be automatically activated (optimized mode).

Available Options:

- Choose the generation mode.

-m, --mode {soft;optimized;advanced;deep}

python fxwordlist.py informations.txt -m advanced

- Number of maximum combinations for information permutations.

-p, --permutation [number_of_max_permutation]

python fxwordlist.py informations.txt -p 3

- Number of replacements with symbols, ex: @lice = Alic€, @lic€

-s, --symbol [number_of_maximum_symbol]

python fxwordlist.py informations.txt -s 3

- Number of replacements with digit, ex: Alice = 4lice, Al1c3

-d, --digit [number_of_maximum_digit]

python fxwordlist.py informations.txt -d 3

- Enable/Disable (Y/N) the function to uppercase the first letter only.

-f, --firstupper [Yes;No]

python fxwordlist.py informations.txt -f Y

- Enable/Disable (Y/N) the function to lowercase the entire password.

-l, --lowercase [Yes;No]

python fxwordlist.py informations.txt -l Y

- Enable/Disable (Y/N) the function to double the last letter if it is a vowel, ex: Mima = Mimaa.

-b, --double_letter [Yes;No]

python fxwordlist.py informations.txt -b Y

- Number of replacements with uppercase letters (testing all combinations).

-a, --allupper [number_of_maximum_uppercase]

python fxwordlist.py informations.txt -a 2

- This feature introduces additional characters at each level, expanding the range of possibilities.

-c, --character {1,2,3,0}

  • Level 1 include ["1", "123", "0", "."]
  • Level 2 includes ["1", "123", "0", ".", "!", "*"]
  • Level 3 includes ["1", "123", "0", ".", "!", "*", "00","2000"]
  • Level 0 simply deactivates the functionality.
python fxwordlist.py informations.txt -c 1

- Add one or more additional wordlists that we will add to our generation.

-w, --wordlist [wordlist_file,wordlist_file2,...]

python fxwordlist.py informations.txt -w digit_passwords.txt

- Set all values to the same chosen value and enable all functions (except -w, --merge).

--all_option [number_of_maximum_for_all_value]

python fxwordlist.py informations.txt --all_option 2

- The path for the output file wordlist, by default the output file will be located in the directory where you started the program.

-o, --output_file [output_file_path] | default='./fw_output.txt'

python fxwordlist.py informations.txt -m soft -o my_file.txt

- Merge one or more extra word lists with our generated content from user information, creating multiple combinations between files.

--merge [file_to_merge,file_to_merge2,...]

python fxwordlist.py informations.txt --merge digit_passwords.txt

- Merge various external wordlists while excluding the use of target information, creating multiple combinations between files.

--ext_merge [file1.txt,file2.txt,file3.txt...]

python fxwordlist.py --ext_merge wordlist1.txt,0_2050.txt,digit_passwords.txt

Additional Testing Wordlists

The program includes two compact built-in wordlists for specific testing purposes. You can incorporate these wordlists into your generation using --wordlist or combine them with target information using --merge. This allows the creation of additional probable combinations.

1 - Digit_passwords.txt

This wordlist consists of 460 passwords composed solely of numerical digits. It represents probable passwords involving numeric sequences.

123
1234
12345
123456
1234567
12345678
123456789
[...]

2 - 0_2050.txt

This wordlist is simply a list of numbers from 0 to 2050. It can potentially help find a password with information combined with a number or date, for example: Alice1990, 1990Alice.

0
1
[...]
1990
1991
[...]
2050

IMPORTANT :

As mentioned earlier, the program's effectiveness is directly tied to how you use it. If you have a wealth of information about the target, maximizing all options may result in generating excessively large wordlists. Conversely, if you have limited information about the target, it is advisable to use more advanced options.

  • In cases of minimal information, consider experimenting with the --merge option using various wordlists. This approach can prove beneficial in diversifying password combinations by incorporating external sources. The program provides 2 wordlists which can be very useful for the merge (digit_passwords.txt & 0_2050.txt).

    python fxwordlist.py informations.txt --merge digit_passwords.txt,0_2050.txt
  • If you use the "--merge" option or "-m deep", the number of passwords may increase significantly. To mitigate this impact, this impact you can disable features like --character, --double_letter, reducing the value of --all_upper, etc.

    python fxwordlist.py information.txt --merge ./0_2050.txt -m optimized -c0 -b0 ...

Futur Updates :

Upcoming features will allow you to create custom modes, eliminating the need to re-enter your entire configuration.

Additionally, new rules will be introduced to refine the generation of even more probable passwords.


Want to contribute ?

If you have suggestions to enhance this project, feel free to share them in the Issues section.

“ F0r EdUCaTi0n@L PUrp0$eS 0nLy ”

Flegh.

About

A practical wordlist generator designed for password cracking, leveraging target-specific information.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%