I notice that in
/usr/share/wordlists in Kali Linux (former Backtrack) there are some lists. Are they used to bruteforce something? Is there specific list for specific kind of attacks?
Kali linux is a distribution designed for penetration testing and computer forensics, both which involve password cracking. So you are right in thinking that word lists are involved in password cracking, however it's not brute force.
Brute force attacks try every combination of characters in order to find a password, while word lists are used in dictionary based attacks. Many people base their password on dictionary words, and word lists are used to supply the material for dictionary attacks. The reason you want to use dictionary attacks is that they are much faster than brute force attacks. If you have many passwords and you only want to crack one or two then this method can yield quick results, especially if the password hashes are from places where strong passwords are not enforced.
Typical tools for password cracking (John the Ripper, ophtcrack, hashcat, etc) can do several types of attacks including:
- Standard brute force: all combinations are tried until something matches. You tpyically use a character set common on the keyboards of the language used to type the passwords, or you can used a reduced set like alphanumneric plus a few symbols. the size of the character set makes a big difference in how long it takes to brute force a password. Password length also makes a big difference. This can take a very long time depending on many factors
- Standard dictionary: straight dictionary words are used. It's mostly used to find really poor passwords, like password, password123, system, welcome, 123456, etc.
- Dictionary attack with rules: in this type dictionary words are used as the basis for cracks, rules are used to modify these, for instance capitalizing the first letter, adding a number to the end, or replacing letters with numbers or symbols
Rules attacks are likely the best bang for the buck if all you have are standard computing resources, although if you have GPUs available brute-force attacks can be made viable as long as the passwords aren't too long. It depends on the password length, hashing/salting used, and how much computing power you have at your disposal.
One of the better basic wordlists in Kali is
/usr/share/wordlists/rockyou.txt.gz. To unzip simply run
gzip -d /usr/share/wordlists/rockyou.txt.gz.
Be sure to add "known weak" passwords that are used by the organization you are testing. I like to add these "additional" custom passwords to the top so they are tested first.
Those lists can be used to feed into several programs. So for instance
aircrack-ng has an option
-w where it takes a wordlist as argument. The password testing program John the Ripper also takes wordlists to accelerate the guessing.
In addition to what's already mentioned here, the wordlists are used in conjunction with some of the web app tools and things such as sqlmap. If you're looking for places to use them, download some of the "boot to root" VMs like Kioptrix and De-ICE and have a go at brute-ing some passwords.
As for specific lists for specific types of hacks - not really. Unless you're doing something targeted against a person you know some facts about (in which case you'll use something like CUPP - Common User Passwords Profiler - to generate a custom wordlist for that particular target).