Pwnagotchi 實戰操作:WPA2 握手封包捕獲與破解流程解析

Published on: | Last updated:

嗯...今天要來聊聊那個,那個叫 Pwnagotchi 的小東西。之前可能有人看過怎麼組裝,用樹莓派 Zero 2 W 還有電子紙螢幕什麼的。但...組好之後呢?它到底能幹嘛?它不是一個...你知道的,養來好看的電子寵物而已。

它其實是一個...嗯,一個滿有意思的工具,可以拿來測試 Wi-Fi 的安全性。今天就想來走一遍,從它抓到 Wi-Fi 的「握手」訊號,然後...我們怎麼把這個訊號拿出來,試著破解密碼。這整個過程,其實...還蠻讓人有點不安的。

一句話結論

簡單講,Pwnagotchi 會被動地「聽」附近有沒有裝置在連 Wi-Fi,然後把那個認證過程(也就是 WPA2 handshake)存下來。接著你就能把這個紀錄檔拿到自己的電腦上,用字典檔去跑,看看密碼能不能被猜出來。整個目的不是教人怎麼當駭客,而是要讓大家親眼看看,一個不夠強的密碼,到底有多容易被破解。

在開始之前,先聊聊風險跟法律問題

這一步,我覺得比後面任何技術細節都重要,所以放最前面。做這種測試...嗯,是有法律風險的。很多人會看到國外教學說,這是「道德駭客」或「資安研究」,然後就覺得好像沒問題。但在台灣,狀況不太一樣。

國外,像是美國,他們可能對「學術研究」的界線比較模糊。但在台灣,我們有《通訊保障及監察法》,裡面規定得很清楚,你不能隨便去「監察」別人的通訊。你去擷取人家 Wi-Fi 的封包,即使只是 handshake,都已經走在一個非常...非常危險的灰色地帶,甚至可以說是違法的。

所以,千萬記得:所有這些測試,都只能、也只應該在你「自己擁有」的 Wi-Fi 網路上進行。拿你家的網路來測,OK。但你不能拿著 Pwnagotchi 去咖啡廳、去鄰居家門口跑。那絕對不行,被抓到...後果會很嚴重。這不是開玩笑的。

我的實驗環境:一台 Pwnagotchi 和一台筆電
我的實驗環境:一台 Pwnagotchi 和一台筆電

怎麼做?從抓檔到破解的過程

好,假設你已經在「自己的」網路環境下,讓 Pwnagotchi 跑了一陣子。它那個可愛的小臉可能已經顯示它抓到一些 handshakes 了。那下一步呢?

第一步:把 handshake 檔案從 Pwnagotchi 拿出來

Pwnagotchi 會把抓到的 handshake 存成 `.pcap` 檔案,放在 `/root/handshakes/` 這個路徑底下。我們得把它弄到我們自己的電腦上才能分析。最直接的方式是用 SCP (Secure Copy Protocol)。

聽起來很專業,但它...其實就是一個在指令列裡用的安全版「複製貼上」。

你得先用 SSH 連上 Pwnagotchi,通常 IP 是 `10.0.0.2`。連上去之後,你可以先用 `ls /root/handshakes/` 這個指令看看裡面是不是真的有檔案。有的話,再回到你自己的電腦終端機,用 SCP 指令把它抓下來。


# 這是在「你自己的電腦」上執行的指令,不是在 Pwnagotchi 裡面
scp pi@10.0.0.2:/root/handshakes/*.pcap ~/Desktop/handshakes/

這個指令的意思就是...嗯...從 `10.0.0.2` 這台機器的 `/root/handshakes/` 資料夾裡,把所有 `.pcap` 結尾的檔案,都複製到我桌面上的 `handshakes` 資料夾。路徑你可以自己改。

第二步:轉換檔案格式,讓 Hashcat 看得懂

你現在拿到 `.pcap` 檔了。但這個檔案...嗯,它是一個很原始的網路封包紀錄。如果你想用 Hashcat 這個超強的密碼破解工具去跑,它看不懂。你得先「轉檔」。

就像...你想用 Word 開 PDF,有時候得先轉檔一樣,概念是類似的。我們要把它轉成 Hashcat 專用的 `.22000` 格式。

有兩種方法:

  • 線上工具:最簡單,去 Hashcat 官網找 `cap2hashcat` 這個線上服務。上傳你的 `.pcap`,它就會給你轉換好的 `.22000` 檔。優點是超級方便。缺點是...你把你的 handshake 檔(即使是自己的)上傳到別人的伺服器了。有資安顧慮的話,可能要考慮一下。
  • 離線工具:用 `hcxtools` 這個工具包裡的 `hcxpcapngtool`。這個比較專業,也比較安全,因為所有操作都在你自己的電腦上完成。指令大概長這樣:
    
    hcxpcapngtool -o myhash.22000 your_handshake.pcap
    

    它會把 `your_handshake.pcap` 轉成 `myhash.22000` 這個檔案。我個人...嗯,我自己是比較偏好用離線工具啦,感覺...資料不離身,總是比較安心。

概念示意:攔截空中的 Wi-Fi 握手封包
概念示意:攔截空中的 Wi-Fi 握手封包

第三步:用 Hashcat 開始「猜」密碼

終於到最後一步了。這一步就是暴力破解。嗯...也不是真的暴力,比較像是「字典攻擊」。你需要準備一個「字典檔」,就是一個文字檔,裡面列滿了你猜測的密ma...密碼。一行一個。

為了測試,你可以自己做一個小的字典檔,然後把你真正的 Wi-Fi 密碼放在其中一行。或者,你也可以去網路上抓有名的字典檔,像是 `rockyou.txt`,裡面有幾百萬個常用密碼。

然後,打開終端機,切換到你 Hashcat 的資料夾,執行指令:


# 在 Windows 上可能長這樣
hashcat.exe -m 22000 C:\path\to\myhash.22000 C:\path\to\wordlist.txt --force

這裡的 `-m 22000` 是在告訴 Hashcat,我們要破解的是 WPA2。然後依序給它 hash 檔案跟字典檔的路徑。`--force` 是因為有時候 Hashcat 會因為驅動程式之類的問題囉唆,加上去可以強制它跑。

如果你的字典檔裡有正確的密碼,跑一陣子之後,Hashcat 就會把它顯示出來。那一刻,你大概就會感覺到...嗯,背脊一陣發涼。

CPU vs. GPU,速度差多少?

說到破解,用電腦的 CPU 去跑...跟用顯示卡(GPU)去跑,那個速度是天差地遠。我整理了一下,大概是這種感覺:

破解方式 速度與感受 適合情境
用 CPU 硬跑 慢到懷疑人生。像在...用湯匙挖隧道。可能跑一整天,進度條都沒動靜。真的不誇張。 嗯...老實說,幾乎不適合。除非你只是想驗證一下指令能不能跑,然後你的密碼是 `12345678`。
用 GPU 加速 (Hashcat) 這才是正途。速度快上百倍甚至千倍。有一張還可以的遊戲顯卡,跑起來就很有感。你會看到它每秒嘗試幾萬、幾十萬次密碼。 基本上,所有正經的密碼破解測試都是用 GPU。這也是為什麼遊戲玩家的電腦,某方面來說也是駭客工具箱...
用雲端服務 終極武器。你可以租用 AWS 或 Google Cloud 上有好多張頂級 GPU 的主機。那個速度...嗯,就是用錢換時間。非常非常快,但也非常燒錢。 專業的滲透測試團隊、執法單位,或是...錢太多的資安研究者吧。一般人玩玩,用自己的 GPU 就很夠了。
GPU 加速的效果,視覺化比較
GPU 加速的效果,視覺化比較

常見錯誤與修正

在做的過程中,你很可能會遇到一些問題。很正常。這裡列幾個我...嗯,我看過別人常卡的點。

  • Pwnagotchi 都抓不到 Handshake?
    這很常見。第一,要有耐心。有時候要等很久。第二,地點很重要。把它放在家裡 Wi-Fi 路由器附近,然後讓你的手機斷開 Wi-Fi 再重連,製造一個 handshake。第三,如果你的環境太「乾淨」,附近都沒什麼裝置在活動,那自然就抓不到。
  • SCP 指令失敗,連不上?
    最常見的原因是 IP 錯了。Pwnagotchi 的 IP 會變,不一定是 `10.0.0.2`。你需要先 SSH 進去,用 `ifconfig` 之類的指令確認一下它現在的 IP。不然就是防火牆擋住了。
  • Hashcat 執行就報錯?
    十之八九是 GPU 驅動程式的問題。Hashcat 對驅動版本很敏感。去官網看一下你用的 Hashcat 版本需要哪個版本的 NVIDIA 或 AMD 驅動,然後...更新它。不然就是 `-m` 後面的模式代碼打錯了,要確定是 `22000`。

所以,到底怎麼防?

看了上面這些,應該會覺得毛毛的。那...怎麼辦?

其實方法也不難,只是大家常常懶得做。

首先,如果你的路由器支援 WPA3,馬上打開它。WPA3 用了一種叫做 SAE(Simultaneous Authentication of Equals)的新的交握方式,它讓這種「離線破解 handshake」的攻擊變得...嗯,幾乎不可能。這是最重要的防禦。

再來,如果你的設備還很舊,只能用 WPA2,那密碼的長度跟複雜度就是一切。不要用生日、電話、英文單字。最好是用密碼管理器產生一串又長又亂的,像是 `kR8$z!pW@9#Jb2&N` 這種。這種密碼,就算是用 GPU 加速,字典檔要跑到天荒地老才可能猜中。

最後,把路由器的 WPS (Wi-Fi Protected Setup) 功能關掉。那個按一下就能連的功能,雖然方便,但它有自己的漏洞,是另一個攻擊的破口。最好是關掉。

我自己是覺得,這個實驗...它的價值不在於你學會了怎麼用 Hashcat。它的價值在於,它讓你深刻體會到,一個「方便」的弱密碼,就像是把你家大門的鑰匙,藏在門口的腳踏墊下面一樣。真的很不安全。


看完這個過程,你第一個想檢查或調整你家 Wi-Fi 的設定是什麼?是想馬上換成 WPA3,還是先換個超長的密碼?在下面留言分享一下你的想法吧。

Related to this topic:

Comments

  1. profile
    Guest 2025-06-21 Reply
    學長,這份Pwnagotchi破解Wi-Fi的教學好猛喔!想請教一下,破解密碼需要準備什麼硬體?聽說要顯卡很厲害,我的筆電能行嗎?感覺好像很酷,但又有點擔心合法性的問題...
  2. profile
    Guest 2025-06-05 Reply
    嘿,這份Wi-Fi滲透指南真的很專業!作為網絡安全研究者,我很欣賞這種技術分享。不過,道德黑客永遠是關鍵,別忘了只在授權環境下操作,安全第一啦!
  3. profile
    Guest 2025-05-11 Reply
    我覺得這篇文章的重點有點片面,強調破解WPA2密碼似乎會引導一些不當行為。與其探討如何攻擊,不如多提倡加強Wi-Fi安全措施,比如使用更複雜的密碼和啟用雙重驗證,這樣才是對大家最有益的方向吧!
  4. profile
    Guest 2025-04-01 Reply
    哎呀~看到這篇介紹Pwnagotchi的文章好專業喔!想問問像我們這種平常只會用手機連WiFi的家庭主婦,如果真的抓到那個什麼WPA2握手檔,用家裡電腦真的能破解密碼嗎?會不會很複雜呀?