• 沒有找到結果。

PEAP (Protected EAP)

在文檔中 無線網路安全之研究 (頁 50-55)

第四章 廠商獨家規格(Proprietary Solutions)

4.2. PEAP (Protected EAP)

PEAP , 即 Protected EAP 。 是 一 個 認 證 的 協 定 , 用 來 結 合 802.1x/EAP 的機制以提供更安全的無線網路環境[26]。由於原本的 802.1x/EAP 安全機制由於只提供 MD5、TLS 等等的認證方式,它有 以下幾項缺點:

l 安全性問題

使用者的證明或 EAP 型態的資料並沒有被保護,這會造成有心人 士可能在封包中塞入一個比較不安全的 EAP 型態,另外使用者的身份 證明也是以明文的方式在 EAP 的協定中交換。

l 認證延遲的問題

當使用者從某個無線網路設備漫遊至另一個無線網路設備時,原 有的 EAP 型態需要執行整個認證的程序,這會造成應用程式的延遲還 有連線失敗的問題。

Wi-Fi 組織建議使用 PEAP 以提供下列幾項功能:

l 使用者認證

l AP 與客戶端的雙向認證

l 為 WEP 或 TKIP 產生動態金鑰

PEAP 需要三個元件組成:第一是 TLS 的 Radius 認證伺服器(例 如 Windows 2000 伺服器版本或是其他第三方的認證伺服器);第二是 802.1x 相容的 AP;第三是 PEAP 的客戶端軟體。

4.2.1. PEAP 架構

PEAP 是由 Microsoft、RSA Security 與 Cisco 公司所支援的一項 IETF 草案,它跟 Funk Software 公司所推出的 EAP-TTLS 大同小異。

PEAP 使用 TLS 加上一層保密層於 EAP 型態之上,這個 TLS 層是用 來保護 EAP 認證訊息的完整性。

無線網路中的 PEAP 需要三個軟體和硬體的元件來實作之,請參 考下圖 16。首先客戶端必須安裝 PEAP 的客戶端軟體,透過這個軟體 連上證明者,這個證明者就是 PEAP-enable AP 或是無線網路交換器,

人,直接客戶端認證成功後,才能經由證明者上網。另外認證伺服器 也必須支援 RADIUS、EAP 以及 TLS 的服務以驗證經由證明者轉送過 來的使用者身份證明。

圖 16 PEAP 架構與組成元件

4.2.2. PEAP 運作方式

PEAP 安全機制分成兩個階段來完成認證的程序以傳送加密的網 路資料。其流程請參考圖 17。

PEAP Phase 1PEAP Phase 2

圖 17 PEAP 運作流程

第一階段

在第一階段中,證明者會使用 TLS 交握協定與客戶端建一個加密 通道,底下是這個階段的流程:

客戶端先傳送一個訊息給後端的 EAP 伺服器,告知客戶端欲連接 無線 AP。這個訊息告知伺服器一個新的連線應該要被初始化。此外客 戶端也要告知自己所支援的加密演算法,如此一來在伺服器與客戶端 兩邊才能瞭解所傳送的加密訊息。

伺服器在接收到初始訊息後,傳送一個回應給客戶端,其中包含 一個新的工作階段 ID、所支援的演算法列表以及一個伺服器的公開金

鑰憑證。客戶端透過這個憑證才能得知自己的所連線的 AP 是網路上合 法的無線設備。伺服器選擇一個由客戶端提出的加密演算法。PEAP 不需要實作 TLS(RFC 2246)中所列出的加密演算法,但是為了相容性 的問題,PEAP 客戶端與證明都必須支援下列兩種加密演算法:

l TLS_RSA_WITH_RC4_128_MD5 l TLS_RSA_WITH_RC4_128_SHA

客戶端會使用事先預存的根憑認來驗證伺服器所提出的憑證,驗 證後可得伺服器的公開金鑰,利用這組金鑰來加密一組秘密金鑰,最 後把這個加密的訊息回應該給伺服器端。

如果伺服器可以解開這個回應訊息,表示客戶端被合法地授權。

因為只有伺服器的秘密金鑰可以解開由公開金鑰所加密的訊息。

在這最後的交換訊息之後,AP 的認證算是完成,一個加密的 TLS 通道也會被建立起來以保護使用者的認證證明,這個認證證明會被傳 送到第二階段。

另外 PEAP 跟 EAP 最大的不同之處在於,最後成功與失敗的封包 是被封裝於 TLS 通道之中的,這樣一來可以防止有心人士將其偽造。

因為一個偽造的失敗封包會讓客戶端連線失敗。一個偽造的成功封包 會讓客戶端連線到一個非法的 AP。

第二階段

如果在第一階段中已經成功地建立了一個 TLS 通道,第二階段就 是另一個完整的 EAP 流程,這個流程會在第一階段的 TLS 加密通道中 來進行。這樣的方式可以確保第二階段的 EAP 訊息都在通道中被加密 來傳輸,加密後的訊息使得使用者的 EAP 認證訊息被安全地傳送,這 些訊息包括密碼、智慧卡或是數位憑證等等。以下即是第二階段中的

EAP 流程:

1. AP 與客戶端之間會交換受到 TLS 所保護的挑戰與回應訊息。

這可以防止封包被偷聽以及修改。

2. 認證伺服器選擇一個 EAP 認證的型態,這個型態可以是 EAP-MD5 或是 EAP-TLS 等等。客戶端可以回應 NAK 訊息給 伺服器,告知伺服器選擇另一個 EAP 型態來做認證。這個 NAK 訊息也會在 TLS 的加密通道中被加密然後傳送出去,以防封 包被偷聽或修改。這使得攻擊者無法得知客戶端與伺服器之間 是使用何者 EAP 型態進行認證。

3. 整個 EAP 流程繼續進行,直到客戶端收到成功或失敗的封包。

4. 當客戶端收到成功或失敗的封包後,TLS 的加密通道即被客戶 端及伺服器所中止。

另外 TLS 也提供了一個連線重建的機制,可以讓使用者在漫遊到 另一個新的 AP 時快速地重新認證。只要 session ID 仍然合法,客戶 端及伺服器就可以使用舊的密鑰來進行交握(handshake),確保整個連 線持續及安全。

下表為各種 EAP 認證型態的比較:

表格 6 各種 EAP 型態的認證方式比較

EAP 認證型態 802.1x/EAP 應用 雙向認證 資料加密

EAP-MD5 Yes No No

EAP-TLS Yes Yes Yes

LEAP Yes Yes Yes

EAP-TTLS Yes Yes Yes

PEAP Yes Yes Yes

在文檔中 無線網路安全之研究 (頁 50-55)