CHƯƠNG 3 : CÁC LỖI DỄ BỊ TẤN CÔNG MỚI TRONG WIMAX
3.2. CÁC DẠNG TẤN CÔNG MỚI TRONG WIMAX
3.2.2. Tấn công vào bản tin chứng thực lỗi (Auth Invalid)
Chúng ta đã biết việc tấn công vào bản tin từ chối chứng thực không được nhưng cỗ máy trạng thái chứng thực vẫn cịn lỗi dễ bị tấn cơng và chúng ta sẽ xem xét việc lợi dụng các lỗi đó như thế nào. Cỗ máy trạng thái chứng thực là một phần của quản lý khoá bảo mật (PKM). Nó sử dụng hai bản tin quản lý MAC: PKM-REQ và PKM-RSP. SS sẽ gửi PKM-REQ tới BS và BS đáp lại bằng bản tin PKM-RSP. Bảng 3.3: Định dạng bản tin PKM Kiểu bản tin quản lý Mã bản tin(8bit) Bộ nhận dạng PKM (8bit) Các thuộc tính PKM 9=PKM-RSP 10=PKM-REQ Nhận dạng kiểu bản tin PKM Chỉ số của bản tin
Thay đổi theo như kiểu của bản tin Trường mã bản tin là một trường 8 bit xác định chính xác kiểu bản tin PKM. Nếu một bản tin có mã khơng hợp lệ thì bản tin đó sẽ bị bỏ.
Bảng 3.4: Mã bản tin PKM
Mã Kiểu bản tin PKM
0-2 Dự trữ
3 Thêm liên kết bảo mật (SA Add)
4 Yêu cầu chứng thực (Auth Request)
5 Đáp lại chứng thực (Auth Reply)
6 Từ chối chứng thực (Auth Reject)
7 Yêu cầu khoá (Key Request)
8 Đáp lại khoá (Key Reply)
9 Từ chối khố (Key Reject)
10 Chứng thực khơng hợp lệ (Auth Invalid)
11 Khố TEK khơng hợp lệ (TEK Invalid)
12 Thông tin chứng thực (Auth Info)
13-255 Dự trữ
Bộ nhận dạng PKM là một trường 8 bit đóng vai trị như một chỉ số. Mỗi lần SS gửi đi bản tin PKM-REQ, bộ nhận dạng PKM tăng thêm một đơn vị. Khi BS đáp lại bằng bản tin PKM-RSP thì bao gồm cả bộ nhận dạng của bản tin tương ứng. Nếu SS nhận bất kỳ bản tin với bộ nhận dạng khác so với yêu cầu đang chờ đáp lại thì SS sẽ lờ nó đi.
Trường thuộc tính PKM thay đổi theo kiểu bản tin PKM. Trường này thông thường chứa thông tin mở rộng như các mã lỗi, thời gian sống của khoá và các chuỗi chỉ thị. Ví dụ trong bản tin SA Add (với mã là 3) thì trường thuộc tính PKM chứa chỉ số khố AK và danh sách các bản mơ tả SA.
Nhìn bảng ở trên chúng ta thấy được có 4 bản tin viết nghiêng đó là 4 bản tin PKM khác nhau: Auth Reject, Key Reject, Auth Invalid và TEK Invalid. Bốn bản tin này được chọn vì chúng rất dễ bị tấn cơng trong quá trình chứng thực
SS. Sử dụng một trong bốn bản tin này có thể tạo ra được một cuộc tấn công như tấn công không qua chứng thực mà đã nói ở chương trước.
Mặc dù chúng có vẻ rất dễ bị tấn công nhưng 3 bản tin Auth Reject, Key Reject và TEK Invalid lại rất khó sử dụng để tấn cơng. Bởi vì những bản tin này yêu cầu bản tóm tắt HMAC để xác nhận bản tin. Như đã nói ở trước rất khó tạo ra một HMAC chính xác giống như HMAC thật, chỉ có một cách duy nhất là phá được mã các bản tin đó dùng, nhưng điều này cũng khơng hề đơn giản. Cũng có nhiều lý do khác nữa giải thích tại sao khơng sử dụng được những bản tin trên: Đối với bản tin Auth Reject được chấp nhận bởi SS, SS sẽ ở trong trạng thái đợi chứng thực của cỗ máy trạng thái chứng thực và khoảng thời gian trong này rất ít. Đối với bản tin Key Reject cần thiết phải có mã nhận dạng PKM tương đương với yêu cầu của SS mặc dù sự lựa chọn chỉ giới hạn có trong 256 số nhưng vẫn cịn lý do khác chính là xác nhận bản tin HMAC.
Bảng 3.5: Các thuộc tính bản tin Key Reject
Thuộc tính Nội dung
Chỉ số khoá Chỉ số khoá AK
SAID ID của SA
Mã lỗi Mã lỗi xác định ra lý do để từ chối yêu cầu khoá
Chuỗi chỉ thị( Tuỳ chọn) Hiển thị chuỗi mà chứa lý do từ chối yêu cầu khố
Bản tóm tắt HMAC Bản tóm tắt bản tin SHA được mã hố
Đối với bản tin Auth Invalid thì bản tin khơng được xác nhận qua bản tóm tắt HMAC. Nó khơng cần thiết được gửi đi tại thời gian hoặc trạng thái MAC hiện tại bởi vì hầu hết SS đều chấp nhận nó. SS ở trong trạng thái đợi chứng thực (Auth wait) rất ngắn nhưng ngược lại ở trong trạng thái đã chứng
Auth Invalid khơng liên quan gì đến chỉ số bộ nhận dạng PKM vì đây là một bản tin khơng có trạng thái. Khơng có bộ nhận dạng PKM thì người bị lừa sẽ chấp nhận bản tin giả như là bản tin chính thống.
Bảng 3.6: Các thuộc tính bản tin Auth Ivalid
Thuộc tính Nội dung
Mã lỗi Mã lỗi chỉ ra lý do cho việc chứng thực không hợp lệ
Chuỗi chỉ thị (Tuỳ chọn)
Chỉ thị chuỗi mơ tả tình trạng lỗi
Mã lỗi của bản tin Auth Invalid bao gồm một giá trị dịch thành sự chối bỏ không trạng thái. Mã lỗi được gửi từ BS khi HMAC của SS lỗi để kiểm tra. Nhìn bảng giá trị mã lỗi dưới đây thấy mã lỗi 0 không đưa ra một lý do nào cho việc lỗi chứng thực.
Bảng 3.7: Các giá trị mã lỗi của bản tin chứng thực
Mã lỗi Bản tin Mô tả
0 Tất cả Không đưa ra thông tin nào
1 Auth Reject, Auth Invalid SS đã không chứng thực
2 Auth Reject, Key Reject SAID đã không chứng thực
3 Auth Invalid Không yêu cầu
4 Auth Invalid, TEK invalid Chỉ số khố khơng hợp lệ
5 Auth Invalid Lỗi chứng thực bản tin
6 Auth Reject Lỗi chứng thực vĩnh viễn
Khi SS nhận được bản tin Auth Invalid, SS sẽ chuyển từ trạng thái đã chứng thực sang trạng thái đợi chứng thực lại (Reauth wait) và đợi cho đến khi nhận được gì mới từ BS. Nếu như thời gian Reauth wait hết hạn trước khi SS nhận được điều gì mới từ BS thì SS gửi đi bản tin yêu cầu chứng thực lại (Reauth Request) để gia nhập vào mạng lại. Trong khi SS đang ở trong trạng thái Reauth wait SS cũng có thể nhận được bản tin Auth reject. Đây là một
“Lỗi chứng thực vĩnh viễn”. Khi SS nhận được bản tin này SS bị đẩy vào trạng thái yên lặng (Silent), dừng tất cả lưu lượng thuê bao và sẵn sàng đáp lại bất kỳ bản tin quản lý nào từ BS. Lợi dụng điều này hacker có thể thao tác cỗ máy trạng thái chứng thực.