[本文部分内容涉及攻击性,仅供研究交流,请勿恶意利用。]
相信想要进行无线破解的同学一定听说过 Aircrack-ng 这个套件。而这个套件能很好的运行在 N900 上,我们怎样才可以在 N900 上进行无线破解呢,好好看看接下来要做的事。
为了顺利的进行无线破解,我们需要先刷新手机的内核(使用 power 内核),现在 power 内核已经更新到 power52 了,不但可以顺利超频,而且包含了可注入的网卡驱动,这是我们无线破解的必备条件。(注意,刷新内核有一定危险性)
我们要先在程序管理器添加 Meamo 的源,源就自己上网找这里不再阐述了,添加完更新完数据就打开终端,输入以下命令。
root
apt-get install kernel-power-flasher  

安装完先不要急着重启,继续。
apt-get install kernel-power-bootimg  

安装完就输入reboot重启手机吧。
重启过后我们就开始继续安装破解需要使用的工具,首先我们要安装 Aircrack-ng。你可以使用以下命令安装:
apt-get install iw wireless-tools
如果遇到 apt-get 提示无法找到安装源的时候,可以到Maemo官方源 上搜索并下载 Deb 包(下载带 fremantle 字样的),使用 dpkg 命令安装(跟 Debian 一样)
dpkg -i xxxx.deb
安装软件的时候因为某些软件依赖一些组件运行,比如 Aircrack-ng 需要 Wireless-tools 和 iw。所以使用 apt-get 命令安装的时候它提示缺少哪几个组件你就用命令安装哪几个组件先,然后再安装你想要的软件。若是使用离线安装包的话,安装完成后你可以使用这个命令来安装依赖的组件:
apt-get -f install
安装完成之后再安装一次 Deb 包就可以了。
安装好 Aircrack-ng 之后我们就安装 Cleven 和 macchanger,前者是一个 Aircrack-ng 和 reaver 的 GUI 界面,后者是修改 MAC 地址使用的,既然是搞科技,当然就别用真的 MAC 地址。

macchanger -r wlan0
我们也可以用 Cleven 直接加载注入驱动以及修改 MAC 地址。

注入驱动我们是必须要加载的,所以我建议用 Cleven 一步到位,修改 MAC 地址以及加载驱动。
然后我们就可以利用 Aircrack-ng 套件来开始进行无线破解。
打开 XT,输入命令
airodump-ng wlan0
现在我们就可以看到附近的无线网络以及相关信息了。为了简化破解教程,我自己搭建了一个临时的无线网络用来测试使用,就是下图中的这唯一一个无线网络。
附近的无线网络
我们可以看到,这个无线网络是第 6 信道的,并且有一个客户端在连接着,有无客户端是破解 WPA/WPA2 网络的关键。既然锁定目标,我们就可以开始进行破解。
按下 Ctrl+C 停止当前的扫描,输入以下命令。

airodump-ng --ivs --bssid 20:DC:E6:52:86:DC -c 6 -w pojie wlan0
解释一下参数:
--ivs 这是表示只捕捉有关验证的报文,默认不使用这个参数会生成包含所有无线数据的 cap 文件,但这样体积会非常的大,既然我们只是对密码感兴趣,那就不必再捕捉其他的内容了。
--bssid XX:XX:XX:XX:XX:XX 这是代表那个准备破解的无线网络的 MAC 地址,我这里是为了排除干扰所以才只有一个无线网络,但现实中很可能有许多网络在身边,这样我们就需要指定某个无线网络。
-c 6 因为我们要破解的无线网络是在第 6 信道的,所以我们要指定这个信道,否则 airodump-n g会逐个信道扫描,影响后续的破解。
-w 文件名前缀 我们需要将数据保存在文件中,这个参数就指定了保存的文件的前缀,如 pojie,就会生成 pojie-01,pojie-02 之类的文件。
运行命令之后,就会开始捕捉验证报文了。

破解原理就是一直监视路由器的数据,如果现在有一台手机想要连接上去的话,他就会跟路由器进行握手,而我们也就可以截取他们握手的数据,然后就可以利用验证报文进行密码破解。可要是一直没人去连接呢?刚刚我们不是说过,现在已经有一个客户端在使用路由器,看看旁边的信号就可以看得出这个客户端是正在浏览网络的(0-1 表示网络处于休眠,可能已经是没有连接的了,其他的都是正在使用)。我们为什么不尝试让这个客户端断线然后重新连接呢?这样我们就可以捕捉到数据了。
这就需要用到 Aircrack-ng 里面的另一个工具 —— aireplay-ng
我们可以伪造一个解除验证的数据包,发送到当前的无线网络中,客户端一旦接收到就会断开连接。说白了就是骗那个客户端说,路由器让你现在断开网络先,他很天真的相信了于是就自己断开网络了,可用户还在上网啊,马上又会重新连接上路由器,这时我们就截取到验证报文了。
我们新建一个 XT 窗口,记住是新建,原来的不要关掉,不然你就抓不到验证报文了。输入以下命令
aireplay-ng -0 9 -a 20:DC:E6:52:B6:DC -c F8:A4:5F:92:4C:2E wlan0  

再来解释下参数:
-0 9 这是表示使用的攻击模式以及次数,-0 就是解除验证攻击,我们选择攻击 9 次(0 代表无限次),你要是无限攻击的话,客户端就会一直连不上路由器的了,这无法达到目的,我们只是想伪装成断线,9 次甚至 5 次即可。
-c XX:XX:XX:XX:XX:XX 这是客户端的 MAC 地址(client 的首字母)。
-a XX:XX:XX:XX:XX:XX 这是路由器的 MAC 地址(AP 的首字母)。
运行命令之后,就开始攻击了,我们可以看到发送了许多数据包,而 airodump-ng 那里也可以看到数据包数量急速上升。

运气好的话,不一会就可以看到 airodump-ng 窗口右上角显示捕捉到握手包(验证报文)了。

这时我们就可以按 Ctrl+C 停止监视了。
抓到包之后就可以使用 aircrack-ng 来进行跑字典。使用以下命令
aircrack-ng -w 字典文件 xxxx-01.ivs
填写文件名的时候,可以按屏幕上的 Tab 键自动填充。但用 N900 这 600 mHz 的 CPU 跑包实在是有点勉强,可以的话还是用电脑跑吧,毕竟 N900 只是拿来方便抓包而已,这么低功耗,插着电源开个几天没问题啊。
我在 Android 设备上 loop 运行了 Debian 的 ARM 版,随身跑个弱口令包还是没问题的。均衡模式下只开一半 CPU 可以有 120 个/s 的速度(N900 才 40 个/s),跑弱口令字典也就几分钟的事。