Reading Brannon Dorsey's guide to cracking Wifi passwords is a good wake-up call to set a decent password for your own network — it's pretty danged easy otherwise.
You just run a command that forces someone connected to your local network to lose their connection, then capture the login session when they reconnect. That gets you the encrypted password, then you do a dictionary attack on it, starting with common Wifi passwords and defaults.
The final step is to crack the password using the captured handshake. If you have access to a GPU, I highly recommend using hashcat for password cracking. I've created a simple tool that makes hashcat super easy to use called naive-hashcat. If you don't have access to a GPU, there are various online GPU cracking services that you can use, like GPUHASH.me or OnlineHashCrack. You can also try your hand at CPU cracking with Aircrack-ng.
Note that both attack methods below assume a relatively weak user generated password. Most WPA/WPA2 routers come with strong 12 character random passwords that many users (rightly) leave unchanged. If you are attempting to crack one of these passwords, I recommend using the Probable-Wordlists WPA-length dictionary files.
(via 4 Short Links)