Những điểm yếu mới trong mạng WIMAX

Một phần của tài liệu Tìm hiểu wimax và an ninh mạng wimax (Trang 34 - 49)

2.3.3.1 Nền tảng công nghệ của các cuộc tấn công.

Để tấn công vào mạng 802.16 kẻ tấn công phải truy nhập vào sự trao đổi thông tin giữa hai bên có nghĩa là sẽ phải tiêm vào và phát ra thông điệp cần thiết để thực hiện cuộc tấn công.

Vấn đề đầu tiên là phải tạo ra một thông điệp. Vấn đề tiếp theo là tìm được đúng thời điểm để tiêm thông điệp đó vào mạng. Trong phần này chúng ta sẽ xem xét các cuộc tấn công đó dễ đến mức nào và liệu nó có phải là vấn đề cần quan tâm trong mạng hay không.

• Tạo thông điệp và tiêm vào mạng:

Hầu hết các cuộc tấn công diễn ra trong mạng 802.11 sử dụng thông điệp tùy chọn để đạt được mục đích. Tất nhiên trong những ngày đầu của mạng 802.11 không có các chương trình giúp kẻ tấn công tạo ra thông điệp như vậy. Việc này mất nhiều thời gian để thử nghiệm.

Chuẩn 802.16 là một chuẩn mới vẫn chưa được thực hiện, nó chỉ được thiết kế thử nghiệm trên giấy. Hiện nay vẫn không có một thiết bị nào có sẵn có trên thị trường và được sử dụng vì vậy các cracker hay các chuyên gia an ninh có thể tạo ra thông điệp tùy ý để tiêm vào mạng. Tất nhiên việc này có thể diễn ra trong các phòng thí nghiệm sản xuất nhưng cho đến nay chúng ta không hề biết về vấn đề này.

Trong mạng 802.11 người ta tạo ra các khung quản lý bằng các cổng gỡ rối và lưu trữ trong bộ đệm của card mạng. Bằng cách này thông điệp tùy chọn sẽ được tiêm vào mạng ngay trước thời điểm truyền phát và thông điệp sẽ được gửi đi mà không qua quá trình kiểm tra lỗi của phần cứng.

Trong mạng 802.16 các điểm truy nhập dịch vụ SAP (Service Access Point) được dùng để giao tiếp giữa hai giao thức lớp vật lý khác nhau và nó sẽ xác định những thông điệp nào được phép truyền qua. Do vậy không thể biết trước được rằng nó có bị lừa để cho thông điệp tùy ý này đi qua hay không.

Nếu các nhà sản xuất tạo ra các sản phẩm và cho phép người sử dụng có khả năng truy nhập kiểu gỡ rối (Debug type access ) tới phần cứng thì kẻ tấn công sẽ có cơ hội thực hiện việc này.

• Thời điểm tiêm thông điệp (Timing to inject the message)

Giả sử kẻ tấn công tạo được một thông điệp tùy ý, bước tiếp theo là phải tiêm được vào mạng. Vấn đề ở đây không chỉ là tiêm vào mạng mà phải làm thế nào để nạn nhân biết được thông điệp đó và xử lý nó như một thông điệp thật (thông điệp hợp pháp). Vấn đề này dường như sẽ khó hơn vì không có nhiều thông điệp quản lý để giả mạo. Thứ hai là vấn đề thời điểm tiêm thông điệp. Kẻ tấn công phải tìm ra thời điểm hở trong một lịch trình và tiêm thông điệp đúng lúc. Ngoài vấn đề đó chúng ta phải nghĩ về sự đồng bộ và rõ ràng là nếu kẻ tấn công muốn gửi thông điệp từ SS tới BS thì sự trễ lan truyền có thể biết được thông qua quá trình ranging khời đầu. Nhưng nếu kẻ tấn công muốn gửi thông điệp như một BS anh ta sẽ phải biết được trễ lan truyền là bao nhiêu. Vì nếu nạn nhân nhận được thông điệp này trong một thời điểm sai thì sẽ không nhận thông điệp và loại bỏ nó.

Ta biết rằng 802.16 sử dụng hai mô hình vật lý là FDD và TDD. Ở đây chúng ta sẽ xem xét về thời điểm có thể tiêm thông điệp vào mạng theo hai mô hình này sẽ xảy ra như thế nào?

- FDD:

Trong FDD các kênh hướng lên và kênh hướng xuống làm việc ở tần số khác nhau và kênh hướng xuống được phát đi trong dạng burst rời rạc. Vì tuyến lên và tuyến xuống được lập trình để hỗ trợ bán song công nên có thời điểm kênh hướng lên và kênh hướng xuống không được sử dụng, và đây chính là thời điểm để kẻ tấn công tiêm thông điệp của anh ta vào mạng. Ở hướng lên tất cả sự truyền phát đề đã được lập lịch trình. Tuy nhiên ở hướng xuống BS chỉ chỉ ra sự chuyển đổi dạng điều chế và sửa lỗi trước cho SS mà không chỉ ra thời điểm cụ thể mà một lưu lượng từ SS sẽ được gửi đi.

Tất cả các SS trong mạng luôn phải lắng nghe các tuyến hướng xuống để tìm kiếm thông điệp được gửi cho chúng. Do vậy kẻ tấn công có thể tìm ra thời điểm khi BS không gửi bất kỳ gói tin nào và anh ta có thể gửi thông điệp cùng thời điểm với BS và do đó sẽ có xung đột xảy ra. Nếu lượng tải của mạng ít, anh ta sẽ gây ra ít xung đột cho đến khi thành công. Nhưng nếu mạng quá tải BS sẽ không còn khoảng trống nào giữa các gói tin hướng xuống thì rất khó để kẻ tấn công đạt được mục đích.

- TDD

Trong hệ thống TDD có một chút sự khác biệt, không có bất kỳ một khoảng trống nào ở hướng xuống, toàn bộ các khung con hướng xuống đều được điền đầy bởi sự truyền phát của BS. Bất kỳ khung lớp MAC nào ngắn hơn sẽ được nhồi thêm các khung trống (null) để đạt được chiều dài cần thiết. Sau các tuyến xuống là các khung con hướng lên, giữa chúng chỉ có một khoảng trống là Tx/Rx Time Delay. Trên tuyến hướng lên có thể có các khe trống. Khi sự truyền các khe trống xảy ra BS gửi thông điệp Null ở mức công suất thấp hơn và SS không được phép phát tin. Ở cuối khung hướng lên có một khoảng trống khác trước khi đến khung tiếp theo là Rx/Tx time Delay.

Hình 2-3: Vị trí có thể tấn công trong cấu trúc khung TDD

2.3.3.2 Lớp MAC

Trong phần trước chúng ta chỉ nói về vấn đề thời điểm nhưng còn một vấn đề khác là trạng thái lớp MAC của bên nhận. Lớp MAC của 802.16 được xem như một máy trạng thái hoạt động dựa trên sự chuyển từ trạng thái này sang trạng thái khác. Điều này có nghĩa rằng một lớp MAC có thể loại bỏ một thông điệp đã xác định là tốt (được giả mạo tốt) nếu nó không ở trạng thái đúng để nhận thông điệp ấy.

Ví dụ như trong quá trình khởi đầu SS gửi đi một yêu cầu trao quyền (Authe Request) tới BS. Sau khi BS kiểm tra anh ta sẽ đáp lại. Nếu SS hợp phát sẽ được tham gia mạng, sau đó BS gửi lại một thông điệp đáp lại trao quyền (Authorization Replay) chứa khóa trao quyền cùng với các thông tin khác để tiếp tục xác thực. Nếu BS quyết định loại bỏ nó sẽ gửi thông điệp hủy bỏ trao quyền (Auth Reject). Khi đó SS vẫn ở trạng thái này, và sau một thời gian sẽ cố gắng trao quyền lại.

Người ta thường tin rằng việc loại trao quyền là một công cụ để tấn công. Bởi vì thông điệp loại bỏ trao quyền không chứa số thứ tự hay nhãn thời gian hay HMAC để có thể chứng minh là của BS. Kẻ tấn công có thể gửi rất nhiều thông điệp tới các SS trong mạng. Tuy nhiên đây không phải là vấn đề quan tâm chính vì lớp MAC chỉ ở trong trạng thái này với khoảng thời gian rất ngắn sau khi gửi thông điệp trao quyền do vậy nếu thông điệp của kẻ tấn công đến không đúng thời điểm nó sẽ bị loại bỏ ngay.

2.3.3.3 Các cuộc tấn công tiềm ẩn trong mạng 802.16

 Cuộc tấn công sử dụng thông điệp RNG-RSP

Đầu tiên khi SS muốn gia nhập mạng nó phải gửi một thông điệp yêu cầu Ranging (RNG-REQ). Thông điệp này thông báo cho BS về sự hiện diện của SS và yêu cầu các thông số như thời điểm truyền phát, công suất, tần số và các thông tin trong burst profile, thông điệp này được SS gửi đi theo chu kỳ. BS đáp lại bằng một thông điệp RNG-RSP. Trong các phiên bản cũ của 802.16 SS gửi thông điệp này theo chu kỳ. Nếu SS không hoàn thành quá trình ranging theo chu kỳ nó sẽ bị loại bỏ khỏi mạng và phải thực hiện quá trình gia nhập mạng ban đầu. Tuy nhiên phiên bản 802.16a không yêu cầu SS phải gửi thông điệp này theo định kỳ, thay vào đó SS có thể nhận bất cứ thông điệp nào từ phía BS và sử dụng nó để điều chỉnh ranging. Và BS gửi thông điệp RNG-RSP để thông báo cho SS về sự thay đổi các kênh hướng lên, hướng xuống, mức công suất phát và cũng có thể sử dụng thông điệp này để hủy bỏ sự truyền dẫn của SS và bắt đầu khởi đầu lại.

Bảng 2-1: Dạng thông điệp RNG-RSP

Lý do chính khiến thông điệp này trở thành điểm yếu là vì nó không hề được bảo mật. Và khi SS nhận được thông điệp này nó sẽ hoạt động theo sự chỉ dẫn trong thông điệp.

Có một số cách để sử dụng thông điệp này trong quá trình tấn công như sau:

- Cách 1: kẻ tấn công sử dụng thông điệp này với trường trạng thái ranging bằng 2 (Ranging status) tức là hủy bỏ sự truyền dẫn hiện tại của SS.

- Cách 2: dịch nạn nhân lên một cách khác. Nếu kẻ tấn công sử dụng một BS giả mạo ở một kênh riêng thì SS sẽ bị buộc phải giao tiếp với BS giả mạo này. Nếu không có một BS nào trên kênh đã chỉ ra SS sẽ lại trở lại kênh ban đầu.

Hình 2-4: Quá trình tấn công bằng thông điệp RNG-RSP (adsbygoogle = window.adsbygoogle || []).push({});

 Cuộc tấn công vào thông điệp thông báo quyền không hợp lệ

Ta biết rằng máy trạng thái trao quyền là một phần của giao thức PKM. Như thường lệ nó sử dụng hai thông điệp quản lý PKM-REQ và PKM-RSP. SS gửi PKM-REQ tới BS. BS đáp lại bằng PKM-RSP.

Mã thông điệp là một trường 8 bit để chỉ ra chính xác loại thông điệp PKM. Nếu thông điệp có mã không hợp lý thì sẽ bị loại bỏ.

Bảng 2-3: Bảng thông điệp PKM

Phần nhận dạng PKM là một trường 8 bit được dùng như số serial. Mỗi lần PKM- REQ gửi bởi SS phần nhận dạng PKM-REQ sẽ tăng lên một giá trị. Khi BS đáp lại bằng thông điệp PKM-RSP sẽ gồm một phần nhận dạng tương ứng với thông điệp nó nhận được. Nếu SS nhận được bất kỳ thông điệp nào có phần nhận khác yêu cầu được gửi đi SS sẽ từ chối. Trường thuộc tính PKM rất khác nhau tùy theo loại thông điệp PKM. Trường nay thường chứa thông tin về mã sửa lỗi, thời gian sống của khóa, chuỗi hiển thị.

Theo bảng trên ta thấy có 4 thông điệp có thể được sử dụng để tấn công là: - Auth Reject

- Key Reject - Auth Invalid - TEK Invalid

Đây là những thông điệp có khả năng phủ nhận quá trình trao quyền của SS. Sử dụng những thông điệp này sẽ tạo ra những cuộc tấn công giống dạng Deauthentication. Tuy nhiên trong các thông điệp trên có 3 thông điệp Auth Reject, Key Reject và TEK Invalid không sử dụng được. Vì những thông điệp này yêu cầu số HMAC để xác thực thông điệp. Như ta đã biết rất khó để tạo ra một HMAC chính xác. Chỉ có một cách là phá vỡ sơ đồ bảo mật. Hơn nữa những thông điệp này chỉ có thể nhận được trong một khoảng thời gian rất ngắn.

Thông điệp cuối cùng còn lại là thông điệp Auth Invalid. Thông điệp này không yêu cầu xác thực bằng HMAC, không bao gồm nhận dạng PKM. Nó cũng không cần một trạng thái nào để được xem là hợp pháp. Thông điệp này là một thông điệp trạng thái, SS có thể nhận nó tại mọi thời điểm. Những lý do này khiến kẻ tấn công có thể sử dụng nó dễ dàng hơn.

Bảng 2-4: Thuộc tính thông điệp Auth Invalid

Mặt khác trong phần mã lỗi có giá trị bằng 0 không đưa ra một lý do nào về sự không hợp lệ của thông điệp sẽ tạo điều kiện tấn công.

Bảng 2-5: Giá trị mã lỗi trong thông điệp xác thực

Khi SS nhận được thông điệp Auth Invalid sẽ chuyển từ trạng thái được trao quyền sang trạng thái đợi trao quyền lại. Như vậy SS sẽ đợi cho đến khi nó nhận được tin phải hồi từ BS. Nếu thời gian đợi trao quyền lại chấm dứt trước khi SS nhận được tin từ BS, SS sẽ gửi 1 thông điệp xin trao quyền lại (Reauth Request) để cố gắng gia nhập mạng.Và trong khi đang đợi trao quyền lại SS có thể sẽ nhận được thông điệp loại bỏ trao quyền lại (Reauth Reject). Đây là trường hợp “lỗi trao quyền cố hữu”. Rơi vào trường hợp này SS sẽ trở về trạng thái yên lặng, không gửi bất kỳ một tin nào và luôn sẵn sàng đáp lại một thông điệp quản lý nào được gửi từ BS. Với có chế như trên kẻ tấn công có thể tạo ra một máy trạng thái trao quyền nguy hiểm.

2.4 Bảo mật mạng WIMAX

2.4.1 Giao thức PKM v2

Phiên bản PKM v1 hoàn toàn tương tự như lớp con bảo mật tuy nhiên nó hỗ trợ phương pháp bảo mật mới như 3 DES-ECB và AES-ECB để bảo vệ bí mật vật chất khoá và dùng AES-CCM như MPDU. Bên cạnh đó nó sử dụng HMAC-SHA-1 để bảo vệ toàn vẹn thông điệp. Phiên bản PKM v2 có nhiều thuộc tính hơn bao gồm xác thực hai chiều sử dụng hai giao thức xác thực dựa trên RSA và dựa trên EAP, ngoài ra còn có thuật toán toàn vẹn thông điệp và giao thức quản lý khoá.

PKM v2 là một phần của chỉ tiêu kỹ thuật hỗ trợ khả năng di động cho chuẩn 802.16. Khi SS di động nó sẽ cần được xác thực trước với BS mà nó định tham gia liên kết để giảm khả năng ngắt ngãng dịch vụ.

Xác thực và điều khiển truy nhập trong PKM V2:

PKM V2 sẽ sửa chữa hầu như toàn bộ các điểm yếu của giao thức PKM V1. Đặc biệt là khả năng mã hoá bảo mật MPDU bằng AES-CCM. CCM gồm counter mode để mã hoá thông điệp và dùng CBC-MAC để bảo vệ toàn vẹn thông điệp.

Giao thức xác thực và thiết lập khoá có một vài thay đổi giúp bảo vệ chống lại các cuộc tấn công khác nhau.

Trước tiên đó là quá trình khởi đầu dựa trên RSA cho phép xác thực và trao quyền. Bên cạnh đó có giao thức xác thực dựa trên EAP cho những người sử dụng cơ sở hạ tầng xác thực chứa nonce để chứng minh về sự tồn tại của thông điệp, giúp bảo vệ khỏi các cuộc tấn công lặp lại. Sau đó là sự phân cấp khoá giúp giảm chi phí trong quá trình xác thực và trao quyền ban đầu. Cuối cùng là khả năng lưu trữ dùng cho quá trình chuyển giao nhanh (Fast Handoff).

2.4.1.1 Xác thực hai chiều dựa trên Public-key.

Xác thực và trao quyền dựa trên public key gồm 3 thông điệp trong đó có một thông điệp tuỳ chọn từ SS tới BS.

Thông điệp 1: SS -> BS: Cert ( Manufacturer )

Thông điệp 2: SS -> BS: SS-Random | BS – Random | RSA – Encryption ( PubKey ( SS ), pre – AK | Lifetime | SeqNo | SAIDList | Cert ( BS ) | Sig ( BS )

• Thông điệp yêu cầu trao quyền ( Thông điệp 2)

SS bắt đầu quá trình trao quyền lẫn nhau dựa trên RSA bằng cách gửi đi thông điệp xin trao quyền. Thông điệp này chứa một số ngẫu nhiên SS - RANDOM 64 bit, chứng nhận số X509 của SS, danh sách thuật toán bảo mật ( thuật toán toàn vẹn và mã hoá bảo mật ) mà SS có thể sử dụng.

• Thông điệp đáp lại trao quyền ( thông điệp 3)

BS gửi thông điệp đáp lại trao quyền tới SS. Trong thông điệp này BS chỉ ra số ngẫu nhiên 64 bit mà nó nhận được, số ngẫu nhiên 64 bit của nó ( BS-RANDOM ), PAK 256 bit bảo mật bằng RSA ( bảo mật bằng khoá công khai của MS ), thuộc tính của PAK ( thời gian sống, số thứ tự, một hoặc nhiều SAID ), BS sẽ gộp cả chứng nhận số của nó và ký nhận toàn bộ thông điệp.

SS có thể nhanh chóng chứng nhận rằng BS là hợp pháp khi nó có sự ký nhận thông điệp. Tuy nhiên giai đoạn này quá trình trao quyền không đảm bảo rằng truy nhập mạng an toàn là sẵn có cho SS. (adsbygoogle = window.adsbygoogle || []).push({});

Sau khi chứng minh về chữ ký của BS nó sẽ kiểm tra sự sống bằng cách kiểm tra SS-

Một phần của tài liệu Tìm hiểu wimax và an ninh mạng wimax (Trang 34 - 49)