WEP 加密密碼只要收集到足夠的 DATA (IV 值) 就一定可以破解出來,不過 WPA
加密的密碼就不一定,主要決定於密碼的複雜程度,因此並非一定可以破解出來,
本文中以破解 WPA-PSK (TKIP) 加密方式來進行討論 (也就是大多數無線基站使用
的 WPA 加密方式)。
 
◎破解成功之必要條件
   要能成功破解 WPA 加密密碼一定要具備下列兩個條件,否則是不可能破解出來。
一定要至少有一臺電腦與該無線網路無線基站連線 (也就是使用該
  無線基站連線到 Internet),如此才有可能收集到破解關鍵的握
  手 (HandShake) 資料包。
 
密碼若是又長又複雜,則可能數天、甚至數月都破解不出來。
 
◎破解流程
   破解 WPA 加密密碼的流程很簡單,主要分為兩個階段,首先是不斷髮送
DE-AUTH 訊框 (Frame) 斷開目標無線基站與使用該無線基站電腦的連線,等待該電腦
重新與無線基站連線時獲取握手資料包 (HandShake Packet)。
  在握手資料包中就包含 WPA 加密密碼,因此第二階段則是針對所擷取到握手數
據包中的密碼進行暴力破解 (也就是猜的),由於是猜的,所以能否猜中就要看運氣
了,這也是 WPA 加密密碼比 WEP 加密密碼不易破解的主要原因。
 
◎工欲善其事必先利其器
   由於必須在 Linux 中利用 SpoonWpa 進行破解,所以可到下面網站中下載
BackTrack 3U 盤版光碟版,而且還包含了相關的破解工具,就可以簡單又方便
的在 Linux 中進行,完全不動到你電腦的硬碟與環境。
 
◎步驟 1 獲取無線基站與網路卡資訊
   在 DOS 視窗中使用 ipconfig 命令找出自己無線網路裝置的 MAC 地址。使用
Network Stumbler (或類似的工具) 找出欲破解 WEP 密碼那個無線基站的 MAC 地址
使用頻道…都記下來。
 
◎步驟 2 啟用與設定無線網路裝置 (或網路卡)
   現在用製作好的 BackTrack3 U 盤或光碟啟動進入 Linux 中,然後:
 
使用 ifconfig -a 命令找出自己電腦的那個無線網路裝置的名稱
 (如:eth2、ath1…這樣的名稱)。
使用 macchanger 命令將此無線網路裝置 MAC 地址改為
 00:11:22:33:44:55。
使用 ifconfig 命令啟用此無線網路裝置。
有關 Linux 中各命令列工具的引數說明,可到這裡參考。
 
◎步驟 3 開始破解
   現在就可以在 Linux 中使用 SpoonWpa 來對 WPA 加密密碼進行破解,先找出所
有使用 WPA 加密的無線網路無線基站,然候再選定其中一個來抓取到握手資料包後
就可進行破解。
 
為何無法獲取握手 (HandShake) 資料包?
  依照一般的正常情況下當 SpoonWpa 傳送出 DE-AUTH 訊框***後不久,被選定
的電腦應該就會斷開與無線基站的連線,然後自動再與該無線基站連線,此時
SpoonWpa 就可以擷取到握手資料包,然而在許多情況下都不容易輕鬆、快速的獲取
握手資料包,因此若持續*** 5~10 分鐘,甚至 20~30 分鐘,若還是沒獲取握手數
據包,則只好…繼續等待堅持到底、換個時間再進行或查詢其他無線基站下手。
 
密碼破解關鍵
  WPA 加密密碼破解成功的最大關鍵並不是獲取握手資料包,而是在於運氣字典
檔案
,基本上 SpoonWpa 中預設使用的字典檔案並不算小,大概有 8、9MB,不過既
然用猜的,肯定是不夠的,然而要多大的字典檔案才算夠呢? 這當然是沒有答案,一
般而言若對欲破解無線基站設定密碼的人有某種程度的瞭解,然後針對那個人的生日
、身分證號、英文名、喜好…等,才可能設計出比較有效的字典檔案,或是 WPA 密碼
獲取太簡單才會讓字典檔案有機會猜中,否則有如大海撈針,要猜中實在很困難,不
過若有其他的字典檔案可使用則也可試試。
 
◎步驟 4 連線使用
  現在就可以重啟動進入 Windows 中輸入破解出來的密碼後,就能利用該無線基站
上網…當然是 100% 免費!!
 
◎討論與研究
  使用 SpoonWpa 破解密碼 WPA 並非一帆風順,下面就列出一些常見的狀況與的
處理方式。
 
如果等了許多無法獲取握手資料包,則***可以將無線基站的 MAC
 地址與所有找到電腦的 MAC 地址記下來,換個時間再對該無線基站
 進行破解,就可以直接輸入這些資訊,不必再等 SpoonWpa 找出來。
 
WEP 的破解只要 DATA 可以隨著時間增加而增多,就可以去做其
 他的事而不必管它,但 WPA 的破解必須一定要有電腦與該無線
 基站連線才可進行,因此破解的時間就很重要,例如:該無線基
 站位於住宅區則***通常會選擇晚上或假日進行破解,若是在辦
 公大樓則選擇上班的時候進行破解
…比較不會苦苦等待。
 
除了使用 Spoonwpa 來破解外,還有個常用的方法就是先在
 Linux 下使用 WireShark 擷取欲破解 WPA 加密密碼的握手
 資料包 (可參考擷取無線網路資料包獲取各類帳戶密碼),將
 資料包儲存為檔案後進入 Windows 使用 Cain & Abel 來進
 行破解,由於該工具有完整的暴力破解排列組合,所以可能會
 比 Spoonwpa 使用預設的字典檔案破解成功的概率高一些。
 
有關本文中所討論到的軟體操作與盲區說明請參考:
網路安全講堂 之 Windows 與無線網路***分析及全面防護 Q66