
綜述
Pwnagotchi 是一個由 Bettercap 驅動的 A2C 的 「AI」,它能夠從周圍的 WiFi 環境中學習,以最大限度地利用它捕獲的可破解 WPA 密鑰材料(通過被動嗅探或執行解除身份驗證和關聯攻擊)。該材料作為可被 hashcat 破解的 PCAP 文件收集在磁碟上,包括完整和半 WPA 握手以及 PMKID。
簡單來說,Pwnagotchi 就是一個能夠幫助你捕獲附近破解WiFi需要的握手包的工具。它的亮點在於採用了不同的情緒和性格來表示程序當前的狀態,會在嗅探握手包時東張西望,會因為沒有收到新鮮的握手包而感到無聊,會因為交到新朋友而感到開心,當然了,偶爾也會摸摸魚......就好像養了一隻電子寵物一樣。
安裝
硬體要求
先按官網要求買一波設備,必備的是帶 WiFi 功能的樹莓派主板、8G 以上空間的 MicroSD 卡和一根 Micro-USB 數據線(不是 Type-C ),其他的可按需購買。
下面是我選用的硬體配置:
硬體要求 | 實際配置 | 價格 | 備註 |
---|---|---|---|
帶 WiFi 功能的樹莓派主板 | 樹莓派 Zero W 帶排針 | 250 | 帶排針後面可以直接接插腳 |
MicroSD 卡8G+ | 閃迪32GB A1 | 27.9 | |
Micro-USB 數據線 | 家裡原有的一根不知名數據線 | 0 | |
電源 | UPS-Lite V1.2 | 95 | 這個型號支持電源顯示 |
I2C 時鐘 | DS1307ZN+/SOIC-8 | 5.3 | 用於同步時間 |
屏幕 | 微雪2.13英寸電子墨水屏V3 | 118 | V3官方還沒支持,要改源文件 |
合計 | - | 496.2 |
Step1-刷入系統
- 下載最新的 Pwnagotchi .img 文件,解壓並驗證 .img 的 SHA-256 校驗和。
- SD卡插入讀卡器連接電腦。
- 使用SD卡刷入工具刷入系統。
不會操作的話,請看MicroSD卡輸入系統教程。
完成這一步就可以插入樹莓派開機了,但這之前還有可選的一步初始配置,同樣可以在讀卡器上進行操作,所以別急著拔卡。當然,這些配置以後也是可以修改的。
Step2-初始配置(可選)
通過讀卡器在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" # 黑色顯示,也支持彩色
這個文件會自動安裝到 /etc/pwnagotchi/config.toml
(它會在啟動過程中將其從 SD 卡中 移除 ) 。
第一次開機後,可以打開 /etc/pwnagotchi/config.toml
文件(通過 SSH 或通過帶有讀卡器的計算機直接編輯 SD 卡的內容)以使用自定義值覆蓋默認配置。
更具體的一些配置教程,後面會考慮出。
Step3-USB連接電腦
將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.1
- DNS(如果需要的話):
8.8.8.8
(或者別的)
然後嘗試ping 10.0.0.2
,如果通的話接下來就可以訪問Web介面或者通過SSH連接了。
Web 介面
瀏覽器打開10.0.0.2:8080
或你之前配置的名稱.local:8080
,這是會彈出驗證對話框,用戶名密碼都是changeme
,然後就進入Web UI界面了。
主頁會顯示當前的一些狀態信息,其他功能請根據官網介紹自行探索。
SSH 連接
PowerShell 下輸入以下命令:
ssh pi@10.0.0.2 # 默認密碼: raspberry
輸入passwd
修改初始密碼。
配置文件在/etc/pwnagotchi/config.toml
,可以根據需要修改。
共享網路
Pwnagotchi 的網卡默認用於監聽網路,因此如果需要連接到網路,需要將PC的網路共享給它。
Step4-插件配置(可選)
使用插件
使用 Web UI 中的插件欄
通過 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 顯示幫助選項並退出
插件介紹
默認插件
默認插件由 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.py |
GPIO 按鈕支持插件。 |
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.py |
Pimoroni Button Shim GPIO Button 和 RGB LED 支持插件,基於 pimoroni-buttonshim-lib 和 pwnagotchi-gpio-buttons-plugin。 |
christmas.py |
pwnagotchi 的聖誕節倒數計時器。 |
clock.py |
pwnagotchi 的時鐘/日曆。 |
gpio_shutdown.py |
GPIO 關機插件。 |
handshakes-dl.py |
從 web-ui 下載握手捕獲。 |
hashie.py |
嘗試自動將 pcaps 轉換為可破解的格式。 |
mostodon.py |
定期發布狀態更新。 基於 evilsocket 的 twitter 插件。 |
quickdic.py |
針對捕獲的握手運行快速字典掃描。 |
screen_refresh.py |
X 次更新後刷新電子墨水顯示。 |
telegram.py |
定期向 Telegram 發送有關 pwnagotchi 近期活動的消息。 |
twitter.py |
創建有關 Pwnagotchi 最近活動的推文。 |
Step5-破解WiFi密碼
本地破解
把捕獲的握手包拷貝到電腦上,捕獲的握手包放在 /root/handshakes/
上。
轉換為 hash 格式。
然後使用 hashcat 進行破解。
這裡講的比較簡略,需要的話可以另出教程。
在線破解
利用 onlinehashcrack 等提供 WPA 破解服務的網站進行在線破解。
可選步驟
安裝屏幕
按照你買的屏幕安裝教程進行安裝,部分屏幕 Pwnagotchi 官方做了支持,只需要在config.toml
中ui.display.type
指定配置即可。
目前支持:
waveshare_2
: 微雪 ePaper HAT V2(官方支持和推薦)waveshare_1
:微雪 ePaper HAT V1waveshare27inch
:微雪2.7 英寸墨水屏 HATwaveshare154inch
:微雪1.54 英寸墨水屏模塊 (B)inky
:Pimoroni's Inky pHATpapirus
: PaPiRus Zerooledhat
:Waveshare's OLED Hatdfrobot
: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"
本文鏈接:http://www.linuxstory.org/pwnagotchi-installation-tutorial/
轉載請註明出處,否則必究相關責任。
350fairfax nordvpn cashback
What’s up to all, because I am really keen of reading this web site’s post to be
updated regularly. It contains good stuff.
Your means of describing everything in this post is in fact good, all can easily be aware of it, Thanks a lot.
my page :: nordvpn coupons inspiresensation (http://cfg.me/nordvpn-coupons-inspiresensation–98798)
Hi there to every one, because I am actually eager
of reading this blog’s post to be updated daily. It contains fastidious information.
my web site: nordvpn coupons inspiresensation (https://t.co)
What’s up, I want to subscribe for this web site to get newest
updates, therefore where can i do it please
help out.
Feel free to surf to my webpage … Nordvpn Coupons Inspiresensation
I think that is one of the such a lot vital info for me.
And i am happy reading your article. But should remark on some normal issues, The
web site style is ideal, the articles is actually excellent : D.
Good task, cheers
Visit my web page: nordvpn coupons inspiresensation