Categories: Kali Linux

Air-Hammer – A Online Brute-Force Attack Tool

Air-Hammer is an online brute-force attack tool for use against WPA Enterprise networks. Despite the fact that WPA Enterprise is regularly viewed as “more secure” than WPA-PSK, it likewise has a considerably bigger attack surface. While WPA-PSK systems have just a single legitimate password, there might be a great many substantial username and password combinations which concede access to a solitary WPA Enterprise network. Further, passwords used to get to WPA Enterprise metwork are normally chosen by end clients, a large number of whom select greatly basic passwords.

Installing dependencies

Air-Hammer has been built and used on the current version of Kali Linux. In addition to packages that come with Kali Linux by default, the following dependencies need to be installed:

  root@kali:~# pip install wpa_supplicant

Also Read Material Components for Android

Other requirements

Air-Hammer requires a list of usernames that are valid for the target network in order to function. Some basic suggestions for creating this list are included in step 2 of the attack chain outlined on my blog.

Air-Hammer Usage

The -h or --help flags can be used to display Air-Hammer’s usage instructions.

root@kali:~# ./air-hammer.py --help
usage: air-hammer.py -i interface -e SSID -u USERFILE [-P PASSWORD]
                     [-p PASSFILE] [-s line] [-w OUTFILE] [-1] [-t seconds]

Perform an online, horizontal dictionary attack against a WPA Enterprise
network.

optional arguments:
  -i interface  Wireless interface (default: None)
  -e SSID       SSID of the target network (default: None)
  -u USERFILE   Username wordlist (default: None)
  -P PASSWORD   Password to try on each username (default: None)
  -p PASSFILE   List of passwords to try for each username (default: None)
  -s line       Optional start line to resume attack. May not be used with a
                password list. (default: 0)
  -w OUTFILE    Save valid credentials to a CSV file (default: None)
  -1            Stop after the first set of valid credentials are found
                (default: False)
  -t seconds    Seconds to sleep between each connection attempt (default:
                0.5)

Example

Below is a standard attack using wlan0 to target the “Test-Network” wireless network with the password, “UserPassword1”, and a list of usernames stored in the file, “usernames.txt”.

root@kali:~# ./air-hammer.py -i wlan0 -e Test-Network -P UserPassword1 -u usernames.txt 
[0]  Trying alice:UserPassword1...
[1]  Trying bob:UserPassword1...
[2]  Trying charlotte:UserPassword1...
[3]  Trying dave:UserPassword1...
[4]  Trying wifiuser:UserPassword1...
[!] VALID CREDENTIALS: wifiuser:UserPassword1
[5]  Trying wrongUser05:UserPassword1...
[6]  Trying wrongUser06:UserPassword1...

Screenshots

R K

Recent Posts

git fetch vs git pull: How They Work and When to Use Each

Both git fetch and git pull talk to a remote repository, but they do very different things to your…

5 days ago

git cherry-pick Command: Apply Commits from Another Branch

Sometimes the change you need already exists, just on the wrong branch. A hotfix lands…

5 days ago

Best Email APIs for Secure Business Email: Why Developers Are Moving Beyond SMTP

Email is still one of the most important communication channels inside modern applications. Password resets,…

6 days ago

Nginx Commands in Linux: Start, Stop, Reload, Test, and Log

Nginx is a high-performance web server and reverse proxy trusted by some of the largest…

1 week ago

ufw Command in Linux: Manage Firewall Rules with Examples

ufw (Uncomplicated Firewall) sits on top of iptables (or nftables on newer systems) and replaces…

1 week ago

who Command in Linux: Show All Logged-In Users and Sessions

When you share a server with a team or investigate unexpected activity, the first question…

1 week ago