Trao đổi và xác minh thông tin khóa

Một phần của tài liệu Giải pháp đảm bảo an toàn mạng kho (Trang 50)

CHƯƠNG 3 GIAO THỨC BẢO MẬT MẠNG KHÔNG DÂY CHUẨN IEEE 802

3.3.2.3. Trao đổi và xác minh thông tin khóa

Chúng ta đã mô tả cách máy chủ và thiết bị di động xác thực lẫn nhau, chứng minh danh tính và làm thế nào để thông tin khóa phải được bắt nguồn từ các thiết bị di động và phân phối tới AP. Và thấy các PMK được sử dụng để tạo ra một tập hợp các Temporal Key. Tuy nhiên, một trong những bước quan

trọng nhất chưa xét đến đó là: làm thế nào để các thiết bị di động có thể xác minh rằng các điểm truy cập là hợp pháp. Bởi vì chúng ta đã có thể nói chuyện với các máy chủ thông qua các điểm truy cập, nó có vẻ hợp lý để giả định nó là đáng tin cậy. Tuy nhiên, nó có thể là một điểm truy cập giả danh của các hacker. Vì vậy, theo nguyên tắc bảo mật là ta sẽ không được tin ai nên các điểm truy cập phải chứng minh được thông tin quan trọng của nó.

Đây là nơi mà các yêu cầu cho một kết nối an toàn giữa máy chủ xác thực và các điểm truy cập là rất quan trọng. Một kết nối an toàn đòi hỏi phải được thiết lập giữa các máy chủ và điểm truy cập. Các điểm truy cập chỉ có thể nhận được PMK từ máy chủ thông qua các kết nối an toàn. Vì vậy, nếu AP có thể chứng minh với các thiết bị di động rằng nó có PMK, sau đó chứng minh rằng nó đáng tin cậy bởi máy chủ xác thực, đây là điểm an ninh tin cậy. Vì vậy, các điểm truy cập và các thiết bị di động phải chứng minh với nhau rằng chúng đều có một bản sao của các bí mật PKM.

Ý tưởng mà cả hai bên chứng minh rằng mình sở hữu khóa bí mật cũng là một phần của WEP nhưng nó đã dễ dàng bị lừa và hoàn toàn bị phá vỡ. Trong WPA/RSN, quá trình chứng minh quyền sở hữu khóa kết hợp với quá trình nhận được từ Temporal Key sử dụng trao đổi khóa qua các thông điệp trước khi kết nối có thể được mở. Có 4 bước để thực hiện quá trình này và được gọi là “ bắt tay bốn bước”. Qúa trình trao đổi được thực hiện bằng cách sử dụng thông điệp EAPOL-Key.

Trước tiên, chúng ta sẽ xem xét tổng quan về bắt tay bốn bước và sau đó đi sâu cụ thể hơn. Quá trình bắt tay bốn bước được thực hiện giữa AP và các thiết bị di động (Hình 3.). Trong trường hợp này Authenticator = AP.

Bước đầu tiên là Supplicant và Authenticator cùng tạo ra một giá trị nonce. Không có kết nối giữa hai giá trị - chúng là độc lập với nhau. Tuy nhiên, có những quy định cụ thể về cách thức mà các giá trị này được tạo ra. Giá trị nonce được tạo ra bởi Authenticator được gọi là Anonce và của Supplicant là Snonce. Tiếp theo là việc trao đổi của bốn thông điệp mà chúng ta gọi là A, B, C và D.

Hình 3. Quá trình bắt tay 4 bước

Message (A): Authenticator  Supplicant

Thông điệp EAPOL-Key đầu tiên được gửi từ Authenticator tới Supplicant và chứa Anonce. Thông điệp này không được mã hóa hay được bảo vệ khỏi sự giả mạo. Sự giả mạo với giá trị này chỉ khiến cho quá trình bắt tay bị lỗi vì vậy không nguy hiểm ở đây.

Một khi Supplicant đã nhận được thông điệp A, nó có tất cả các thông tin cần thiết để tính toán Temporal Key. Nó đã có giá trị PMK, giá trị Snonce của riêng mình, địa chỉ MAC và bây giờ nó có giá trị Anonce và địa chỉ MAC của Authenticator. Vì vậy, Supplicant sẽ tính toán bốn Temporal Key đã được mô tả ở phần trên.

Message (B): Supplicant  Authenticator

Authenticator không thể tính toán khóa của nó bởi nó không biết giá trị Snonce. Bây giờ nó gửi bởi Supplicant sử dụng thông điệp B. Thông điệp này không được mã hóa nhưng nó có một điểm đặc trưng mà thông điệp A không có: nó bao gồm một mã toàn vẹn thông điệp MIC để ngăn chặn giả mạo. Đây là sử dụng đầu tiên của toàn vẹn EAPOL-Key, một trong bốn Temporal Key được mô tả trước đó. Sự tính toán của MIC trên toàn bộ thông điệp B ngăn cản bất cứ ai sửa đổi thông điệp mà không bị phát hiện.

Tuy nhiên, quan trọng hơn nó cho phép Authenticator chứng thực rằng Supplicant thực sự biết giá trị PMK. Nếu PMK của Supplicant không phù hợp với PMK, sự kiểm tra của MIC sẽ lỗi. Tất nhiên, Authenticator không tính bất

cứ khóa nào, nhưng vì thông điệp không được mã hóa, nó có thể tách giá trị Snonce đầu tiên ra và sau đó tính toán tất cả Temporal Key và cuối cùng quay trở lại và kiểm tra giá trị MIC trước khi chuyển sang giai đoạn tiếp theo.

Vào lúc này, nửa đầu tiên của trao đổi bốn bước đã hoàn tất. Cả hai bên lúc này đã suy ra được 4 Temporal Key và Authenticator đã xác minh rằng Supplicant phải có giá trị PMK phù hợp. Cho đến này, chưa có bên nào bắt đầu mã hóa.

Message (C): Authenticator  Supplicant

Thông điệp này được gửi bởi Authenticator để báo cho Supplicant rằng nó đã sẵn sàng sử dụng khóa mới cho mã hóa. Điều này rất quan trọng để đồng bộ hóa hoạt động bởi vì, nếu một điểm truy cập hoặc thiết bị di động thực hiện mã hóa trước khi bên kia sẵn sàng, kết nối sẽ bị vỡ. Thông điệp C bao gồm kiểm tra MIC nên Supplicant có thể xác nhận rằng Authenticator có giá trị PMK phù hợp. Nó cũng chứa số thứ tự bắt đầu được sử dụng cho cấu trúc mã hóa đầu tiên được gửi bằng cách sử dụng khóa (thông thường là 0).

Thông điệp này được gửi đi mà không cần mã hóa và Authenticator không cài đặt Temporal Key của nó cho đến khi nhận được thông điệp cuối cùng D. Việc Authenticator chờ đợi để cài đặt các khóa bí mật bởi nếu thông điệp C bị lỗi không đến được Supplicant, Authenticator phải gửi lại thông điệp C. Nếu các khóa được cài đặt quá sớm, quá trình gửi lại sẽ được mã hóa và Supplicant sẽ từ chối nó.

Message (D): Supplicant  Authenticator

Khi Supplicant nhận được thông điệp (C), nó trả lời với thông điệp (D). Điều này thừa nhận hoàn thành quá trình bắt tay 4 bước và chỉ ra rằng supplicant sẽ cài đặt các khóa và bắt đầu mã hóa.Thông điệp này được gửi đi không được mã hóa và sau đó Supplicant cài đặt khóa của nó.Sau khi nhận được, Authenticator cũng cài đặt các khóa của nó vì vậy message tiếp theo đều được mã hóa.

1. ANonce và SNonce giá trị đã được trao đổi. 2. Temporal Key đã được tính toán.

3. Supplicant đã chứng minh sự hiểu biết về giá trị củaPMK . 4. Authenticator đã chứng minh hiểu biết về giá trị củaPMK .

5. Cả hai thiết bị này đã được đồng bộ hóa và bật mã hóa các gói tin unicast.

Một phần của tài liệu Giải pháp đảm bảo an toàn mạng kho (Trang 50)