Trong phạm vi nghiên cứu của mình, luận văn sẽ trình bày một số giải pháp để chống tấn công lỗ đen Black hole attack trên giao thức định tuyến AODV trong mạng không dây di động đã được c
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGÔ THÀNH HUYÊN
NGHIÊN CỨU GIẢI PHÁP CHỐNG TẤN CÔNG
LỖ ĐEN TRONG MẠNG KHÔNG DÂY DI ĐỘNG
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Hà Nội - 2012
Trang 2TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGÔ THÀNH HUYÊN
NGHIÊN CỨU GIẢI PHÁP CHỐNG TẤN CÔNG
LỖ ĐEN TRONG MẠNG KHÔNG DÂY DI ĐỘNG
Ngành: Công nghệ thông tin
Chuyên ngành: Truyền dữ liệu và Mạng máy tính
Mã số: 60 48 15
LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS Nguyễn Văn Tam
Hà Nội – 2012
Trang 3MỤC LỤC
MỤC LỤC 3
DANH MỤC CÁC HÌNH VẼ 4
DANH MỤC CÁC BẢNG 5
MỞ ĐẦU 6
CHƯƠNG 1 MẠNG KHÔNG DÂY DI ĐỘNG VÀ 8
NHỮNG ĐẶC ĐIỂM CÓ LIÊN QUAN ĐẾN VẤN ĐỀ AN NINH TRONG MẠNG KHÔNG DÂY DI ĐỘNG 8
1.1 Giới thiệu chung về mạng không dây 8
1.1.1 Đặc điểm mạng không dây 8
1.1.2 Các mô hình hoạt động của mạng không dây 8
1.2 Mạng không dây di động 10
1.2.1 MANET 10
1.1.2 Giao thức định tuyến trong mạng Ad-hoc 10
1.2 Vấn đề an ninh trong mạng MANET 13
1.2.1 Thách thức về an ninh trong mạng MANET 13
1.2.2 Các yêu cầu về an ninh 13
1.2.2 Các loại tấn công trong mạng MANET 14
1.3 Tổng kết 17
CHƯƠNG 2 TẤN CÔNG LỖ ĐEN TRONG GIAO THỨC ĐỊNH TUYẾN AODV 18
2.1 Giao thức định tuyến AODV[3] và tấn công lỗ đen trên giao thức AODV 18
2.2.1 Tổng quan về AODV 18
2.2.2 Lỗ hổng giao thức AODV dẫn tới nguy cơ tấn công lỗ đen 19
2.2.3 Phân loại 20
2.3 Một số nghiên cứu về giải pháp phòng chống tấn công lỗ đen trong giao thức AODV 22
2.3.1 SAODV 22
2.3.2 Giải pháp chống hợp tác tấn công lỗ đen dựa trên bảng dữ liệu thông tin định tuyến (DRI) và kiểm tra chéo (Cross Checking) 25
2.3.3 Một số giải pháp khác 27
2.4 Tổng kết 29
CHƯƠNG 3 ĐÁNH GIÁ ẢNH HƯỞNG CỦA TẤN CÔNG LỖ ĐEN TRÊN GIAO THỨC ĐỊNH TUYẾN AODV BẰNG MÔ PHỎNG 30
3.1 Phân tích lựa chọn phương pháp mô phỏng để đánh giá [1] 30
3.2 Bộ mô phỏng NS 2 và cài đặt mô phỏng 31
3.2.1 Giới thiệu NS2 [12] 31
3.2.2 Cài đặt mô phỏng cuộc tấn công lỗ đen 32
3.3 Mô phỏng tấn công lỗ đen và ảnh hưởng của nó 40
3.3.1 Kiểm tra hoạt động giao thức blackholeAODV 40
3.3.2 Mô phỏng, đánh giá ảnh hưởng và giải pháp làm giảm hiệu ứng của tấn công lỗ đen 42
3.4.1 Tỉ lệ phân phát gói tin thành công 47
3.4.2 Số gói tin bị mất 48
3.4.3 Độ trễ trung bình 49
3.5 Đánh giá ảnh hưởng của tấn công lỗ đen trong giao thức định tuyến AODV 49
KẾT LUẬN 51
TÀI LIỆU THAM KHẢO 52
PHỤ LỤC 53
Trang 4DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Mô hình mạng Ad hoc 9
Hình 1.2 Mô hình mạng Infrastructure 9
Hình 1.3 Mô hình mạng Wimax 9
Hình 1.4 Phân loại các giao thức định tuyến trong mạng Ad hoc 12
Hình 1.5 Các hình tấn công giao thức định tuyến trong mạng MANET 15
Hình 2.1 Một kịch bản AODV 19
Hình 2.2 Thực hiện tấn công lỗ đen bằng việc giả mạo gói tin RREQ 21
Hình 2.3 Thực hiện tấn công lỗ đen bằng việc giả mạo gói tin RREP 22
Hình 2.4 Định dạng của thông điệp định tuyến RREQ (RREP) mở rộng 23
Hình 2.5 Cách tính hàm băm khi bắt đầu phát sinh RREQ hay RREP 24
Hình 2.6 Cách tính hàm băm tại nút trung gian 25
Hình 2.7 Hợp tác tấn công lỗ đen 26
Hình 3.1 Nút 2 gửi dữ liệu tới nút 5 thông qua nút 1 và nút 6 41
Hình 3.2 Nút 2 gửi dữ liệu tới nút 5 thông qua nút 3 và nút 4 41
Hình 3.3 Nút lỗ đen hấp thụ và loại bỏ toàn bộ lưu lượng mạng gửi từ nút 2 tới nút 5 42
Hình 3.4 Biểu đồ thể hiện tỉ lệ phân phát thành công gói tin 47
Hình 3.5 Biểu đồ thể hiện số gói tin bị mất do nút lỗ đen drop 48
Hình 3.6 Biểu đồ thể hiện thời gian trễ trung bình truyền thành công 1 gói tin 49
Trang 5DANH MỤC CÁC BẢNG
Bảng 2.1 Giá trị RREQ và RREP 19
Bảng 2.2 Các trường gói tin AODV dễ bị tổn thương 20
Bảng 2.3 Bảng DRI duy trì bởi nút 4 26
Bảng 3.1 Cấu hình mạng mô phỏng 46
Bảng 3.2 Tỉ lệ phân phát gói tin thành công 47
Bảng 3.3 Số lượng gói tin bị mất 48
Bảng 3.4 Độ trễ trung bình 49
Trang 6MỞ ĐẦU
Hiện nay, với sự phát triển mạnh mẽ của công nghệ thông tin đã ảnh hưởng sâu sắc tới hầu hết các lĩnh vực của đời sống Sự gia tăng đáng kể của các thiết bị di động cầm tay như điện thoại di động, máy tính bảng,…có chức năng giao tiếp không dây đang đặt ra nhiều vấn đề về tối ưu hóa băng thông và cơ chế kiểm soát an ninh, an toàn trong giao tiếp giữa các thiết bị
Tương tự như mạng có dây truyền thống, để thiết lập vấn đề an ninh, an toàn cho hệ thống, mạng không dây cũng có thể triển khai các giải pháp để đảm bảo tính xác thực hai chiều, tính toàn vẹn, tính bảo mật của thông tin giữa người gửi và người nhận Tuy nhiên, đối với mạng không dây do môi trường truyền thông là không khí rất dễ bị tổn thương bởi các cuộc tấn công Thêm vào đó là việc liên tục phát quảng bá các gói tin trong mạng không dây cũng là một trong những nguyên nhân gây ra sự mất an toàn cho toàn bộ hệ thống
Mạng không dây di động (MANET) là mạng mà trong đó bao gồm các nút tự trị, tự quản lý mà không có bất kỳ cơ sở hạ tầng nào Mỗi nút mạng vừa đóng vai trò của một host đồng thời đảm nhận chức năng của một router định tuyến dữ liệu Do đặc tính thiếu an toàn nên mạng không dây di động là mục tiêu của đa số các kiểu tấn công từ lớp thấp nhất đến lớp cao nhất trong mô hình OSI
Trong phạm vi nghiên cứu của mình, luận văn sẽ trình bày một số giải pháp để chống tấn công lỗ đen (Black hole attack) trên giao thức định tuyến AODV trong mạng không dây di động đã được các tác giả nghiên cứu công bố trong thời gian qua, đồng thời mô phỏng lại các cuộc tấn công lỗ đen và đánh giá thiệt hại của nó gây ra cho mạng Luận văn sử dụng NS-2 là một chương trình mô phỏng có chứa tập hợp các giao thức mạng mô tả được nhiều cấu trúc mạng khác nhau Tuy NS-2 có chứa các các giao thức định tuyến không dây, nhưng nó chưa thể mô phỏng giao thức tấn công lỗ đen Vì vậy, để mô phỏng các cuộc tấn công lỗ đen trên giao thức AODV cần phải bổ sung một giao thức tương tự AODV để tiến hành mô phỏng
Sau khi thực hiện cài đặt một giao thức định tuyến mới để mô phỏng “lỗ đen”, luận văn sẽ tiến hành nhiều kịch bản mô phỏng với các cấu trúc mạng khác nhau qua đó so sánh hiệu năng mạng khi có tấn công lỗ đen và không có tấn công lỗ đen
Nội dung của luận văn được tổ chức như sau: ngoài phần Mở đầu và Kết luận bao gồm 3 chương chính Phần Mở đầu đưa ra mục tiêu nghiên cứu và tổ
Trang 7chức chi tiết của luận văn Chương 1 mô tả đặc điểm về mạng MANET và những đặc điểm có liên quan đến vấn đề an ninh trong mạng MANET Chương
2 mô tả giao thức định tuyến AODV và tấn công lỗ đen gây ra trên giao thức này Trên cơ sở phân tích các giải pháp về tấn công lỗ đen, luận văn giới thiệu giải pháp phát hiện dấu hiệu tấn công lỗ đen nhằm làm giảm sự ảnh hưởng của
lỗ đen trong mạng MANET sử dụng giao thức AODV Chương 3 trình bày về phần mềm mô phỏng NS-2 và tiến hành một số kịch bản mô phỏng để đánh giá hiệu năng mạng khi bị ảnh hưởng bởi tấn công lỗ đen; giải pháp phát hiện và làm giảm ảnh hưởng tấn công lỗ đen
Trang 8CHƯƠNG 1 MẠNG KHÔNG DÂY DI ĐỘNG VÀ NHỮNG ĐẶC ĐIỂM CÓ LIÊN QUAN ĐẾN VẤN ĐỀ AN NINH TRONG
MẠNG KHÔNG DÂY DI ĐỘNG
Chương này trình bày các khái niệm tổng quan nhất về mạng không dây
di động và đề cập đến các thách thức an ninh mà mạng này đang phải đối mặt
1.1 Giới thiệu chung về mạng không dây
1.1.1 Đặc điểm mạng không dây
Được phát triển mạnh trong vài thập kỷ trở lại đây, mạng không dây cho phép người dùng truyền dữ liệu từ điểm này đến điểm khác không sử dụng đường truyền vật lý, mà có thể sử dụng sóng vô tuyến, hồng ngoại, hay qua vệ tinh Hầu hết các hệ thống sử dụng mạng không dây ngày nay dựa trên tiêu chuẩn 802.11 của IEEE
Tính năng chủ yếu của mạng không dây:
- Tính di động: người dùng có thể truy cập dữ liệu ngay cả khi đang di chuyển, việc này nâng cao hiệu quả truy xuất dữ liệu
- Tốc độ triển khai mạng nhanh và dễ dàng: Không gặp khó khăn trong việc xác định lắp đặt dây cáp mạng như trong mạng có dây
- Tính mềm dẻo: Chủ động trong việc thiết lập các nhóm mạng nhỏ, do môi trường mạng là không khí nên việc mở rộng mạng là vô cùng dễ dàng Điều này phù hợp với việc bố trí các hệ thống thông tin phục vụ cho mục đích công cộng
- Chi phí: So với việc lắp đặt mạng có dây truyền thống thì triển khai mạng không dây giảm thiểu chi phí lắp đặt một cách đáng kể
Tuy nhiên, mạng không dây cũng gặp phải một số hạn chế như:
- Phạm vi: Các thiết bị không dây chỉ hoạt động trong phạm vi phủ sóng của mạng, ngoài vùng phủ sóng của mạng thì không thể tham gia truyền nhận dữ liệu Giới hạn phạm vi hoạt động tốt từ khoảng vài chục mét đến vài trăm mét
- Chất lượng: Do việc sử dụng sóng vô tuyến để truyền thông nên bị nhiễu, bị tác động bởi các thiết bị phát sóng khác là điều khó tránh khỏi
- Bảo mật: Là một điểm quan trọng trong thiết kế hệ thống mạng không dây bởi vì do môi trường truyền là không khí nên tính bảo mật kém, nên dễ bị tổn thương bởi các cuộc tấn công
1.1.2 Các mô hình hoạt động của mạng không dây
a Mô hình độc lập – Ad hoc (IBSS)
Trang 9Các nút mạng trong mô hình này hoạt động theo phương thức ngang hàng, chúng không sử dụng các Access Point mà kết nối trực tiếp tiếp với nhau
Hình 1.1 Mô hình mạng Ad hoc
b Mô hình Infrastructure (BSSs)
Mỗi thiết bị trong mô hình đều truyền tín hiệu về điểm truy cập Access Point Điểm truy cập này hoạt động như một brigde trong chuẩn Ethernet để chuyển các tín hiệu này tới đích thích hợp có thể là mạng có dây hoặc các điểm truy cập khác
Hình 1.2 Mô hình mạng Infrastructure
c Mô hình mạng diện rộng – WIMAX
Hình 1.3 Mô hình mạng Wimax
Trang 10Mô hình này bao gồm nhiều mạng mạng WLAN, bao phủ trong một không gian rộng lớn ví dụ như giữa các tòa nhà
1.2 Mạng không dây di động
1.2.1 MANET
Là mạng dựa trên mô hình độc lập ad hoc, các nút trong mô hình này giao tiếp trực tiếp với nhau mà không sử dụng một điểm truy cập nào Do việc kết hợp giữa tính di động với mạng Ad hoc nên người ta thường gọi là mạng MANET (Mobile Ad-hoc-Network)
Mạng MANET có các đặc điểm chính sau:
- Là tập hợp các nút di chuyển ngẫu nhiên và giao tiếp với nhau mà không cần sự giúp đỡ của bất kỳ cơ sở hạ tầng mạng nào Các nút vừa đóng vai trò là một host đồng thời đóng vai trò là một router có khả năng tìm kiếm, duy trì và định tuyến các gói dữ liệu cho các nút nằm trong vùng phủ sóng của nó
- Tất cả các nút đều ngang hàng và không có nút nào đóng vai trò máy chủ trung tâm
- Các nút có thể gia nhập hay rời bỏ mạng bất kể khi nào do đó tạo ra sự thay đổi topology một cách liên tục
MANETs phù hợp cho việc sử dụng trong tình huống mà mạng có dây hoặc mạng không dây dựa trên cơ sở hạ tầng không thể truy cập, quá tải, hư hỏng hoặc bị phá hủy như trong các trường hợp khẩn cấp hoặc các nhiệm vụ cứu
hộ, cứu trợ thiên tai và chiến thuật trên chiến trường, hoặc thông thường như các hội nghị trực tuyến, trong nghiên cứu mạng cảm biến
1.1.2 Giao thức định tuyến trong mạng MANET
a Yêu cầu cơ bản đối với giao thức định tuyến
Cũng giống như mạng có dây truyền thống các kỹ thuật định tuyến đóng góp vai trò đặc biệt quan trọng khi triển khai các hệ thống thông tin Mạng MANET với những đặc điểm riêng có của mình đã nêu ở mục trên thì việc thiết
kế các giao thức định tuyến phù hợp với một cấu hình mạng động với số lượng nút mạng lớn, các nút mạng có thể gia nhập hoặc rời mạng bất kỳ lúc nào cộng với việc hạn chế về tài nguyên mạng càng trở nên khó khăn hơn
Do đó, việc thiết kế một giao thức định tuyến có hiệu quả trong mạng MANET phải căn cứ vào một số yêu cầu sau:
- Tốc độ hội tụ mạng nhanh: Do đặc tính di chuyển các nút dẫn tới cấu hình mạng thay đổi liên tục nên giao thức định tuyến phải đạt mức hội tụ, thống
Trang 11nhất các tuyến trong toàn topology một cách sớm nhất trước khi có sự thay đổi mới
- Đảm bảo các cơ chế duy trì tuyến mạng trong điều kiện bình thường mà hạn chế việc sử dụng tài nguyên mạng như băng thông, năng lượng
- Thuật toán định tuyến thông minh, tránh tình trạng lặp vòng trong quá trình yêu cầu tuyến dẫn đến lãng phí băng thông toàn mạng và năng lượng các nút
- Hạn chế tối đa việc quảng bá thông điệp điều khiển tuyến, chỉ khám phá tuyến khi thực sự có nhu cầu truyền gửi dữ liệu, nói một cách khác là các giao thức định tuyến hoạt động dựa trên yêu cầu
- Bảo mật: Môi trường với những liên kết không dây rất dễ bị tấn công, khai thác thông tin, do đó mã hóa và chứng thực là cách bảo mật thông thường nhất được áp dụng hiện nay Tuy nhiên việc triển khai hệ thống PKI trong mạng MANET không có sự hỗ trợ bất cứ cở sở hạ tầng nào cũng đang là vấn đề còn nhiều khó khăn
- Xây dựng nhiều tuyến đường cho cùng một đích (redundant route): Giảm thiểu quá trình khám phá tuyến mới khi có một liên kết bị đứt thì có thể dùng tuyến dự trữ cho cùng một đích
- Hỗ trợ chất lượng dịch vụ - QoS: Nhiều ứng dụng triển khai trên mạng
ad hoc yêu cầu đảm bảo chất lượng tín hiệu, đáp ứng thời gian thực cho nên không thể bỏ qua yêu cầu về mặt chất lượng dịch vụ trong giao thức định tuyến
b Phân loại
Một trong những phương pháp phổ biến nhất để phân loại các giao thức định tuyến cho mạng MANET là dựa trên cách thức trao đổi thông tin định tuyến giữa các nút Theo phương pháp này thì giao thức định tuyến trong mạng
ad hoc được chia thành các loại sau: Các giao thức định tuyến theo bảng, định tuyến theo yêu cầu, và định tuyến lai ghép như trong Hình 1.4 dưới đây:
Trang 12Hình 1.4 Phân loại các giao thức định tuyến trong mạng MANET
- Các giao thức định tuyến theo yêu cầu (on-demand) Quá trình khám phá tuyến bắt đầu khi có yêu cầu và kết thúc khi có tuyến đường được tìm ra hoặc không tìm ra được tuyến do sự di chuyển của nút Việc duy trì tuyến là một hoạt động quan trọng của định tuyến theo yêu cầu So sánh với định tuyến theo bảng,
ít tiêu đề định tuyến là 1 ưu điểm của định tuyến theo yêu cầu nhưng việc phải bắt đầu lại quá trình khám phá tuyến trước khi truyền dữ liệu gây trễ trong mạng Các giao thức chủ yếu dạng này như: giao thức định tuyến vector khoảng cách theo yêu cầu AODV (Ad hoc On-demand Distance Vector Routing) và giao thức định tuyến định tuyến nguồn động DSR (Dynamic Source Routing), giao thức định tuyến theo thứ tự tạm thời TORA (Temporally Ordered Routing Algorithm)
- Các giao thức định tuyến theo bảng (table-driven) Trong giao thức này mỗi nút luôn lưu trữ một bảng định tuyến chứa các tuyến đường tới các nút khác trong mạng Định kỳ mỗi nút đánh giá các tuyến tới các nút trong mạng để duy trì trạng thái kết nối Mỗi khi có sự thay đổi cấu hình, các thông báo được quảng
bá lan truyền trong toàn mạng để thông báo cho các nút cập nhật lại bảng định tuyến của mình Với việc lưu trữ sẵn có tuyến đường làm cho tốc độ hội tụ mạng nhanh, tuy nhiên cơ chế định kỳ phát quảng bá thông tin tuyến làm tăng tải trong mạng Các giao thức thức định tuyến theo bảng bao gồm: giao thức định tuyến không dây WRP (Wireless Routing Protocol), giao thức định tuyến vector khoảng cách tuần tự đích DSDV (Dynamic Destination-Sequenced Distance-Vector Routing), giao thức định tuyến trạng thái liên kết tối ưu OLSR (Optimized Link State Routing)
- Các giao thức định tuyến lai ghép (hybrid) để kết hợp ưu điểm của 2 loại giao thức trên và khắc phục các nhược điểm của chúng Được sử dụng trong hệ
Trang 13thống mạng lớn có sự phân cấp từng khu vực với ứng dụng khác nhau để có thể linh động trong quá trình định tuyến Các giao thức kiểu này bao gồm: Zone Routing Protocol (ZRP) và Hybrid Ad Hoc Routing Protocol (HARP)
1.2 Vấn đề an ninh trong mạng MANET
1.2.1 Thách thức về an ninh trong mạng MANET
Với đặc điểm mạng MANET đã trình bày ở phần trên, vấn đề an ninh trong mạng MANET gặp phải nhiều thách thức Đó là:
- Môi trường là không khí kém bảo mật là nguy cơ của việc nghe trộm từ
đó kẻ tấn công có thể phân tích lưu lượng mạng phục vụ cho các mục đích tấn công tiếp theo
- Việc các nút gia nhập và rời mạng bất kỳ lúc nào tạo nên sự thay đổi thường xuyên về cấu trúc mạng đòi hỏi các giao thức định tuyến liên tục phát các yêu cầu quảng bá trong toàn mạng cũng dẫn đến việc mất an ninh trong mạng Đồng thời việc cấu trúc mạng liên tục thay đổi cũng là một khó khăn để các giao thức định tuyến phát hiện rằng thông điệp điều khiển sai lệch được sinh
ra bởi nút độc hại hay là do quá trình thay đổi cấu trúc mạng
- Giới hạn về tài nguyên như băng thông và năng lượng làm giảm khả năng chống đỡ của mạng trước các cuộc tấn công
- Thiếu một cơ sở hạ tầng trợ giúp gây khó khăn khi triển khai các cơ chế bảo mật trong mạng
1.2.2 Các yêu cầu về an ninh
Tính bảo mật (Confidentialy): Đảm bảo thông điệp truyền trong mạng phải được giữ bí mật Trong một số trường hợp cần đảm bảo bí mật cả với các thông điệp định tuyến quảng bá trong mạng vì từ thông tin các thông điệp này có thể khai thác một số thông tin giúp ích cho việc tấn công
Tính xác thực (Authentication): Đảm bảo một nút phải xác định được danh tính rõ ràng của một nút khác trong quá trình truyền dữ liệu với nó
Tính toàn vẹn (Intergrity): Đảm bảo các thông điệp không bị chỉnh sửa trong toàn bộ quá trình truyền
Tính chống chối bỏ (Non-Repudiation): Đảm bảo luôn xác định được nguồn gốc thông điệp truyền từ nút nào
Tinh sẵn sàng (Availability): Đảm bảo tính sẵn sàng của các nút mặc dù bị các cuộc tấn công Trong đó tấn công từ chối dịch vụ đe dọa tới bất kỳ tầng nào
Trang 14trong mạng ad hoc Ở tầng điều khiển môi trường truy nhập, kẻ tấn công có thể
sử dụng hình thức chèn ép kênh truyền vật lý; ở tầng mạng sự gián đoạn trong hoạt động của các giao thức định tuyến, ở các tầng cao hơn có thể là tấn công vào các ứng dụng bảo mật ví dụ như hệ thống quản lý khóa
1.2.2 Các loại tấn công trong mạng MANET
Có nhiều cách phân loại tấn công trong mạng MANET, mục này sẽ phân tích dựa vào phân loại theo tính chất tấn công Chia ra làm hai loại: Tấn công bị động (Passive attacks) và Tấn công chủ động (Active attacks)
Tấn công bị động là kiểu tấn công không tác động trực tiếp vào thiết bị nào trên mạng, không làm cho các thiết bị trên mạng biết được hoạt động của
nó, vì thế kiểu tấn công này nguy hiểm ở chỗ nó rất khó phát hiện Các phương thức dùng trong tấn công bị động: nghe trộm (Sniffing, Eavesdropping), phân tích luồng thông tin (Traffic analytics)
Tấn công chủ động là tấn công trực tiếp vào một hoặc nhiều thiết bị trên mạng Cuộc tấn công chủ động với mục đích tìm cách truy nhập tới một server
để thăm dò, để lấy những dữ liệu quan trọng, thậm chí thực hiện thay đổi topo mạng Kiểu tấn công này dễ phát hiện nhưng khả năng phá hoại của nó rất nhanh
và nhiều, khi phát hiện ra chúng ta chưa kịp có phương pháp đối phó thì nó đã thực hiện xong quá trình phá hoại Các loại tấn công kiểu này được biết đến như: Tấn công từ chối dịch vụ (DOS), sửa đổi thông tin (Message Modification), chế tạo thông tin mạo danh (Fabrication)…
Trong loại tấn công chủ động này có thể được chia làm hai loại: Tấn công
từ bên ngoài (Extenal attack) và tấn công từ bên trong (Internal attack)
Tấn công từ bên ngoài được thực hiện bởi một nút không nằm trong hệ thống mạng bị tấn công Để chống lại kiểu tấn công này, hệ thống mạng cần trang bị hệ thống tường lửa, sử dụng cơ chế mã hóa các thông điệp trên đường truyền
Tấn công từ bên trong nguy hiểm hơn so với tấn công từ bên ngoài khi trực tiếp một hay nhiều nút tham gia vào cuộc tấn công này vì nó có đầy đủ các quyền khi hoạt động trong mạng giao tiếp với các nút khác Những cuộc tấn công từ bên trong thường khó phát hiện và gây hậu quả lâu dài
Với từng loại tấn công này có rất nhiều cách tấn công cụ thể vào tất cả các lớp tương ứng trong mô hình OSI Tuy nhiên, để trình bày một cách có logic và bám sát nội dung, luận văn đi vào trình bày các cách tấn công cụ thể trong giao thức định tuyến được gắn với các yêu cầu về an ninh trong mạng MANET
Trang 15Như đã trình bày ở trên, môi trường mạng không dây làm cho các giao thức định tuyến dễ bị tổn thương bởi các cuộc tấn công hơn Từ tấn công nghe trộm bị động (Eavesdropping) đến các kiểu tấn công chủ động như mạo danh, sửa đổi, truyền lại thông điệp…Trong đó tấn công nghe trộm bị đông đe dọa tới tính bảo mật (Confidentialy), đặc biệt tấn công chủ động đe dọa tới toàn bộ các yêu cầu an ninh như tính toàn vẹn (Intergrity), tính xác thực (Authentication), tính sẵn sàng (Availability), tính không chối bỏ (Non-Repudiation)
Hình 1.5 Các hình thức tấn công giao thức định tuyến trong mạng MANET
a Tấn công bị động (bao gồm các hình thức nghe trộm, phân tích lưu lượng)
Do môi trường mạng là không khí nên kẻ tấn công có thể nghe trộm bất
kỳ mạng không dây nào để biết trong mạng đang xảy ra những gì Qua thông điệp thu được từ môi trường truyền, kẻ tấn công kết hợp phân tích lưu lượng những gói tin điều khiển từ đó hình dung ra cấu trúc của mạng để hiểu được các nút trong mạng giao tiếp với nhau như thế nào Do đó, nó có thể thu thập đầy đủ thông tin về mạng trước khi thực hiện cuộc tấn công Nó cũng có thể lắng nghe những thông tin truyền đi đã được mã hóa mặc dù đã được bảo mật ở những ứng dụng lớp trên
Việc nghe lén đe dọa tới các vị trí riêng tư của một số hệ thống mang tính bảo mật cao về vị trí địa lý[6] Kẻ tấn công có thể nhận thấy một mạng không dây tồn tại trong một khu vực địa lý chỉ bằng cách thu tín hiệu vô tuyến
b Tấn công bằng cách sửa đổi
Tấn công vào giao thức định truyến trong MANET
Tính toàn vẹn
- Tấn công sửa đổi
- Tấn công chế tạo
- Các hình thức tấn công đặc biệt như balckhole, wormhole…
Tính xác thực
- Mạo danh
- Các hình thức tấn công đặc biệt như balckhole, wormhole…
Tính chống chối bỏ
- Mạo danh
- Các hình thức tấn công đặc biệt như balckhole, wormhole…
Trang 16Trong kiểu tấn công này, một số trường của thông điệp định tuyến đã bị sửa đổi dẫn đến việc làm rối loạn các tuyến đường, chuyển hướng hoặc hình thành một cuộc tấn công từ chối dịch vụ Bao gồm các hình thức sau:
- Sửa đổi số tuần tự đích (destination sequence number), số chặng (hop_count) của tuyến đường: Thể hiện rõ ràng nhất trong giao thức định tuyến
AODV Kẻ tấn công sửa đổi số tuần tự đích, hoặc số chặng của gói tin yêu cầu tuyến (RREQ) hoặc gói tin trả lời tuyến (RREP) để tạo nên tuyến đường mới có hiệu lực, qua đó chiếm quyền điều khiển quá trình truyền dữ liệu từ nguồn tới đích
- Sửa đổi nguồn của tuyến đường: Thể hiện rõ trong giao thức định tuyến
nguồn DSR Kẻ tấn công chặn thông điệp sửa đổi danh sách các nguồn trước khi gửi tới nút đích trong quá trình truyền
Các cuộc tấn công thường gặp dạng này như là: Tấn công làm mất tuyến (Misrouting Attack), tấn công đường vòng (Detour attack), tấn công hăm dọa (Blackmail Attack)
c Tấn công bằng cách mạo danh
Kiểu tấn công này đe dọa tính xác thực và bảo mật trong mạng Nút độc hại có thể giả mạo địa chỉ của nút khác để thay đổi cấu trúc mạng hoặc ẩn mình trên mạng
Nút độc hại mạo danh bằng cách thay đổi địa chỉ IP nguồn trong thông điệp điều khiển Một lý do khác để mạo danh là để thuyết phục các nút khác thay đổi thông tin trong bảng định tuyến của chúng rằng tôi là một nút tin cậy, cách này còn được biết đến như tấn công vào bảng định tuyến
Một trong những điển hình của loại tấn công này là “Man in the midle attack” [6] Nút độc hại thực hiện cuộc tấn công này bằng cách kết hợp giữa mạo danh và loại bỏ gói tin Về mô hình vật lý, nó phải được chọn sao cho là nút nằm trong phạm vi tới đích, tức là nằm giữa tuyến đường có thể chặn bất kỳ thông tin nào từ nút khác tới đích Để thực hiện việc này, khi nút nguồn gửi RREQ, nút độc hại loại bỏ RREQ và gửi trả lời RREP giả mạo như là nút đích trả lời, song song qua trình này nó gửi gói tin RREQ tới nút đích và loại bỏ gói RREP từ nút đích trả lời Bằng cách này, nút độc hại đứng giữa nắm giữ thông tin trong quá trình truyền thông nút nguồn, nút đích Với thông tin thu được có
sử dụng các phương pháp bảo mật ở các lớp trên ,kẻ tấn công có thể giải mã hoặc tìm ra các khóa để tiếp tục quá trình tấn công vào các lớp phía trên của hệ thống
Trang 17d Tấn công bằng cách chế tạo (Fabrication Attack)
Trong cách tấn công này, nút độc hại cố gắng để “bơm” vào mạng các thông điệp giả mạo hoặc các thông điệp định tuyến sai để phá vỡ cơ chế định tuyến trong mạng Các cuộc tấn công kiểu này rất khó để phát hiện bởi việc gói tin định tuyến bơm vào mạng đều là gói tin hợp lệ được xử lý bởi các nút trong mạng
Các cuộc tấn công cụ thể điển hình dạng này như:
Tấn công làm cạn kiệt tài nguyên: Trong cách này, nút độc hại cố gắn tiêu
thụ tài nguyên (pin, băng thông…) của các nút khác trong mạng bằng cách yêu cầu các tuyến đường không cần thiết, gửi các thông tin cũ đã được xử lý trước
đó nhằm hướng các nút khác phải xử lý những yêu cầu này dẫn đến việc tiêu thụ tài nguyên lẽ ra không đáng có
Tấn công gây nhiễm độc bảng định tuyến: Nút độc hại gửi các thông tin
định tuyến sai dẫn đến việc không tối ưu tuyến đường, hoặc gây tắc nghẽn, phân vùng mạng
Tấn công lỗ đen [7]: Trong cuộc tấn công này, nút độc hại tuyên bố rằng
nó có tuyến đường hợp lệ tới tất cả các nút khác trong mạng để chiếm quyền điều khiển lưu lượng giữa các thực thể truyền Sau khi nhận dữ liệu truyền, nó không chuyển tiếp mà loại bỏ (drop) tất cả các gói tin này Do đó, nút lỗ đen này
có thể giám sát và phân tích lưu lượng toàn bộ các nút trong mạng mà nó đã tấn công Có thể coi tấn công lỗ đen là một khâu đầu trong tấn công “Man in the midle attack”
Chương tiếp theo luận văn sẽ đi vào giải thích một cách chi tiết cách thức tấn công lỗ đen trên giao thức AODV trong mạng MANET
1.3 Tổng kết
Nội dung chương này đã trình bày những kiến thức tổng quan về công nghệ mạng không dây, các mô hình mạng không dây, những đặc điểm của mạng MANET có liên quan đến vấn đề an ninh Trong chương này cũng đã giới thiệu một cách cơ bản nhất về giao thức định tuyến trong mạng Ad hoc Nôi dung chương này cũng đã trình bày được các nguy cơ dẫn đến mất an ninh trong mạng Ad hoc và giới thiệu một số hình thức tấn công vào giao thức định tuyến trong mạng Ad hoc
Trang 18CHƯƠNG 2 TẤN CÔNG LỖ ĐEN TRONG GIAO THỨC ĐỊNH TUYẾN AODV
Luận văn chọn giao thức AODV bởi vì đây là một giao thức được sử dụng rộng rãi và cũng là giao thức dễ bị tổn thương bởi tấn công lỗ đen do cơ chế hoạt động của nó Trước tiên luận văn xin được trình bày về giao thức định tuyến AODV, sau đó đi vào giải thích chi tiết cách thức cuộc tấn công lỗ đen, các nghiên cứu về giải pháp để làm giảm sự ảnh hưởng của tấn công lỗ đen
2.1 Giao thức định tuyến AODVvà tấn công lỗ đen trên giao thức AODV 2.2.1 Tổng quan về AODV
Giao thức định tuyến AODV [3] là định tuyến nhiều bước, nó thiết lập đường đi chi khi nào có nhu cầu truyền dữ liệu, sử dụng thông điệp yêu cầu định tuyến (RREQ) và thông điệp trả lời định tuyến (RREP) Khi một nút muốn tìm đường đi tới nút đích, nó quảng bá thông điệp yêu cầu đường đi RREQ với một
ID duy nhất (RREQ ID) tới các nút xung quanh Khi một nút nhận được thông điệp RREQ, nó cập nhật số tuần tự (sequence number - SN) của nút nguồn và thiết lập đường ngược tới nút nguồn trong bảng định tuyến Nếu như nút này là nút đích hoặc có sẵn đường đi tới nút đích nhờ yêu cầu trước, nó phát đi thông điệp trả lời RREP trở lại tới nút nguồn
Nút nguồn hoặc nút trung gian nhận được RREP sẽ cập nhật đường đi chuyển tiếp của nó tới đích trong bảng định tuyến, còn không thì nó tiếp tục phát quảng bá thông điệp RREQ Nếu như một nút nhận được chính thông điệp mà
nó đã xử lý, nó sẽ bỏ qua và không chuyển tiếp thông điệp đó
Trong AODV, số tuần tự SN đóng một vai trò cho biết tính mới mẻ của thông tin định tuyến và sự đảm bảo không có những đường lặp vòng Số tuần tự chỉ được tăng thêm khi thỏa mãn hai điều kiện: Khi nút nguồn khởi tạo RREQ
và nút đích trả lời RREP Số tuần tự chỉ có thể được cập nhật bởi nút nguồn Số chặng (Hop count - HC) được sử dụng để xác định con đường ngắn nhất và sẽ tăng 1 mỗi khi một nút chuyển tiếp thông điệp RREQ hay RREP Khi một đường liên kết bị đứt, gói tin báo lỗi đường đi (RRER) được lan truyền tới nút nguồn theo đường trở lại đã được thiết lập và các nút trung gian xóa đầu vào đó trong bảng định tuyến của chúng AODV duy trì liên kết với các nút kế cận bằng cách gửi đi thông điệp hello theo định kỳ
Trang 19Hình 2.1 Một kịch bản AODV Hình trên mô tả luồng thông điệp RREQ và RREP trong một kịch bản AODV, nút A muốn tìm đường tới nút B (Ban đầu, nút A, B, C, và D không có đường đi) Một thông điệp quảng bá RREQ (a1) tới B B quảng bá tiếp yêu cầu (b1) C nhận được thông điệp này và quảng bá thông điệp (c1), tới được nút đích
D Cuối cùng, D gửi trở lại thông điệp RREP dưới dạng thông điệp trực tiếp (unicast) tới A Trong đó những gói tin RREQ và RREP là luồng yêu cầu-đáp ứng (request-response flow) Giá trị những trường trong thông điệp định tuyến được ghi lại như bảng sau:
Bảng 2.1 Giá trị RREQ và RREP
2.2.2 Lỗ hổng giao thức AODV dẫn tới nguy cơ tấn công lỗ đen
Giao thức AODV dễ bị kẻ tấn công làm sai lệch thông tin đường đi để chuyển hướng đường đi và bắt đầu các cuộc tấn công khác Trong mỗi gói tin định tuyến AODV, một số trường quan trọng như số đếm chặng HC, số tuần tự đích SN của nguồn và đích, IP header cũng như địa chỉ IP đích và nguồn của AODV, và chỉ số RREQ ID, là những yếu tố cần thiết để thực thi giao thức đúng đắn Sự sai sót của bất cứ trường nào kể trên cũng có thể khiến AODV gặp sự
cố Bảng sau ghi lại vài trường dễ bị phá hoại trong thông điệp định tuyến AODV và sự thay đổi khi chúng bị tấn công
Trang 20Bảng 2.2 Các trường gói tin AODV dễ bị tổn thương
Tên trường Sự thay đổi khi bị tấn công
RREQ mới
Số chặng - HC Nếu số tuần tự là giống, giảm đi để
cập nhật bảng chuyển tiếp của nút khác, hoặc tăng để bỏ cập nhật
IP header cũng như địa chỉ IP đích và
nguồn của AODV
Thay thế nó cùng với địa chỉ IP khác hoặc không có giá trị
Số tuần tự của đích và nguồn - SN Tăng lên để cập nhật bảng định tuyến
chuyến tiếp, hoặc giảm để bỏ cập nhật
Để thực hiện một cuộc tấn công lỗ đen trong giao thức AODV, nút độc hại chờ gói tin RREQ gửi từ các nút láng giềng của nó Khi nhận được gói RREQ, nó ngay lập tức gửi trả lời gói tin RREP với nội dung sai lệch trong đó thiết lập giá trị SN cao nhất và giá trị HC nhỏ nhất mà không thực hiện kiểm tra bảng định tuyến xem có tuyến đường tới đích nào không trước khi các nút khác (trong đó gồm các nút trung gian có tuyến đường hợp lệ hoặc chính nút đích) gửi các bảng tin trả lời tuyến Sau đó mọi dữ liệu truyền từ nút nguồn tới nút đích được nút độc hại loại bỏ (drop) toàn bộ thay vì việc chuyển tiếp tới đích thích hợp
Quay trở lại với Hình 2.1, nếu như M gửi RREQ, ( m1) tới C với số tuần
tự SN.Src là 200 (>100), nó chiếm lấy quyền ưu tiên của b1 Đường đi từ C tới
A sẽ đi qua M thay cho đi đến B Nút M có thể sau đó điều khiển đường đi giữa
A và D
2.2.3 Phân loại tấn công lỗ đen
Để thực hiện cuộc tấn công Black hole attack trong giao thức AODV, có thể phân loại theo hai cách: RREQ Black hole attack và RREP Black hole attack:
a RREQ Black hole attack
Trong kiểu tấn công này, kẻ tấn công có thể giả mạo gói tin RREQ để thực hiện tấn công lỗ đen Theo đó, kẻ tấn công đánh lừa bằng cách quảng bá gói tin RREQ với một địa chỉ của nút không có thật Các nút khác sẽ cập nhật
Trang 21bảng định tuyến của mình với tuyến đường tới đích thông qua nút không có thật này Vì vậy, tuyến đường tới đích sẽ bị đứt làm gián đoạn quá trình truyền thông giữa nút nguồn và nút đích Việc thực hiện quá trình giả mạo gói tin RREQ như sau:
- Thiết lập trường Type có giá trị 1;
- Thiết lập originator IP address có giá trị IP của nút nguồn phát sinh gói RREQ
- Thiết lập destination IP address có giá trị IP của nút đích
- Thiết lập địa chỉ IP nguồn (có trong tiêu đề gói tin IP) có giá trị là địa chỉ IP của nút không có thật (Nút lỗ đen)
- Tăng giá trị SN ít nhất lên một và giảm giá trị HC bằng một
Kẻ tấn công thực hiện tấn công lỗ đen giữa nút nguồn và nút đích bằng việc giả mạo gói tin RREQ được thể hiện trên Hình 2.3
Hình 2.2 Thực hiện tấn công lỗ đen bằng việc giả mạo gói tin RREQ
b RREP black hole attack
Cũng bằng việc giả mạo gói tin RREP, kẻ tấn công thực hiện như sau:
- Thiết lập trường Type là 2;
- Thiết lập giá trị HC bằng 1
- Thiết lập giá trị originator IP address với địa chỉ IP nút nguồn của tuyến đường và destination IP address với địa chỉ IP nút đích của tuyến đường
- Tăng giá trị SN ít nhất lên 1;
- Thiết lập source IP address (trong tiêu đề gói tin IP) với giá trị địa chỉ
IP của nút không có thật (Nút lỗ đen)
Kẻ tấn công đơn phát gói tin RREP giả mạo tới nút khởi tạo gói RREQ, khi nhận được gói tin giả mạo này, các nút tham gia vào quá trình khám phá
Trang 22tuyến sẽ cập nhật bảng định tuyến tuyến đường từ nút nguồn tới nút đích thông qua nút lỗ đen này Hình 2.4 thể hiện quá trình tấn công RREP black hole attack
Hình 2.3 Thực hiện tấn công lỗ đen bằng việc giả mạo gói tin RREP
2.3 Một số nghiên cứu về giải pháp phòng chống tấn công lỗ đen trong giao thức AODV
Đã có rất nhiều nghiên cứu về giải pháp chống tấn công lỗ đen trong giao thức định tuyến AODV Luận văn chọn hai giải pháp đã được công bố đó là Secure Ad hoc On-demand Distance Vector (SAODV) [8] và Giải pháp chống hợp tác tấn công lỗ đen dựa trên bảng dữ liệu thông tin định tuyến (DRI) và kiểm tra chéo (Cross Checking) [12]
SAODV giả định rằng mỗi nút trong mạng có một chữ ký số cung cấp từ một hệ thống mật mã khóa bất đối xứng để bảo mật các thông điệp định tuyến AODV Hơn nữa, mỗi nút có khả năng xác minh mối liên hệ giữa địa chỉ của nút
và khóa công khai của nút đó Do đó, cần phải có một lược đồ quản lý khóa cho giao thức SAODV SAODV sử dụng hai cơ chế để bảo mật các thông điệp định tuyến AODV:
- Chữ ký số để xác thực các trường không thay đổi trong các thông điệp định tuyến
- Chuỗi hàm băm để bảo vệ các thông tin về số chặng (thay đổi trong quá trình phát hiện tuyến)
Trang 23Đối với các trường không thay đổi, chứng thực có thể được thực hiện theo cách thức từ điểm tới điểm, tuy nhiên kỹ thuật này không thể áp dụng cho các trường thông tin thay đổi
Các thông điệp RREQ, RREP mở rộng thêm một số trường sau:
<Type, Length, Hash function, Max Hop Count, Top hash, Signature, Hash >
Thông điệp RRER mở rộng thêm các trường sau:
<Type, Length, Reserved, Signature >
Hình 2.4 Định dạng của thông điệp định tuyến RREQ (RREP) mở rộng Trong đó :
- Type: 64 cho RREQ và 65 cho RREP
- Length: Độ dài của thông điệp không bao gồm Type and Length
- Hash Function: Thuật toán hàm băm được sử dụng
- Max Hop Count: Số bước nhảy lớn nhất có thể hỗ trợ, sử dụng để xác
thực số bước nhảy
- Top Hash: Giá trị hàm băm tương ứng với số bước nhảy lớn nhất
- Signature Method: Thuật toán sử dụng trong chữ ký số
- Padding Length: Độ dài của phần số nhồi thêm
- Public Key: Khóa công khai của nút nguồn phát gói tin
- Padding: Số nhồi thêm
- Signature: Chữ ký số tính từ tất cả các trường không thay đổi của thông
điệp định tuyến
- Hash: Giá trị hàm băm tương ứng với số bước nhảy tại nút hiện tại
a) SAODV sử dụng chuỗi hàm băm để xác thực trường thay đổi của thông điệp:
số chặng (Hop count)
SAODV sử dụng các chuỗi hàm băm để xác thực Số chặng HC của RREQ
và RREP chuyển tiếp giữa các nút xung quanh trong quá trình thăm dò tuyến Một chuỗi hàm băm được hình thành từ hàm băm một chiều và một giá trị khởi
Trang 24đầu ngẫu nhiên Trong mọi thời điểm, một nút khởi tạo gói tin RREQ hoặc RREP nó thực hiện các tiến trình như sau:
- Khởi tạo một giá trị ngẫu nhiên seed
- Thiết lập trường Max_Hop_Count với giá trị TimeToLive (từ IP header)
Max_Hop_Count = TimeToLive
- Thiết lập trường Hash với giá trị seed vừa khởi tạo
Hash = seed
- Thiết lập trường Hash_Function định danh của hàm băm được sử dụng
được cho bởi Bảng 2.1
Bảng 2.2 Các giá trị có thể của trường Hash_Function
Value Hash function
0 Dự trữ
2 SHA1HMAC96
3 - 127 Dự trữ
128 - 255 Tùy thuộc cách triển khai
Giá trị hàm băm cao nhất (Top Hash) được tính nhờ sử dụng hàm băm “h”
và giá trị khởi đầu ngẫu nhiên
Hình 2.5 Cách tính hàm băm khi bắt đầu phát sinh RREQ hay RREP Khi nút tiếp nhận RREQ hoặc RREP thì nó sẽ xác minh số chặng như sau: tính hàm băm h số lần là n [n = (Số chặng - Số chặng của nút hiện thời)] rồi so
sánh với giá trị được chứa trong giá trị hàm băm cao nhất (Top Hash)
Trang 25Hình 2.6 Cách tính hàm băm tại nút trung gian Nút trung gian sau khi đã xác minh được tính toàn vẹn và xác thực, thì nó
sẽ chuẩn bị thông báo RREQ hoặc RREP
b) Xác thực các trường không thay đổi của thông điệp bằng chữ ký số
Khi một nút lần đầu tiên nhận RREQ, nó sẽ xác minh chữ ký trước khi tạo hoặc cập nhật một tuyến ngược lại tới nút nguồn Khi RREQ đến được nút đích, RREP sẽ được gửi với một chữ ký RREP Khi một nút nhận được RREP, thì đầu tiên nó sẽ xác minh chữ ký trước khi tạo hoặc cập nhật một tuyến tới nút nguồn Chỉ khi chữ ký được xác minh, thì nút sẽ lưu lại tuyến với chữ ký của RREP và thời hạn tồn tại
Khi việc thăm dò tuyến thành công, các nút nguồn và nút đích sẽ truyền thông theo các tuyến đã tìm được Nếu xuất hiện một liên kết hỏng trong mạng
do nút nào đó rời đi, thì thông báo lỗi tuyến RERR (Route Error) được tạo ra như trong AODV RERR cũng được bảo vệ bằng chữ ký số
2.3.2 Giải pháp chống hợp tác tấn công lỗ đen dựa trên bảng dữ liệu thông tin định tuyến (DRI) và kiểm tra chéo (Cross Checking)
Một nhóm các nhà khoa học bao gồm Sanjay Ramaswamy, Huirong Fu, Manohar Sreekantaradhya, John Dixon, and Kendall Nygard [12] đã công bố giải pháp để phát hiện việc hợp tác tấn công lỗ đen trong giao thức AODV vào năm 2003 Đây là một trong những giải pháp đầu tiên nghiên cứu việc các nút hợp tác tấn công lỗ đen Ý tưởng chính của giải pháp là thay đổi giao thức định tuyến AODV bằng cách bổ sung dữ liệu thông tin bảng định tuyến (DRI) và kiểm tra chéo
a) Bảng dữ liệu thông tin định tuyến (DRI)
Giải pháp xác định nhiều nút lỗ đen phối hợp hoạt động tấn công được bổ sung hai bit thông tin trả lời gói RREQ của nút nguồn Mỗi nút duy trì một bảng
dữ liệu thông tin định tuyến bổ sung Cấu trúc bảng DRI gồm 2 bit: bit đầu tiên
“From” xác định thông tin định tuyến từ nút nào (nhận 1 trong 2 giá trị 0 là
Trang 26FALSE và 1 là TRUE); bít thứ hai “Through” xác định thông tin định tuyến thông qua nút nào (nhận 1 trong 2 giá trị 0 là FALSE và 1 là TRUE)
Theo bảng trên, dòng thứ nhất có giá trị 1 0 đối với nút 3, tức là nút số 4
đã định tuyến dữ liệu đến từ nút 3 nhưng không định tuyến bất kỳ gói dữ liệu nào thông qua nút 3, dòng thứ 2 có giá trị 1 1 đối với nút 6, tức là nút 4 định tuyến dữ liệu đến từ nút 6 và thông qua nút này Dòng thứ 3 có giá trị 0 0 đối với nút B2, tức là nút 4 không định tuyến bất kỳ gói dữ liệu nào đến từ nút B2 và thông qua nút này…
b) Kiểm tra chéo
Theo [12] việc kiểm tra này lấy ý tưởng dựa vào các nút đáng tin cậy để chuyển tiếp các gói tin Các gói RREQ được gửi bởi nút nguồn tới mỗi nút và nó gửi dữ liệu tới những nút mà tại đó đã chuyển tiếp gói RREP Các nút trung gian (IN) sẽ gửi thông tin về các chặng tham gia vào tuyến đường này (Next Hop
Trang 27Node – NHN) và thông tin tuyến đường được lưu trong bảng DRI Nút nguồn (SN) kiểm tra DRI của nó và so sánh với DRI nhận được để xem xét IN nào là đáng tin cậy Sau đó, SN tiếp tục gửi yêu cầu tới chặng liền kề NHN của IN đang được xem xét để yêu cầu các thông tin như NHN hiện tại, DRI của IN và DRI của nó Nếu SN sử dụng IN để gửi dữ liệu thì nó được coi như là nút đáng tin cậy, nếu không thì ngược lại Kiểm tra chéo được thực hiện trên các nút trung gian Nó là một trong những thủ tục thời gian, do đó kéo theo chi phí kiểm tra chéo tăng lên Có thể làm giảm thiểu việc này bằng cách cho phép các nút chia
sẻ danh sách đáng tin cậy với nhau
2.3.3 Một số giải pháp khác
Ngoài ra còn một số giải pháp để giải quyết vấn đề tấn công lỗ đen trong giao thức AODV Payal N.Rai, Prashant B Swadas [11] đã đưa ra giao thức DPRAODV (phát hiện, phòng ngừa và phản ứng AODV), trong đó đòi hỏi nút nguồn khởi tạo một số thủ tục kiểm tra để xác định độ tin cậy của bất kỳ nút trung gian nào tuyên bố rằng nó có tuyến đường đủ mới tới đích Kỹ thuật chính
của thuật toán là kiểm tra số sequence number (SN) trong gói tin RREP nhận đầu tiên với giá trị SN trong bảng định tuyến của nó, RREP được chấp nhận nếu
số SN cao hơn giá trị trong bảng định tuyến của nó, đồng thời nó cũng so sánh
số SN này với một giá trị ngưỡng, nếu cao hơn giá trị ngưỡng thì nút đó coi như
là một nút độc hại Giá trị ngưỡng được tự động cập nhật trong một khoảng thời
gian và được tính bằng giá trị trung bình của các số SN khác nhau giữa bảng
định tuyến và trong gói tin RREP Các nút bị phát hiện này được coi là bất thường và đưa vào danh sách đen (blacklist) đồng thời phát gói tin ALARM sao cho gói RREP từ nút độc hại bị loại bỏ Giải pháp này dẫn đến việc tăng trễ trung bình và chi phí định tuyến trong mạng
Mohammad Al-Shurman, Yoo Seong-Moo và Seungjin Park [12] đề nghị
hai cách tiếp cận khác nhau để giải quyết vấn đề tấn công lỗ đen Giải pháp đầu
tiên được đưa ra là nút gửi cần phải xác minh tính xác thực của các nút khởi tạo
các gói RREP bằng cách sử dụng tính dự phòng của mạng Ý tưởng của giải pháp này là chờ đợi việc nhận gói RREP đến từ nhiều hơn hai nút Trong suốt quá trình chờ gói RREP trả lời từ các tuyến đường đó, nút nguồn vẫn tiếp tục đưa dữ liệu lên bộ đệm chờ đến khi xác định được tuyến đường an toàn sẽ bắt đầu gửi dữ liệu qua mạng Khi nút nguồn nhận một gói RREP nào đó nó sẽ trích xuất tuyến đường đầy đủ và chờ đợi các gói RREP còn lại Các nút trong tuyến
đường đã được trích xuất sẽ có chung các chặng (shared hop - dựa vào đặc tính
mạng Ad hoc, tuyến đường dự phòng trong hầu hết thời gian thường có chung
Trang 28các chặng hoặc các nút) Từ những chặng này, nút nguồn có thể nhận ra các tuyến đường an toàn tới đích Nếu không có những chặng dùng chung trong các
tuyến đường dự phòng, nút nguồn sẽ chờ đợi các gói RREP khác cho đến khi
một tuyến đường với các chặng dùng chung được xác định Giải pháp này có thể
đảm bảo tìm được một con đường an toàn đến đích, nhưng nhược điểm chính là tăng độ trễ trên mạng, Nhiều gói RREP phải được xử lý tại nút nguồn Ngoài ra,
nếu không xác định được các chặng dùng chung giữa các tuyến đường sẽ không thiết lập được tuyến đường Giải pháp thứ hai là khai thác số tuần tự có trong
nội dung tiêu đề của gói tin Như chúng ta đã biết mỗi gói tin trong MANET có một số sequence number duy nhất và tăng dần tức là các gói tin tiếp theo phải có giá trị số SN cao hơn gói tin hiện tại Thông thường trong quá trình định tuyến nút sẽ lưu giữ giá trị số SN trong gói tin cuối cùng mà nó đã nhận và sử dụng để kiểm tra việc nhận các gói tin liên tiếp có đến từ cùng một nguồn hay không Trong giải pháp này, mỗi nút cần lữu giữ thêm hai bảng có kích thước nhỏ, một
để lưu giá trị số SN cuối cùng trong gói tin cuối cùng gửi tới các nút và bảng còn lại lưu giá trị số SN cuối cùng trong gói tin cuối cùng nhận từ mỗi nút Những
bảng này được cập nhật khi có bất kỳ gói tin được nhận hay truyền đi Theo nguyên tắc, nút gửi sẽ gửi broadcast gói RREQ tới các láng giềng của nó Khi gói RREQ này tới đích, đích sẽ khởi tạo một gói RREP gửi trả lời nút nguồn, và
gói RREP này chứa giá trị số SN cuối cùng được nhận bởi nút nguồn Khi một
nút trung gian nhận được gới RREQ và tuyên bố có một tuyến đường đủ mới tới đích đồng nghĩa với việc nó trả lời nút nguồn một gói RREP trong đó phải có
cùng giá trị SN cuối cùng đã được lưu trữ trong bảng nói trên, nếu không đúng
giá trị thì nút sẽ phát một cảnh báo ALARM chỉ ra rằng có sự tồn tại của một nút
lỗ đen Giải pháp này cung cấp một cách nhanh chóng và đáng tin cậy để xác
định các bản tin trả lời đáng ngờ Ưu điểm của giải pháp này là không phải tăng
thêm chi phí cho tải toàn mạng bởi vì giá trị số SN được chứa trong tiêu đề gói
tin
Semih Dokurer [13], dựa trên ý tưởng hết sức đơn giản theo cơ chế làm
việc của giao thức AODV đó là kiểm tra số SN của gói tin RREP trả lời Nếu
trong mạng hiện diện nút lỗ đen thì ngay lập tức nút lỗ đen này sẽ trả lời gói tin
RREP với giá trị số SN được gán cao nhất và đương nhiên sẽ trả lời ngay lập tức
tới nút nguồn gửi yêu cầu RREQ Do đó, chỉ cần loại bỏ gói tin RREP đầu tiên
nhận được và chấp nhận gói tin RREP thứ hai với giá trị số SN cao nhất để thiết
lập tuyến đường truyền thông bằng cơ chế bộ đệm gói tin
Trang 29Tuy nhiên, trong một số trường hợp không phải bao giờ gói tin RREP với
giá trị số SN lớn nhất nhận đầu tiên cũng đến từ nút lỗ đen, đó là khi nút đích hay nút trung gian trả lời gói RREP với giá trị số SN lớn nhất có vị trí gần nút
đích hơn so với nút lỗ đen
Trong phạm vi nghiên cứu của mình, luận văn xin được trình bày ý tưởng của giải pháp và mô phỏng lại dựa trên mã nguồn viết bằng ngôn ngữ C được tác
giả chia sẻ tại http://www.dokurer.net/files/others/. Phần cài đặt mô phỏng tấn công lỗ đen và giải pháp làm giảm hiệu ứng của nút lỗ đen theo cách này sẽ được luận văn trình bày trong chương sau
Tóm lại, đã có nhiều nghiên cứu nhằm mục đích chống tấn công lỗ đen trong giao thức định tuyến AODV Tuy nhiên, để đảm bảo đáp ứng được tốt các yêu cầu bảo mật, toàn vẹn, tin cậy, xác thực nguồn gốc cần phải phối hợp nhiều
kỹ thuật như mã hóa, triển khai hệ thống PKI, sửa đổi các giao thức định tuyến riêng cho mạng MANET vừa linh hoạt đối với sự thay đổi vị trí các nút mạng vừa đảm bảo tính bảo mật của hệ thống
Việc so sánh các giải pháp và kỹ thuật được sử dụng để chống lại tấn công
lỗ đen trong giao thức AODV được trình bày trong Phụ lục D
2.4 Tổng kết
Chương này luận văn đã giới thiệu về giao thức định tuyến AODV, làm căn cứ đi vào giải thích chi tiết cách thức tiến hành tấn công lỗ đen trên giao thức định tuyến AODV Đồng thời luận văn chọn đi sâu vào mô tả hai giải pháp
đã được áp dụng để giải quyết vấn đề tấn công lỗ đen trên giao thức định tuyến AODV đó là sử dụng giao thức SAODV và giải pháp bổ sung bảng thông tin định tuyến (DRI) kết hợp với kiểm tra chéo (Cross Checking) Cuối chương luận văn trình bày giải pháp phát hiện dấu hiệu tấn công lỗ đen nhằm làm giảm ảnh hưởng của tấn công lỗ đen