Creating a personal dictionary from words not found in standard English dictionaries can prove beneficial, particularly for individuals attempting to breach passwords based on personal information such as names, surnames, or native language terms. This is because most word lists used in hacking or password cracking primarily consist of English dictionary words, leaving out potentially vulnerable passwords like a person’s name, surname, pet’s name, and especially words from their native language, which are not included in these lists due to their absence from the English dictionary.
In addition to the issue of selective words, dictionary attacks tend to be time-consuming because they systematically try all the words present in the word list to gain access to an authentication system. By constructing our custom dictionary, we can also significantly reduce the time required for such attacks. However, the effectiveness of creating a personal dictionary hinge on the individual’s ability to make educated guesses about what the password might be based on hints or knowledge of the target. To generate a personal dictionary, tools like “crunch” can be employed, and these can be conveniently accessed in Kali Linux by navigating to Applications -> Password Attacks -> Crunch.
We can proceed to construct our personalized dictionary by utilizing the “crunch” commands. Crunch offers numerous options, and anyone interested in exploring various commands and their functionalities can refer to the manual or use the help option within crunch. To access the manual, use “crunch -man,” and to display the help information, use “crunch -h.”
In our specific scenario, I will provide an example command that can be employed to generate our personalized dictionary:
Command: crunch 1 5 sunil -o /root/Desktop/sunil.txt
This command instructs crunch to create a dictionary that includes variations of the term “sunil” with lengths ranging from 1 to 5 characters and save the output to the file located at “/root/Desktop/sunil.txt.”
After opening the file we can see all the possible words that it generated for characters “sunil”
We can also alter the choice of words by changing the command. For example if we want to skip 1st and 2nd character permutations and want to start with the 3rd character up to 5th characters then we can simply use the following command:-
command: crunch 3 5 sunil -o /root/Desktop/sunil.txt
Now there can be cases in which we want to include some special characters along with some specific set of characters in that case we can make use of the following command:-
command: crunch 5 7 sunil@$ -o /root/Desktop/sunil1.txt
The command will generate start generating 5 character words as we have mentioned that it will start from 5 characters including the special character and will generate till we get all possibility of 7 characters word.
We can incorporate special characters, numbers, and symbols in a similar manner to craft our own personalized dictionary. Subsequently, we can utilize this custom dictionary as a word list to attempt password cracking. A practical real-life example of this approach can be observed in environments where English is not commonly spoken, and individuals possess limited knowledge of English vocabulary. In such settings, people tend to formulate passwords based on their native language, personal names, or other familiar elements. In such cases, standard internet word dictionaries may not be