X
这篇文章的共同创作者是 Stan Kats. Stan Kats是一位专业技术员,在美国加州西好莱坞的STG IT咨询集团担任首席运营官和首席技术员。他通过旗下的托管IT服务为企业提供全面的技术解决方案,并通过客户服务业务为个人提供服务。Stan获得了南加州大学的国际关系文科学士学位后,在世界500强IT企业开始自己的职业生涯。之后,他创办了自己的公司,为小型企业及个人提供企业级专业技术。
这篇文章已经被读过17,400次。
本指南介绍如何通过Kali Linux破解WPA或WPA2网络的密码。
步骤
部分 1
部分 1 的 4:
准备工作
-
了解在什么情况下可以合法破解无线局域网。在大部分地区,你只能破解自己的WPA或WPA2网络,或在明确获得同意的情况下破解别人的网络。
- 如果不符合上述条件,破解将被视为非法,甚至可能构成犯罪。
-
下载Kali Linux磁盘镜像。要破解WPA或WPA2网络,首推使用Kali Linux。你可以通过以下方式下载Kali Linux安装镜像(ISO):
- 在电脑浏览器中前往https://www.kali.org/downloads/。
- 找到要使用的Kali版本,然后单击旁边的HTTP。
- 等待文件下载完成。
-
将U盘插入电脑。U盘至少要有4GB的存储空间。
-
将Kali Linux ISO文件复制到U盘上。打开U盘,然后将下载的Kali Linux ISO文件拖曳到U盘窗口中。
- 完成后不要拔出U盘。
-
安装Kali Linux。要在电脑上安装Kali Linux,按以下步骤操作:
- 重启Windows。
- 进入BIOS菜单。
- 找到“启动选项”或类似的选项,选项U盘名称,然后移到列表的顶部,这样就可以从U盘启动电脑了。
- 保存并退出,然后等待Kali Linux安装窗口出现。之后可能还需要再重启一次电脑。
- 按照Kali Linux安装窗口中的提示操作。
-
购买支持监听模式的无线网卡。可以在网上买或去电子商店买。一定要买支持监听(RFMON)的无线网卡,否则无法破解网络。
- 很多电脑内置RFMON无线网卡,在购买前可以先试试下一节中的前四个步骤。
- 如果是在虚拟机上使用Kali Linux,无论电脑本身是否内置了无线网卡,都需要购买RFMON无线网卡。
-
以root用户身份登录Kali Linux电脑。输入root用户名和密码进行登录。
- 整个破解过程都需要root帐户。
-
将无线网卡插入Kali Linux电脑。随后会立即开始安装网卡并下载驱动。如果看到提示,按屏幕上的说明完成安装。完成后,就可以开始进行网络破解了。
- 即使之前曾在电脑上安装过该网卡,插入后仍需要在Kali Linux上重新安装。
- 大部分情况下,只需要将网卡插入电脑就能完成安装。
广告
部分 2
部分 2 的 4:
破解无线局域网
-
打开Kali Linux电脑上的“终端”应用程序。找到并单击“终端”应用程序,图标是一个中间带有白色“$_”图案的黑色方块。
- 也可以按Alt+Ctrl+T来打开“终端”。
-
输入Aircrack-ng安装命令。输入以下命令,然后按↵ Enter:
sudo apt-get install aircrack-ng
-
出现提示时输入密码。输入电脑的登录密码,然后按↵ Enter。这样就可以使用root权限在“终端”中执行命令。
- 如果稍后根据本文中的说明打开了另一个“终端”窗口,可能还需要运行sudo命令和/或再次输入密码。
-
安装Aircrack-ng。出现提示时输入Y,然后等待程序完成安装。
-
开启airmon-ng。输入以下命令,然后按↵ Enter。
airmon-ng
-
找到监听接口名称。它位于“Interface”列中。
- 如果破解的是自己的网络,名称通常是“wlan0”。
- 如果没有看到监听接口,无线网卡可能不支持监听。
-
开始监听网络。输入以下命令,然后按↵ Enter开始监听:
airmon-ng start wlan0
- 将“wlan0”替换为目标网络的名称。
-
启用监听模式接口。输入以下命令:
iwconfig
-
终止返回错误的进程。某些情况下,无线网卡会和电脑上运行的服务冲突。输入以下命令终止这些进程:[1]
airmon-ng check kill
-
复查监听接口的名称。大部分情况下,名称类似“mon0”或“wlan0mon”。[2]
-
让电脑监听附近的路由器。要获取附近的路由器列表,输入以下命令:
airodump-ng mon0
- 将“mon0”替换为上一步中的监听接口名称。
-
找到要破解的路由器。在每一行字符串的末尾都有一个名称,找到要破解的网络名称。
-
确保路由器使用的是WPA或WPA2加密方式。如果在网络名称旁看到“WPA”或“WPA2”,可以继续下一步骤,否则就无法破解网络。
-
记住路由器的MAC地址和信道号。这些信息在网络名称的左侧:
- MAC地址——它是路由器所在行最左侧的一串数字。
- 信道——它是WPA或WPA2标记左侧的数字,比如0、1、2等。
-
监听所选网络以抓取握手包。有设备连接网络时就会发生“握手”,比如电脑连接路由器时。输入以下代码,注意将命令中的以下部分替换为网络的实际信息:
airodump-ng -c channel --bssid MAC -w /root/Desktop/ mon0
- 将“channel”替换为上一步中找到的信道号。
- 将“MAC”替换为上一步中找到的MAC地址。
- 将“mon0”替换为实际的接口名称。
- 以下为地址示例:
airodump-ng -c 3 --bssid 1C:1C:1E:C1:AB:C1 -w /root/Desktop/ wlan0mon
-
等待握手。看到屏幕右上角出现“WPA handshake: <Mac地址>”的提示后,继续下一步。
- 如果不想等待,可以使用Deauth攻击强行握手,然后再继续下一步。
-
退出airodump-ng,然后打开桌面。按Ctrl+C退出,检查电脑桌面上是否有“.cap”文件。
-
重命名“.cap”文件。改名的目的是方便你稍后找到它,但也可以不改。输入以下命令更改名称,注意将“name”替换为期望的名称:
mv ./-01.cap name.cap
- 如果“.cap”文件的当前名称不是“-01.cap”,将它替换为实际的名称。
-
将“.cap”文件转换为“hccapx”格式。可以使用Kali Linux的转换工具来转换。输入以下命令,注意将“name”替换为文件名称:
cap2hccapx.bin name.cap name.hccapx
- 还可以前往https://hashcat.net/cap2hccapx/,然后单击 Choose File(选择文件)将“.cap”文件上传到转换工具。完成后,单击Convert(转换)进行转换,将转换的文件下载到桌面,然后继续下一步。
-
安装naive-hashcat。你将它用来破解密码。按顺序输入以下命令:
sudo git clone https://github.com/brannondorsey/naive-hashcat cd naive-hashcat curl -L -o dicts/rockyou.txt https://github.com/brannondorsey/naive-hashcat/releases/download/data/rockyou.txt
- 如果电脑上没有独显,需要改用aircrack-ng。
-
运行naive-hashcat。安装完成后,输入以下命令,注意将所有“name”替换为“.cap”文件的名称:
HASH_FILE=name.hccapx POT_FILE=name.pot HASH_TYPE=2500 ./naive-hashcat.sh
-
等到网络密码破解完成。密码被破解后,“naive-hashcat”目录下的“name.pot“文件中会多出一个字符串,字符串中的最后一个分号后的文字或短语就是密码。
- 破解密码所需的时间从几小时到几个月不等。
广告
部分 3
部分 3 的 4:
在没有独显的电脑上使用Aircrack-Ng
-
下载字典文件。最常用的是“Rock You”。可以输入以下命令下载它:
curl -L -o rockyou.txt https://github.com/brannondorsey/naive-hashcat/releases/download/data/rockyou.txt
- 注意,如果WPA或WPA2密码不在字典里,aircrack-ng就无法破解。
-
通过aircrack-ng破解密码。输入以下命令,根据需要替换以下网络信息:
aircrack-ng -a2 -b MAC -w rockyou.txt name.cap
- 如果破解的不是WPA2网络,而是WPA网络,将“-a2”替换为-a。
- 将“MAC”替换为上一节中找到的MAC地址。
- 将“name替换为“.cap”文件的名称。
-
等待“终端”显示结果。如果看见“KEY FOUND!”标题,就代表aircrack-ng找到了密码。密码显示在此标题右侧的括号中。广告
部分 4
部分 4 的 4:
使用Deauth攻击强制握手
-
1了解Deauth攻击的机制。Deauth攻击会向你尝试破解的路由器发送恶意的取消身份验证包,从而造成网络断线并要求用户重新登录。一旦用户登录,你就能获得握手包。
-
监听网络。输入以下命令,根据需要输入网络信息:
airodump-ng -c channel --bssid MAC
- 比如:
airodump-ng -c 1 --bssid 9C:5C:8E:C9:AB:C0
- 比如:
-
等待设备连接网络。看到两个连续的MAC地址以及包含生产商名称的字符串后,继续下一步。
- 这表示已有客户端连接网络,比如电脑。
-
打开新的“终端”窗口。按Alt+Ctrl+T就可以打开。在原本的“终端”窗口中继续运行airodump-ng。
-
发送Deauth包。输入以下命令,注意将以下部分替换为实际的网络信息:[3]
aireplay-ng -0 2 -a MAC1 -c MAC2 mon0
- “2”是指发送的数据包数量。可以增加或减少,但要注意,超过2个包可能会让对方察觉到有人在入侵。
- 将“MAC1”替换为原“终端”窗口底部最左侧的MAC地址。
- 将“MAC2”替换为原“终端”窗口底部最右侧的MAC地址。
- 将“mon0”替换为电脑最初搜索路由器时找到的接口名称。
- 以下是命令示例:
aireplay-ng -0 3 -a 9C:5C:8E:C9:AB:C0 -c 64:BC:0C:48:97:F7 mon0
-
重新打开原“终端”窗口。在发送deauth包后,返回原“终端”窗口。
-
搜索握手包。在找到“WPA handshake: <地址>”后,继续破解网络。广告
小提示
- 在启动服务器前,用此方法测试无线局域网中的漏洞,这样可以预防类似攻击。
广告
警告
- 擅自破解其他人的无线局域网在大部分国家都是违法行为。只能对自己的网络,或明确同意你测试的网络执行上述步骤。
- 发送两个以上的Deauth包可能会造成目标电脑崩溃,这样会让对方起疑。
广告
参考
关于本wikiHow
广告