A dictionary attack consists of trying "every word in the dictionary" as a possible key for an encrypted password. A dictionary of potential passwords is more accurately known as a wordlist. This kind of attack is generally more efficient than a brute-force attack, because users typically choose poor passwords.
There are two methods of improving the success of a dictionary attack: the first method is to use a larger dictionary, or more dictionaries (technical dictionaries and foreign language dictionaries will increase the overall chance of discovering the correct password); the second method is to perform string manipulation on the dictionary.
For example, the dictionary may have the word "password" in it. Common string manipulation techniques will try the word backwards (drowssap), appending numbers to the end of the string (password00 - password99), or with different capitalization (Password, pAssword, ... passworD).
Cain's Dictionary Password Cracker can be configured to use a list of dictionary files and it also offers the possibility to apply a number of variants for each word:
As Is: -> the password id checked as written in the dictionary file.
Reverse -> the reverse form of the password is tried (password->drowssap).
Double -> double the tried password (Pass->PassPass)
Lowercase -> the lowercase form of the password is tried (Password -> password).
Uppercase -> the uppercase password is tried (Password -> PASSWORD).
Numbers substitution permutations -> replace certain letters with numbers (Pass, P4ss, Pa5s, .... P45s, .....P455).
Case Perms -> all case permutation of the password are checked (password, Password, pAssword, PAssword, ..... PASSWORD).
Two numbers Hybrid-Brute: appends a maximum of two digit after each word (Password0, Password1,...Password9, Password00, Password01, .... Password99).
It also remembers each dictionary file position reached to resume from previous attacks (the Reset button cleans the start position of the wordlists).
Add all the dictionary files using the "Add" button. Variants for each word can be enabled/disabled clicking on the relative check boxes and the attack is started using the "Start" button.
The cracker's list that started the attack is updated when you exit the dialog, in order to reflect all the passwords found.