How to Hack WPA/WPA2 Wi Fi with Kali Linux

Author Info

Updated: October 11, 2019

This wikiHow teaches you how to find out the password for a WPA or WPA2 network by hacking it with Kali Linux.

Part 1 of 4:
Preparing to Hack Wi-Fi

  1. 1
    Understand when you can legally hack Wi-Fi. In most regions, the only time you can hack a WPA or WPA2 network is when the network either belongs to you or belongs to someone who has given you explicit consent to hack the network.
    • Hacking networks that don't meet the above criteria is illegal, and may constitute a federal crime.
  2. 2
    Download the Kali Linux disk image. Kali Linux is the preferred tool for hacking WPA and WPA2. You can download the Kali Linux installation image (ISO) by doing the following:
    • Go to in your computer's web browser.
    • Click HTTP next to the version of Kali you want to use.
    • Wait for the file to finish downloading.
  3. 3
    Attach a flash drive to your computer. You'll need to use a flash drive with at least 4 gigabytes of space for this process.
  4. 4
    Make your flash drive bootable. This is necessary in order to be able to use the USB flash drive as an installation location.
    • You can also use a Mac for this step.
  5. 5
    Place the Kali Linux ISO file on the flash drive. Open the flash drive, then drag the downloaded Kali Linux ISO file into the flash drive's window.
    • Make sure you leave your USB flash drive plugged in after you finish this process.
  6. 6
    Install Kali Linux. To install Kali Linux on your computer, do the following:
    • Prompt your Windows computer to restart.
    • Enter the BIOS menu.
    • Set your computer to start from your USB drive by finding the "Boot Options" (or similar) section, selecting your USB drive's name, and moving it to the top of the list.
    • Save and exit, then wait for the Kali Linux installation window to appear (you may have to restart your computer one more time).
    • Follow the Kali Linux installation prompts.
  7. 7
    Buy a Wi-Fi card that supports monitoring. You can find Wi-Fi cards online or in tech department stores. Make sure that your Wi-Fi card allows monitoring (RFMON), or you won't be able to hack a network.
    • Many computers have built-in RFMON Wi-Fi cards, so you might want to try the first four steps of the next part before buying one.
    • If you're using Kali Linux in a virtual machine, you will need a Wi-Fi card regardless of your computer's card.
  8. 8
    Log into your Kali Linux computer as root. Enter your root username and password when logging in.
    • You will need to be on your root account at all times during the hacking process.
  9. 9
    Plug your Wi-Fi card into your Kali Linux computer. Doing so will immediately prompt the card to begin setting up and downloading drivers for itself; if prompted, follow the on-screen instructions to complete the setup. Once you're done with this step, you can proceed with hacking your selected network.
    • If you've already set up the card on your computer before, you'll still have to set it up for Kali Linux here by plugging it in.
    • In most cases, simply attaching the card to your computer will be enough to set it up.

Part 2 of 4:
Hacking Wi-Fi

  1. 1
    Open your Kali Linux computer's Terminal. Find and click the Terminal app icon, which resembles a black box with a white ">_" on it.
    • You can also just press Alt+Ctrl+T to open the Terminal.
  2. 2
    Enter the Aircrack-ng installation command. Type in the following command, then press Enter:
    sudo apt-get install aircrack-ng
  3. 3
    Enter your password when prompted. Type in the password you use to log into your computer, then press Enter. This enables root access for any other commands executed in Terminal.
    • If you open another Terminal window (as you may later in this article), you may have to run a command with the sudo prefix and/or enter your password again.
  4. 4
    Install Aircrack-ng. Press Y when prompted, then wait for the program to finish installing.
  5. 5
    Turn on airmon-ng. Type in the following command, then press Enter.
  6. 6
    Find the monitor name. You'll find this in the "Interface" column.
    • If you're hacking your own network, it will usually be named "wlan0".
    • If you don't see a monitor name, your Wi-Fi card doesn't support monitoring.
  7. 7
    Begin monitoring the network. You can do so by typing in the following command and pressing Enter:
    airmon-ng start wlan0
    • Make sure you replace "wlan0" with the name of your target network if it's different.
  8. 8
    Enable a monitor mode interface. Enter the following command:
  9. 9
    Kill any processes that return errors. In some cases, your Wi-Fi card will conflict with running services on your computer. You can kill these processes by entering the following command:[1]
    airmon-ng check kill
  10. 10
    Review the monitor interface name. In most cases, the name will be something like "mon0" or "wlan0mon".[2]
  11. 11
    Tell your computer to listen to nearby routers. To get a list of all routers in range, enter the following command:
    airodump-ng mon0
    • Make sure you replace "mon0" with whatever your monitor interface name was in the last step.
  12. 12
    Find the router you want to hack. At the end of each string of text, you'll see a name; find the one belonging to the network you want to hack into.
  13. 13
    Make sure the router is using WPA or WPA2 security. If you see "WPA" or "WPA2" immediately to the left of the network's name, you can proceed; otherwise, you cannot hack the network.
  14. 14
    Note the MAC address and channel number of the router. These pieces of information are to the left of the network's name:
    • MAC address — This is the line of numbers on the far-left side of your router's line.
    • Channel — This is the number (e.g., 0, 1, 2, etc.) directly to the left of the WPA or WPA2 tag.
  15. 15
    Monitor your selected network for a handshake. A "handshake" occurs when an item connects to a network (e.g., when your computer connects to a router). Enter the following code, making sure to replace the necessary components of the command with your network's information:
    airodump-ng -c channel --bssid MAC -w /root/Desktop/ mon0
    • Replace "channel" with the channel number you found in the last step.
    • Replace "MAC" with the MAC address you found in the last step.
    • Remember to replace "mon0" with whatever your interface name was.
    • Here's an example address:
      airodump-ng -c 3 --bssid 1C:1C:1E:C1:AB:C1 -w /root/Desktop/ wlan0mon
  16. 16
    Wait for a handshake to appear. Once you see a line with the tag "WPA handshake:" followed by a MAC address in the upper-right corner of the screen, you can proceed.
  17. 17
    Exit airodump-ng, then open the desktop. Press Ctrl+C to quit, then make sure you can see the ".cap" file on your computer's desktop.
  18. 18
    Rename your ".cap" file. While not strictly necessary, this will make it easier to work with later. Enter the following command to change the name, making sure to replace "name" with whatever you want to name the file:
    mv ./-01.cap name.cap
    • If your ".cap" file isn't named "-01.cap", replace "-01.cap" with whatever your ".cap" file's name is.
  19. 19
    Convert the ".cap" file into ".hccapx" format. You can do this by using Kali Linux's converter. Enter the following command, making sure to replace "name" with your file's name:
    cap2hccapx.bin name.cap name.hccapx
    • You can also go to and upload the ".cap" file to the converter by clicking Choose File and selecting your file. Once the file is uploaded, click Convert to convert it and then download it back onto your desktop before proceeding.
  20. 20
    Install naive-hashcat. This is the service you'll use to crack the password. Enter the following commands in order:
    sudo git clone
    cd naive-hashcat
    curl -L -o dicts/rockyou.txt
  21. 21
    Run naive-hashcat. Once it finishes installing, enter the following command (making sure to replace any instance of "name" with your ".cap" file's name):
    HASH_FILE=name.hccapx POT_FILE=name.pot HASH_TYPE=2500 ./
  22. 22
    Wait for the network password to be cracked. Once the password is cracked, its string will be added to the "name.pot" file found in the "naive-hashcat" directory; the word or phrase after the last colon in the string is the password.
    • It can take anywhere from a few hours to a few months for the password to be cracked.

Part 3 of 4:
Using Aircrack-Ng for Non-GPU Computers

  1. 1
    Download a dictionary file. The most commonly used dictionary file is "Rock You". You can download it by entering the following command:
    curl -L -o rockyou.txt
    • Keep in mind that aircrack-ng will not be able to crack the WPA or WPA2 password if the password isn't in the word list.
  2. 2
    Tell aircrack-ng to begin cracking the password. Enter the following command, making sure to use the necessary network information when doing so:
    aircrack-ng -a2 -b MAC -w rockyou.txt name.cap
    • If you're cracking a WPA network instead of a WPA2 network, replace "-a2" with -a.
    • Replace "MAC" with the MAC address you found in the last section.
    • Replace "name" with your ".cap" file's name.
  3. 3
    Wait for Terminal to display the results. When you see a "KEY FOUND!" heading appear, aircrack-ng has found the password. You'll see the password displayed in brackets to the right of the "KEY FOUND!" heading.

Part 4 of 4:
Using Deauth Attacks to Force a Handshake

  1. 1
    Understand what a deauth attack does. Deauth attacks send malicious deauthentication packets to the router you're trying to break into, causing the Internet to disconnect and ask the Internet user to log back in. Once the user logs back in, you will be provided with a handshake.
  2. 2
    Monitor your network. Enter the following command, making sure to enter your network's information where necessary:
    airodump-ng -c channel --bssid MAC
    • For example:
      airodump-ng -c 1 --bssid 9C:5C:8E:C9:AB:C0
  3. 3
    Wait for something to connect to the network. Once you see two MAC addresses appear next to each other (and a string of text that includes a manufacturer name next to them), you can proceed.
    • This indicates that a client (e.g., a computer) is now connected to the network.
  4. 4
    Open a new Terminal window. You can just press Alt+Ctrl+T to do this. Make sure airodump-ng is still running in the background Terminal window.
  5. 5
    Send the deauth packets. Enter the following command, making sure to substitute your network's information:[3]
    aireplay-ng -0 2 -a MAC1 -c MAC2 mon0
    • The "2" refers to the number of packets to send. You can increase or decrease this number, but keep in mind that sending more than two packets can cause a noticeable security breach.
    • Replace "MAC1" with the left-most MAC address at the bottom of the background Terminal window.
    • Replace "MAC2" with the right-most MAC address at the bottom of the background Terminal window.
    • Remember to replace "mon0" with your interface name that you found when your computer initially looked for routers.
    • An example command looks like this:
      aireplay-ng -0 3 -a 9C:5C:8E:C9:AB:C0 -c 64:BC:0C:48:97:F7 mon0
  6. 6
    Re-open the original Terminal window. Go back to the background Terminal window when you're done sending the deauth packets.
  7. 7
    Look for a handshake. Once you see the "WPA handshake:" tag and the address next to it, you can proceed with hacking your network.

Community Q&A

Add New Question
  • Question
    What is a word list, and how do I find one?
    Community Answer
    A word list is a file with passwords in it. RockYou is a good one.
  • Question
    Where can I download Kali Linux?
    Community Answer
    Go to At the top of the page, there is a Download tab. Once you open that, it will pull up the list of current downloads.
  • Question
    Who created Kali Linux?
    Community Answer
  • Question
    Why are some commands are not working in the Kali Linux in VirtualBox?
    Community Answer
    With VirtualBox, you'll need an external WiFi Adaptater, and this adaptater must handle monitor mode.
  • Question
    Is it only for randomly generated passwords?
    Community Answer
    Not exactly, it is able to crack specific selected passwords but it may not be able to hack something complicated.
  • Question
    How much time will it take for cracking the password?
    Sourabh Joshi
    Community Answer
    It may take few seconds or many hours. It depends on how difficult the password is. Hacking is not an easy task, you need to be patient.
  • Question
    Will I notice any symptoms on my router when I try this?
    Community Answer
    You should not notice any symptoms if there is no Wi-Fi connection indicator. In some cases, LED lamp on your router starts blinking if the connection is being established.
  • Question
    Is this like a dictionary attack?
    Community Answer
    Partly, it could be considered dictionary attack, but often the wordlists contain much more than just words from the dictionary. The words could be made up of numbers, letters and special characters.
  • Question
    What is a flash drive?
    Community Answer
    A "flash drive" is a USB memory stick.
  • Question
    How do I hack WPA/WPA2 on an Android phone without rooting?
    Community Answer
    You can't. Android is based of of the Linux kernel (what Kali is made in). In the Linux kernel, root is needed to carry out these types of functions. Rooting your phone basically allows you to control the root account (like the Windows 10 system account). You need to root your phone to use software to hack WiFi, so it is impossible to hack WPA/WPA2 without Android phone rooting.
Show more answers
Unanswered Questions
  • After entering the command in part 3 I got this message, "aircrack-ng: aircrack-ng.c:6744: main: Assertion `ap_cur->wpa.state > 0' failed. Aborted". Do you have any idea what I should do?
  • What do I do if I'm installing Kali Linux and I'm getting a Win 32 loader error?
Ask a Question
200 characters left



      • Using this method to test your own Wi-Fi for weak spots before launching a server is a good way to prepare your system for similar attacks.


      • Hacking into anyone’s Wi-Fi without permission is illegal in most countries. Only perform the above steps on a network that either belongs to you or for which you have explicit consent to test.
      • Sending more than two death packets may cause your target computer to crash, thus arousing suspicion.

      About This Article

      How helpful is this?
      Co-authors: 23
      Updated: October 11, 2019
      Views: 618,103
      Categories: Wi Fi
      Article SummaryX

      To hack WPA/WPA2 Wi Fi with Kali Linux, start by downloading the Kali Linux installation image by going to the Kali website and clicking HTTP. Once the file has downloaded, attach a flash drive to your computer and drag the downloaded Kali Linux ISO file onto it. You’ll also want to install Kali Linux onto your computer by clicking on the icon and following the prompts. After it has installed, log into your Kali Linux computer as root and plug a Wi-Fi card into your computer. Next, open your computer’s terminal and enter the aircrack-ng installation command and the computer’s passcode. From here, you’ll be able to begin monitoring the network and listen to nearby routers. When you find the router you want to hack, watch it for a handshake, which will give you the code to enter the network.

      Thanks to all authors for creating a page that has been read 618,103 times.

      Is this article up to date?