macOS Wi-Fi密码破解抓包方法

注意:本文针对的是 macOS Mojave 不是该系统可能会有些出入。

我们破解 Wi-Fi 密码最好的方法就是先抓 cap 包,然后在使用 aircrack-ng 这种工具去跑字典,暴力破解,成功率主要是看字典强不强大。当然还有其他的方法像跑PIN这种,主要看你的网卡和对方的路由设备,如果对方关了PIN功能就没法用这种方法这里不去探讨。

macOS 自身带了一个非常的好用的 airport 工具。

安装命令

sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport /usr/sbin/airport

如果你使用的是 macOS Mojave 系统,可能会收到操作不允许的提示,好像是内核保护什么鬼,网上有关闭方法,这里我也懒得折腾了,不安装快捷命令直接扫描。

扫描网卡

/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport scan

扫描完成后你会得到类似如下结果

 SSID BSSID             RSSI CHANNEL HT CC SECURITY (auth/unicast/group)
 1007 dc:d7:13:b4:38:6c -68  6      Y  -- WPA(PSK/AES/AES) WPA2(PSK/AES/AES)

抓包

sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport sniff 6

注意:
1.sniff 后面的6要修改成你抓包的信道,可以看CHANNEL中的值。
2.比较操蛋的是该命令在 macOS Mojave 中会出现 Capturing 802.11 frames on en0. 的报错。什么原因目前不清楚,我在 Stack Overflow 看了一下,有人也在反应这个问题,好像是系统问题,以前的老系统就可以用。为了解决这个问题,airport sniff 可能不能用了,有人给出了更好的解决方案,使用 tcpdump 来抓包。

tcpdump 抓包

# capture a beacon frame from the AP
sudo tcpdump "type mgt subtype beacon and ether src $BSSID" -I -c 1 -i en1 -w beacon.cap
# wait for the WPA handshake
sudo tcpdump "ether proto 0x888e and ether host $BSSID" -I -U -vvv -i en1 -w handshake.cap

注意:把 $BSSID 改成你要抓的地址。

抓的包默认会保存在 /Users/username

拿到 .cap 文件就可以挂字典暴力破解了。
我这个人比较懒,不想在本地跑字典,也有很多在线网站可以实现。

推荐
https://gpuhash.me/
https://www.onlinehashcrack.com/wifi-wpa-rsna-psk-crack.php

参考:https://louisabraham.github.io/articles/WPA-wifi-cracking-MBP.html


macOS 下打造完美终端 iTerm2+Oh My Zsh

iTerm2 是 macOS 下公认的最佳默认终端替代品,当然只是安装上的话没有经过任何配置会和系统默认的终端使用无异,本文主要是来记录一下我的配置过程。

先来张效果图
iTerm2+Oh My Zsh

首先我们要安装 iTerm2 下载地址https://www.iterm2.com/

安装好以后我们要把 shell 切换成 zsh
(默认的shell是bash,关于bash和zsh之争网上有很多文章在讲,总结下来就是zsh比bash更优秀)

chsh -s /bin/zsh

使用上面的命令可以把默认的shell改成zsh

接着我们来安装 Oh My Zsh
首先来解释一下 Oh My Zsh 是什么,你可以理解成为是 zsh 辅助工具,因为 zsh 本身过于复杂,而安装 Oh My Zsh 后可以让你做到开箱即用。
Oh My Zsh GitHub https://github.com/robbyrussell/oh-my-zsh

GitHub里的文档给出两种安装方式
方法一 curl

sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

方法二 wget

sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

安装好以后我们要做的就是来配置 Oh My Zsh
配置主要分为两部分,主题和插件
Oh My Zsh 的配置文件名称为 .zshrc 存放在你的用户名文件夹下,是个隐藏文件,你可以用 command+shift+. 这个组合键查看隐藏文件。官方文档中写的编辑方式采用的是 vi 编辑器,需要全部在shell中完成,这里考虑到新手,我们用比较传统的方式,用编辑器直接打开 .zshrc 编辑。

主题配置在11行
Oh My Zsh 自带了多个主题,可以来这里查看
选择你中意的主题,然后修改配置文件的参数。例:我选择的是 agnoster 修改的内容如下

ZSH_THEME="agnoster"

插件配置在65行
Oh My Zsh 自带了很多个实用的插件,可以来这里查看
挑选你需要的插件,当然你也可以安装第三方插件,比如自动补全,我用的是 zsh-autosuggestions
安装方法也很简单,直接克隆到本地

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

不管是自带插件还是第三方插件,你都需要写入配置文件中,写法如下

plugins=(git extract z zsh-autosuggestions)

git这个东西就不用介绍了;extract是一个解压插件,可以让你不用记住各种繁琐的解压命令;z这个插件就比较有意思了,他可以帮你快速的跳转目录,比如你想去home目录,只需要z home 就可以瞬间移动过去;zsh-autosuggestions就是上面写到的自动补全插件。以上就是我启用的几个插件,当然你想启用其他的插件,只需要在配置文件中开启就行。

补充一点:有些主题字体可能不支持,比如我用的 agnoster 主题如果不安装额外的主题,会出现乱码。
Oh My Zsh的文档写了你需要安装 Powerline字体 才能让某些主题显示正常。
安装方法

# 克隆到本地
git clone https://github.com/powerline/fonts.git --depth=1
# 安装
cd fonts
./install.sh
# 清理安装文件
cd ..
rm -rf fonts

以上就是大致的安装过程,具体某些个性化的设置你可以直接打开 iTerm2 的设置自行调整,比如给终端加个背景做个透明化改下配色方案等等,这个靠你自己发挥了。