Pwnagotchi 是一个由 Bettercap 驱动的 A2C 的“AI”,它能够从周围的 WiFi 环境中学习,以最大限度地利用它捕获的可破解 WPA 密钥材料 (通过被动嗅探或执行解除身份验证和关联攻击)。该材料作为可被 hashcat 破解的 PCAP 文件收集在磁盘上,包括完整和半 WPA 握手以及 PMKID。
简单来说,就是一个能够帮助你捕获附近破解WiFi需要的握手包的工具。它的亮点在于采用了不同的情绪和性格来表示程序当前的状态,会在嗅探握手包时东张西望,会因为没有收到新鲜的握手包而感到无聊,会因为交到新朋友而感到开心,当然了,偶尔也会摸摸鱼…就好像养了一只电子宠物一样。
先按官网要求买一波设备,必备的是带WiFi功能的树莓派主板、8G以上空间的MicroSD卡和一根Micro-USB数据线(不是Type-C),其他的可按需购买。
下面是我选用的硬件配置:
硬件要求实际配置价格备注带WiFi功能的树莓派主板树莓派Zero W带排针250带排针后面可以直接接插脚MicroSD卡8G+闪迪32GB A127.9Micro-USB数据线家里原有的一根不知名数据线0电源UPS-Lite V1.295这个型号支持电源显示I2C时钟DS1307ZN+/SOIC-85.3用于同步时间屏幕微雪2.13英寸电子墨水屏V3118V3官方还没支持,要改源文件合计-496.2不会操作的话,请看MicroSD卡输入系统教程。
完成这一步就可以插入树莓派开机了,但这之前还有可选的一步初始配置,同样可以在读卡器上进行操作,所以别急着拔卡。当然,这些配置以后也是可以修改的。
通过读卡器在SD卡的boot分区根目录下创建一个新的 config.toml的文件。该分区是一个简单的 FAT32,所以基本上所有操作系统都能正常访问。
在此过程中,你可以定义设备名称、要列入白名单的网络以及使用的显示器类型。 以下是带有 Waveshare V2 显示器的设备的示例配置:
main.name = "pwnagotchi"# 给它起一个名字 main.lang = "en"# 语言,暂不支持中文 main.whitelist = [# 白名单设置,防止它攻击家庭网络,值是WiFi名称或MAC地址 "EXAMPLE_NETWORK", "ANOTHER_EXAMPLE_NETWORK", "fo:od:ba:be:fo:od", "fo:od:ba" ] main.plugins.grid.enabled = true# PwnGrid社区选项,类似Pokémon Go,有记分排名,发生一些简单统计数据 main.plugins.grid.report = true# 完全加入选项,会向 PwnGrid API 发送一些网络的基本信息 main.plugins.grid.exclude = [# 类似上面白名单,防止报告家庭网络数据 "YourHomeNetworkHere" ] ui.display.enabled = true# 显示屏设置 ui.display.type = "waveshare_2"# 微雪v2屏幕,也可以设置其他 ui.display.color = "black"# 黑色显示,也支持彩色
123456789101112131415161718这个文件会自动安装到 /etc/pwnagotchi/config.toml(它会在启动过程中将其从 SD 卡中 移除 ) 。
第一次开机后,可以打开 /etc/pwnagotchi/config.toml文件(通过 SSH 或通过带有读卡器的计算机直接编辑 SD 卡的内容)以使用自定义值覆盖默认配置。
更具体的一些配置教程,后面会考虑出。
将MicroSD卡插入树莓派,不会的话看下图。
然后使用Micro-USB数据线将数据传输接口连接到电脑,见下图向右数第二个口。
此时查看指示灯,绿灯闪烁或常亮为正常,闪烁说明是在正常读取内存卡内容。如果是第一次启动,可能要多等几分钟,请不要打断它,因为它正在生成RSA密匙。
Windows系统进入控制面板网络和 Internet网络连接查看,此时正常来说会出现一个新的RNDIS网络,如下图。
没出现这个网络,有可能是你电脑上没有这个驱动,请参考这篇文章进行排查:Windows安装RNDIS驱动教程
请右键唤出菜单,依次点击属性>Internet 协议版本 4 (TCP/IPv4),将它配置成如下静态IP地址:
IP: 10.0.0.1掩码: 255.255.255.0网关:10.0.0.1DNS(如果需要的话): 8.8.8.8(或者别的)然后尝试ping 10.0.0.2,如果通的话接下来就可以访问Web接口或者通过SSH连接了。
浏览器打开10.0.0.2:8080或你之前配置的名称.local:8080,这是会弹出验证对话框,用户名密码都是changeme,然后就进入Web UI界面了。
主页会显示当前的一些状态信息,其他功能请根据官网介绍自行探索。
PowerShell下输入以下命令:
ssh pi@10.0.0.2 # 默认密码: raspberry 1
输入passwd修改初始密码。
配置文件在/etc/pwnagotchi/config.toml,可以根据需要修改。
共享网络Pwnagotchi 的网卡默认用于监听网络,因此如果需要连接到网络,需要将PC的网络共享给它。
通过Web UI的Plugins栏可以直接完成一些插件的操作,启用/禁用、进入插件提供的接口界面。
pwnagotchi 提供了类似 apt 包管理的命令行接口,可以直接使用它完成插件配置,具体用法如下:
用法: pwnagotchi plugins [-h] {search,list,update,upgrade,enable,disable,install,uninstall,edit} ... 位置参数: {search,list,update,upgrade,enable,disable,install,uninstall,edit} search 查找 pwnagotchi 插件 list 列出可用的 pwnagotchi 插件 update 更新插件数据库 upgrade 更新插件 enable 启用某个插件 disable 禁用某个插件 install 安装某个插件 uninstall 卸载某个插件 edit 更改插件选项 可选参数: -h, --help 显示帮助选项并退出
123456789101112131415161718 插件介绍 默认插件默认插件由 pwnagotchi 官方仓库维护,新版可用时会通过 auto-update 插件功能自动更新。
可以在这里看到它们的源文件:https://github.com/evilsocket/pwnagotchi/tree/master/pwnagotchi/plugins/default
有相关使用教程的插件名称会在表格中用超链接标示出来。
插件脚本描述auto-update.py当网络连接可用时,自动执行更新命令apt update && apt upgrade。bt-tether.py使显示器可通过蓝牙访问。gpio_buttons.pyGPIO 按钮支持插件。gps.py每当捕获握手包时保存 GPS 坐标。grid.py向 api.pwnagotchi.ai 上的 PwnGRID 社区发送单元的加密身份和已加密网络列表(可选)。led.py这个插件会根据事件以不同的模式闪烁 PWR led。logtail可以通过浏览器查看日志文件。memtemp.py添加内存和温度指示器。net-pos.py每当捕获到握手时保存 WiFi 位置,并在下次互联网可用时检索地理位置。onlinehashcrack.py自动将握手包上传到 onlinehashcrack.com 。paw-gps.py每当捕获握手时保存 GPS 坐标。 GPS 数据是从 Android 上的 PAW 获取的。session-stats.py以漂亮的小图显示当前会话统计信息。switcher.py可以在一段时间内切换到一些非 pwnagotchi 活动。ups_lite.py一个为 UPS Lite v1.1 添加电压指示器的插件。webcfg.py使用此插件,您可以通过浏览器更改配置。webgpsmap.py在地图上绘制捕获握手。wigle.py自动将收集到的 WiFi 握手上传到 wigle.net 。wpa-sec.py自动将握手上传到 wpa-sec.stanev.org 。 社区贡献的插件这些是用户为 pwnagotchi 贡献的插件,其中一些还没有经过开发团队的完全测试, 使用它们需要自担风险。
这些插件被收录在 pwnagotchi-plugins-contrib 仓库中。
插件脚本描述aircrackonly.py验证 pcap 是否包含足够用于破解的信息(握手包和PMKID) ,否则删除它。auto_backup.py当互联网可用时备份文件。buttonshim.pyPimoroni Button Shim GPIO Button 和 RGB LED 支持插件,基于 pimoroni-buttonshim-lib 和 pwnagotchi-gpio-buttons-plugin。christmas.pypwnagotchi 的圣诞节倒数计时器。clock.pypwnagotchi 的时钟/日历。gpio_shutdown.pyGPIO 关机插件。handshakes-dl.py从 web-ui 下载握手捕获。hashie.py尝试自动将 pcaps 转换为可破解的格式。mostodon.py定期发布状态更新。 基于 evilsocket 的 twitter 插件。quickdic.py针对捕获的握手运行快速字典扫描。screen_refresh.pyX 次更新后刷新电子墨水显示。telegram.py定期向 Telegram 发送有关 pwnagotchi 近期活动的消息。twitter.py创建有关 Pwnagotchi 最近活动的推文。把捕获的握手包拷贝到电脑上,捕获的握手包放在 /root/handshakes/ 上。
转换为 hash 格式。
然后使用 hashcat 进行破解。
这里讲的比较简略,需要的话可以另出教程。
在线破解利用 onlinehashcrack 等提供 WPA 破解服务的网站进行在线破解。
按照你买的屏幕安装教程进行安装,部分屏幕 Pwnagotchi 官方做了支持,只需要在config.toml中ui.display.type指定配置即可。
目前支持:
waveshare_2: 微雪 ePaper HAT V2(官方支持和推荐)waveshare_1:微雪 ePaper HAT V1waveshare27inch:微雪2.7 英寸墨水屏 HAT waveshare154inch:微雪1.54 英寸墨水屏模块 (B) inky:Pimoroni’s Inky pHAT papirus: PaPiRus Zerooledhat:Waveshare’s OLED Hat dfrobot:DFRobot 的 eInk Hat另外,有人做了对微雪2.13寸显示器V3的支持,具体教程见Add support for Waveshare 2.13inch V3 Rev2.1。
屏幕刷新率可通过ui.fps指定,默认为0。
以下是以 微雪 2.13寸 显示器 V2 为例的配置:
ui.display.type = "waveshare_2" ui.display.color = "black" 12
[1] Pwnagotchi官网教程, https://pwnagotchi.ai/
相关知识
吃握手包的电子宠物
潍坊宠物寄存柜,12门电子存包柜生产
宠物握手篇:会握手的猫咪,才是一只好猫咪!让宠物学点小礼仪!
《使命召唤16》范利肯特战兵及电子宠物组合包道具一览
训练宠物狗狗握手击掌教程
狗狗握手怎么教
狗狗握手训练有什么妙招 怎么训练狗狗握手
训练宠物猫和你握手的方法
怎么训练狗狗握手啊?
如何训练猫咪握手
网址: 吃握手包的电子宠物 https://m.mcbbbk.com/newsview310085.html
上一篇: 如何培养小狗的握手技能(宠物喜闻 |
下一篇: 免费的握手Logo设计 |