Phân tích hiệu quả an ninh của hai giao thức saodv và aran trên mạng manet

Kỷ yếu Hội nghị KHCN Quốc gia lần thứ XI về Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin (FAIR); Hà Nội, ngày 09-10/8/2018  
DOI: 10.15625/vap.2018.00054  
PHÂN TÍCH HIỆU QUẢ AN NINH CỦA HAI GIAO THỨC SAODV VÀ ARAN  
TRÊN MẠNG MANET  
Lương Thái Ngọc 1,2, Lê Vũ 1,3, Võ Thanh Tú 1  
1 Khoa Công nghệ Thông tin, Trường Đại học Khoa học, Đại học Huế  
2
Khoa Sư phạm Toán - Tin, Trường Đại học Đồng Tháp  
3 Trường Đại học Sư phạm Kỹ thuật, Đại học Đà Nẵng  
TÓM TẮT: Một trong những thách thức của mạng MANET là vấn đề an toàn định tuyến. Nguyên nhân là các giao thức định tuyến  
nguyên bản (tiêu biểu là AODV) không được thiết kế nhằm mục đích an ninh. Để nâng cao an ninh, một số cải tiến từ AODV được  
đề xuất là SAODV và ARAN bằng cách sử dụng chữ ký số. Bài báo phân tích ưu và nhược điểm trong cơ chế an ninh của hai giao  
thức này. Từ đó, đề xuất một hình thức tấn công lỗ đen mở rộng (eBH) có thể gây hại cho giao thức SAODV. Kết quả mô phỏng cho  
thấy tấn công eBH làm giảm rất lớn tỷ lệ gửi gói tin thành công của giao thức SAODV.  
Từ khóa: AODV; ARAN, SAODV, chữ ký số, mạng tùy biến di động.  
I. GIỚI THIỆU  
Mạng tùy biến di động (MANET [1]) do các thiết bị di động kết nối với nhau không cần cơ sở hạ tầng. Mỗi thiết  
bị trong mạng có thể di chuyển theo mọi hướng, chúng kết hợp với nhau để gửi dữ liệu tới nút nằm ở xa khu vực kết  
nối. Định tuyến là một dịch vụ tại tầng mạng, gói tin được định tuyến đến đích dựa vào thông tin đường đi tại mỗi nút.  
Chúng được khám phá và duy trì nhờ vào các giao thức định tuyến. Do đặc tính di động mà các giao thức định tuyến  
theo yêu cầu rất phù hợp với mạng MANET, tiêu biểu là AODV (Ad hoc On-demand Distance Vector [2]) và DSR  
(Dynamic Source Routing [3]). Tuy nhiên, vấn đề là hai giao thức này được thiết kế để hoạt động với niềm tin rằng tất  
cả các nút láng giềng đều “thân thiện”. Chúng chủ yếu tập trung vào chức năng quan trọng là khám phá tuyến phục vụ  
cho việc định tuyến dữ liệu, mà không quan tâm đến vấn đề an ninh. Vì vậy, tin tặc đã khai thác một số lỗ hỏng an ninh  
để thực hiện nhiều hình thức tấn công mạng, tiêu biểu như: Blackhole [4], Sinkhole [5], Grayhole [6], Wormhole [7],  
Flooding [8] và Whirlwind [9]. Tấn công lỗ đen (Blackhole) nhằm mục đích phá hoại thực hiện với một hoặc nhiều nút  
độc hại, nếu sử dụng hai nút độc hại kết nối với nhau thì ta gọi là cộng tác tấn công [10]. Tấn công lỗ đen nhằm mục  
đích gây hại nên ảnh hưởng rất lớn đến hiệu năng mạng. Giao thức định tuyến theo yêu cầu là mục tiêu gây hại của  
hình thức thức tấn công này [11, 12]. Để ngăn chặn tấn công lỗ đen, hai giao thức là SAODV [13] và ARAN [14] đã  
được đề xuất. Tuy nhiên, cơ chế an ninh của chúng còn có điểm hạn chế, lỗ hỏng này có thể bị tin tặc khai thác để thực  
hiện hành vi tấn công mạng, tiêu biểu như hình thức tấn công eBH được đề xuất trong bài báo này.  
Cấu trúc của bài báo như sau: Phần II trình bày giao thức AODV và phương pháp tấn công lỗ đen truyền thống.  
Phần III trình bày chi tiết hai giải pháp an ninh là SAODV và ARAN. Phần IV trình bày giải pháp tấn công eBH trên  
trên giao thức SAODV. Phần V trình bày việc sử dụng NS2 để cài đặt, mô phỏng và đánh giá tác hại của tấn công lỗ  
đến đến tỷ lệ gửi gói thành công của hai giao thức AODV và SAODV. Cuối cùng là kết luận và hướng phát triển.  
II. KIẾN THỨC NỀN  
Phần này trình bày chi tiết thuật toán khám phá tuyến của giao thức định tuyến AODV và hình thức tấn công lỗ  
đen giao thức định tuyến AODV.  
2.1. Giao thức AODV  
Giao thức định tuyến AODV là tiêu biểu trên mạng MANET, được sử dụng trong nhiều nghiên cứu gần đây.  
Đây là giao thức định tuyến đa chặng, nên AODV phải thực hiện việc khám phá và duy trì tuyến trước khi định tuyến  
gói tin dữ liệu đến đích. Tuyến được chọn là tuyến có chi phí tốt nhất tương ứng số chặng (HC) nhỏ nhất. Để khám phá  
tuyến, AODV sử dụng thuật toán yêu cầu tuyến như Hình 1a) và thuật toán trả lời tuyến như Hình 1b).  
a) Yêu cầu tuyến  
Khi nút nguồn (NS) muốn gửi gói dữ liệu đến nút đích (ND) mà không có tuyến đến đích, NS tiến hành khám phá  
tuyến bằng cách phát quảng bá gói yêu cầu tuyến (RREQ) đến các nút láng giềng. Gói RREQ được thiết lập giá trị là  
[NS, ND, 0] tương ứng là địa chỉ nút nguồn, địa chỉ nút đích và chi phí định tuyến. Ngoài ra, mỗi nút khởi tạo định danh  
của lần quảng bá gói yêu cầu tuyến và lưu vào trường id_broadcast của gói RREQ. Khi nhận được gói yêu cầu tuyến,  
nút trung gian (Ni) xử lý gói RREQ như sau:  
Bằng cách kiểm tra định danh của lần khám phá tuyến và địa chỉ nguồn (id_broadcast, src_address) trong gói  
RREQ. Nút Ni có thể nhận biết gói RREQ đã xử lý rồi hoặc chưa. Nếu gói RREQ nhận được đã xử lý rồi thì Ni hủy gói  
RREQ và thuật toán kết thúc;  
414  
PHÂN TÍCH HIỆU QUẢ AN NINH CỦA HAI GIAO THỨC SAODV VÀ ARAN TRÊN MẠNG MANET  
Ngược lại, đây là gói RREQ đầu tiên nhận được, Ni lưu đường đi ngược về nguồn NS bằng cách thêm vào bảng  
định tuyến một thông tin định tuyến mới hoặc cập nhật lại tuyến nếu tuyến mới có chi phí tốt hơn; Tiếp theo, Ni ghi  
nhận gói RREQ đã xử lý bằng cách lưu (id_broadcast và src_add) vào bộ nhớ; tăng chi phí định tuyến lên 1 trước khi  
tiếp tục quảng bá gói RREQ. Ngoài ra, Ni có thể trả lời tuyến về nguồn nếu nó có tuyến đi đủ “tươi” đến đích.  
Quá trình xử lý và quảng bá gói RREQ lặp lại tại tất cả các nút trung gian khác, cho đến khi nút đích ND nhận  
được gói RREQ hoặc nút đích không tồn tại. Trong trường hợp nút đích nhận được gói RREQ, ND gửi gói trả lời tuyến  
(RREP) về nguồn, ngược lại quá trình khám phá tuyến thất bại do ND không tồn tại hoặc ND nằm ngoài vùng phủ sóng  
của các nút khác.  
a) Yêu cầu tuyến  
b) Trả lời tuyến  
Hình 1. Thuật toán khám phá tuyến của giao thức AODV  
b) Trả lời tuyến  
Nút đích trả lời tuyến bằng cách gửi gói RREP về nguồn theo hình thức đơn hướng (unicast). Để trả lời tuyến,  
nút đích sử dụng thông tin tuyến ngược đã lưu trong giai đoạn xử lý gói RREQ. Nội dung gói RREP được thiết lập là  
[ND, NS, 0] tương ứng với địa chỉ nút đích, địa chỉ nút nguồn và chi phí định tuyến. Khi nhận được gói trả lời tuyến, nút  
trung gian (Ni) xử lý gói RREP như sau:  
Nút trung gian Ni lưu tuyến đến đích ND vào bảng định tuyến hoặc cập nhật lại tuyến nếu tuyến mới có chi phí  
tốt hơn;  
Nếu Ni là nút nguồn thì quá trình khám phá tuyến thành công, thuật toán kết thúc, nút nguồn gửi gói dữ liệu  
(DP) đang chờ trong hàng đợi đến đích; Ngược lại, Ni tăng chi phí định tuyến trong trường hợp_count của gói RREP  
lên 1, tiếp tục chuyển tiếp gói RREP về nguồn dựa vào thông tin trong bảng định tuyến của nó;  
Trong trường hợp nút trung gian Ni không tìm thấy tuyến ngược về nguồn thì gói RREP sẽ bị hủy nếu hết thời  
gian sống, quá trình khám phá tuyến thất bại.  
2.2. Tấn công lỗ đen  
Tấn công lỗ đen nhằm mục đích hủy hoại các gói tin dữ liệu của các luồng UDP, còn luồng TCP thì bị gián  
đoạn vì không nhận được tính hiệu ACK từ nút đích. Để thực hiện tấn công lỗ đen, nút độc hại thực hiện qua hai giai  
đoạn: Giai đoạn 1, nút độc hại tự quảng cáo cho nút nguồn rằng bản thân nó có tuyến đường đến đích với chi phí tốt  
nhất, nhờ vậy mà nút độc hại có thể đánh lừa nút nguồn thiết lập tuyến đến nút đích thông qua chính nó. Giai đoạn 2,  
nút độc hại nhận tất cả gói tin từ nguồn chuyển đến và huỷ tất cả nên đây được gọi là hình thức tấn công phá hoại.  
Trong cộng tác tấn công lỗ đen thì gói tin dữ liệu được chuyển tiếp đến nút thứ hai và bị huỷ tại nút này nhằm tránh bị  
phát hiện. Để thực hiện được ý đồ là đánh lừa nút nguồn rằng bản thân nó có tuyến đường đến đích với chi phí tốt nhất,  
Lương Thái Ngọc, Lê Vũ, Võ Thanh Tú  
415  
nút độc hại thay đổi thông số của gói trả lời tuyến RREP gồm: Chi phí định tuyến nhỏ nhất (HC = 1); và số thứ tự nút  
đích (DSN) phải đủ lớn để tuyến là mới nhất.  
III. GIAO THỨC CẢI TIẾN AN NINH  
Để ngăn chặn tấn công lỗ đen, hai giao thức tiêu biểu dựa trên chữ ký số đã được đề xuất là SAODV và ARAN.  
Cả hai giao thức sử dụng chữ ký số để bảo vệ các trường không thay đổi. Do HC thay đổi mỗi khi chuyển tiếp qua một  
nút trung nên SAODV sử dụng giải pháp chuỗi băm để bảo vệ trường HC. ARAN loại bỏ HC trong gói khám phá  
tuyến và loại bỏ chức năng trả lời tuyến tại nút trung gian.  
3.1. Giao thức SAODV  
Giao thức SAODV [13] được cải tiến từ AODV nhằm mục đích an ninh bằng cách sử dụng hệ mã khóa công  
khai RSA kết hợp hàm băm. SAODV sử dụng hai cơ chế kiểm tra an ninh (1) Xác thực chữ ký số và (2) Kiểm tra chi  
phí định tuyến. Nút chỉ chấp nhận gói điều khiển tuyến (gói RREQ và RREP) nếu chữ ký của nguồn hợp lệ và chi phí  
định tuyến không bị thay đổi. Cấu trúc gói tin điều khiển tuyến của giao thức SAODV như mô tả trong Hình 2a) và  
2b).  
a) RREQ  
b) RREP  
Hình 2. Gói tin điều khiển tuyến của giao thức AODV [13]  
a) Xác thực chữ ký số  
Cơ chế xác thực chữ ký số cho phép nút nhận kiểm tra chữ ký số của nút nguồn (hoặc đích) trong gói tin RREQ  
(hoặc RREP). Mỗi nút mạng (Ni) được thiết lập một bộ khóa bí mật (kNi-) và công khai (kNi+). Nút nguồn băm thông  
tin các trường không thay đổi của gói RREQ, kết quả băm được mã hóa bằng khóa bí mật của nguồn như công thức 1,  
đây là chữ ký số của nguồn. Chữ ký số được lưu vào trường sign trước khi quảng bá gói RREQ để yêu cầu tuyến.  
RREQ.Sign = En (h (RREQ.Fields), kNs−)  
(1)  
Khi nhận gói RREQ, nút trung gian (hoặc đích) sử dụng khóa công khai của nút nguồn được gửi kèm theo để  
giải mã chữ ký số như công thức 2. Kết quả giải mã (value_de) được so sánh với giá trị băm của các trường không thay  
đổi trong gói RREQ. Nếu hai giá trị này bằng nhau thì chữ ký số của nút nguồn là hợp lệ, nút chấp nhận gói RREQ và  
tiếp tục quảng bá cho đến khi nút đích nhận được gói RREQ.  
value_de = De(RREQ.Sign, kNs+)  
(2)  
Tương tự, trước khi gửi gói RREP để trả lời tuyến, nút đích ký lên giá trị băm của các trường không thay đổi  
trong gói RREP bằng khóa bí mật (kND-) sử dụng công thức 3. Kết quả sau khi ký được lưu vào trường Sign của gói  
RREP.  
RREP.Sign = En(h(RREP.Fields), kND-)  
(3)  
Khi nhận gói RREP, nút trung gian (hoặc nguồn) sử dụng khóa công khai (kND+) của nút đích để giải mã như  
công thức 4. Kết quả giải mã (value_de) được so sánh với giá trị băm của các trường không thay đổi của gói RREP.  
Nếu hai giá trị này bằng nhau thì chữ ký của nút đích là hợp lệ, nút chấp nhận gói RREP và tiếp tục chuyển tiếp về  
nguồn cho đến khi nút nguồn nhận được gói RREP.  
value_de = De(RREP.Sign, kND+)  
(4)  
b) Kiểm tra chi phí định tuyến  
Cơ chế xác thực chữ ký số chỉ cho phép kiểm tra toàn vẹn thông tin của những trường không thay đổi trong gói tin điều  
khiển tuyến. Do giá trị của trường HC thay đổi mỗi khi chuyển tiếp qua nút trung gian để tính chi phí định tuyến. Nên  
cơ chế xác thực chữ ký số không thể ngăn chặn một nút độc hại thay đổi giá trị của trường HC. Vì vậy, SAODV sử  
dụng chuỗi băm để bảo vệ trường HC. Nút nguồn (hoặc đích) bảo vệ trường HC của gói RREQ (hoặc gói RREP) như  
sau:  
Đầu tiên, nút khởi tạo một giá trị ngẫu nhiên Seed và lưu vào trường Hash của gói điều khiển tuyến. Đồng thời, thiết  
lập vào trường Hash_Function tên hàm băm đã sử dụng.  
416  
PHÂN TÍCH HIỆU QUẢ AN NINH CỦA HAI GIAO THỨC SAODV VÀ ARAN TRÊN MẠNG MANET  
Tiếp theo, nút băm giá trị ngẫu nhiên đã khởi tạo tại bước trên MAX_HOP_COUNT lần như công thức 5, kết quả băm  
được lưu vào trường Top_Hash.  
Top_Hash = hMAX_HOP_COUNT(seed)  
(5)  
Khi nút trung gian nhận gói điều khiển tuyến, nút thực hiện theo các bước sau để kiểm tra giá trị của trường HC:  
Đầu tiên, nút sử dụng hàm băm được lưu trong trường Hash_Function để băm giá trị của biến ngẫu nhiên được lưu  
trong trường Hash (MAX_HOP_COUNT - HC) lần như công thức 6.  
val_hsh = hMAX_HOP_COUNT - HC(Hash)  
(6)  
Tiếp theo, nút kiểm tra nếu giá trị băm val_hsh bằng với giá trị của trường Top_Hash thì chi phí định tuyến là  
hợp lệ; ngược lại, chi phí định tuyến đã bị thay đổi.  
Trước khi tiếp tục quảng bá gói RREQ (hoặc gửi gói RREP), nút trung gian băm giá trị của trường Hash và lưu kết quả  
lại chính nó như công thức 7.  
Hash = h(Hash)  
(7)  
Quan sát cơ chế khám phá tuyến của giao thức SAODV, chúng ta thấy rằng nút trung gian không thể trả lời tuyến một  
khi nó có tuyến hiệu lực đến đích. Nguyên nhân là do nút trung gian không có khóa bí mật của nút đích để ký. Hạn chế  
này được tác giả khắc phục trong phiên bản tiếp theo bằng cách sử dụng chữ ký đôi [13, 15]. Ý tưởng là khi quảng bá  
gói yêu cầu tuyến, nút nguồn thêm chữ ký số thứ 2 vào gói RREQ. Khi nhận gói RREQ, nút trung gian lưu thông tin  
định tuyến về nguồn kèm với chữ ký số thứ 2 vào bảng định tuyến như Hình 3. Một khi nhận được gói yêu cầu tuyến,  
nút trung gian có thể gửi gói trả lời tuyến về nguồn kèm với chữ ký số và khóa công khai của nút đích trong bảng định  
tuyến. Gói RREQ được bổ sung thêm trường Signature_2 để lưu chữ ký thứ hai của nguồn, gói RREP cũng được bổ  
sung thêm trường Signature_2 để lưu chữ ký số của nút đích khi nút trung gian trả lời tuyến. Trong trường hợp nút đích  
trả lời tuyến thì gói RREP không cần thêm chữ ký số thứ hai.  
Bảng định tuyến  
Node NH HC SN Chữ ký Khóa  
N5  
N2  
N7  
N6  
N5  
N2  
N8  
N5  
1
3
5
4
15 SigN5  
13 SigN1  
14 SigN7  
18 SigN6  
kN5+  
kN1+  
kN7+  
kN6+  
Hình 3. Mô tả cấu trúc bảng định tuyến của giao thức SAODV  
Như vậy, giao thức SAODV có thể ngăn ngừa hầu hết các hình thức tấn công hiện tại nhờ vào cơ chế xác thực  
chữ ký số và kiểm tra chi phí định tuyến. Tuy nhiên, SAODV tồn tại một số nhược điểm sau:  
Giao thức SAODV chỉ hỗ trợ xác thực đầu-cuối nên nút trung gian không thể xác thực nút tiền nhiệm ([16],  
trang 478). Vì vậy, SAODV không thể phát hiện một nút độc hại chuyển tiếp gói tin và không làm tăng chi phí định  
tuyến (tấn công lỗ sâu ở chế độ ẩn [17]).  
Đặc biệt, SAODV không có cơ chế quản lý khóa công khai. Một nút độc hại có thể tấn công mạng bằng việc  
sử dụng bộ khóa giả mạo.  
3.2. Giao thức ARAN  
Giao thức ARAN [14] nhằm mục đích nâng cao an ninh sử dụng chữ ký số. ARAN cải thiện hơn SAODV ở hai  
điểm là: (1) Hỗ trợ cơ chế quản lý khóa công khai bằng cách sử dụng một máy chủ T để quản lý và cấp chứng chỉ số  
của nút; (2) ARAN sử dụng phương pháp xác thực tại mỗi nút (HbH), điều này cho phép nút xác thực được nút tiền  
nhiệm (PN) khi nhận gói điều khiển tuyến.  
Ý tưởng của giao thức ARAN là trước khi tham gia vào mạng, mỗi nút phải được cấp một chứng chỉ số. Chứng  
chỉ số bao gồm địa chỉ (IPA), khóa công khai (KA+), thời gian chứng chỉ được khởi tạo (t), thời gian chứng chỉ hết hiệu  
lực (e), tất cả thông tin được ký (ký hiệu là [thông tin]khóa bí mật) bằng khóa bí mật của T(KT-) như mô tả trong (8).  
T
A : certA = [IPA, KA+, t, e] KT-  
(8)  
a) Quảng bá gói yêu cầu tuyến  
Nút nguồn (A) khởi động quá trình khám phá tuyến đến nút đích (X) bằng cách quảng bá gói khám phá tuyến  
(RDP) như mô tả trong (9). Chi tiết gói RDP gồm địa chỉ nút đích (IPX), chứng chỉ số của nút nguồn (certA), thời gian  
hiện tại (t) và bộ đếm (NA) tự tăng sau mỗi lần khám phá tuyến. Bộ giá trị IPX và NA được nút sử dụng để loại bỏ các  
gói RDP đã xử lý rồi.  
Abroacdcast :[RDP, IPX, certA, NA, t] KA-  
(9)  
Lương Thái Ngọc, Lê Vũ, Võ Thanh Tú  
417  
Khi nhận được gói RDP, nút sử dụng khóa công khai của nút nguồn (KA+) trong chứng chỉ số certA để xác thực  
chữ ký và hiệu lực của chứng chỉ. Ngoài ra, nút sử dụng bộ giá trị IPX, NA để loại bỏ các gói RDP đã xử lý rồi. Nếu gói  
RDP được xác nhận là hợp lệ thì nút ký nội dung của gói RDP nhận được và thêm chứng chỉ của nó vào gói RDP trước  
khi tiếp tục quảng bá. Điều này, cho phép nút nhận gói xác thực chữ ký của nút PN. Giả sử B là nút láng giềng nhận  
được gói RDP từ A, sau khi xác thực thành công gói RDP được tiếp tục quảng bá như mô tả trong 10.  
Bbroadcast: [[RDP, IPX, certA, NA, t] KA-]KB-, certB  
(10)  
Khi nhận được gói RDP từ nút B, nút C sử dụng khóa công khai của nút PN (KB+) trong chứng chỉ số certB để  
xác thực chữ ký. Nếu gói RDP được xác nhận là hợp lệ thì C thay chứng chỉ của B thành chứng của C, ký lại nội dung  
của gói RDP do nguồn gửi trước khi tiếp tục quảng bá như mô tả trong (11).  
Bboardcast: [[RDP, IPX, certA, NA, t] KA-]KC-, certC  
(11)  
Sau khi được C quảng bá, gói RDP tiếp tục được xử lý tại các nút trung gian khác cho đến khi đến đích. Mỗi nút  
xử lý gói RDP theo các bước tương tự tại C gồm: chứng thực chữ ký của nút PN, thay chứng chỉ của nút PN thành  
chứng chỉ của nút hiện tại và ký nội dung của gói RDP do nguồn gửi trước khi tiếp tục quảng bá.  
b) Trả lời tuyến  
Khi nhận gói RDP, nút đích gửi gói trả lời tuyến (REP) về nguồn. Nút đích tìm entry trong bảng định tuyến của  
nó để biết thông tin định tuyến về nguồn. Giả sử X cần định tuyến gói REP về nguồn thông qua D, X sẽ gửi gói REP  
như mô tả trong (12). Gồm địa chỉ nút nguồn (IPA), chứng chỉ số của nút đích (certX), thời gian hiện tại (t) và bộ đếm  
(NA) do nguồn gửi đến trong gói RDP.  
X
D : [REP, IPA, certX, NA, t]KX-  
(12)  
Khi nhận được gói REP đến từ nút đích X, nút trung gian D tìm entry trong bảng định tuyến của nó để biết  
thông tin định tuyến về nguồn. Đồng thời, D ký gói REP bằng khóa bí mật (KD-) của nó và thêm chứng chỉ (certD) vào  
gói REP trước khi chuyển tiếp về nguồn. Giả sử D cần chuyển tiếp gói REP về nguồn thông qua NH là C, nút D sẽ gửi  
gói REP đến C như mô tả trong (13).  
D
C : [[REP, IPA, certX, NA, t]KX-]KD-, certD  
(13)  
Khi nhận được gói REP, nút trung gian C xác thực chữ ký của nút D. Nếu chữ ký là hợp lệ, C tìm entry trong  
bảng định tuyến của nó để biết thông tin định tuyến về nguồn. Đồng thời, C ký gói REP do nút đích gửi bằng khóa bí  
mật (KC-) của nó và thay chứng chỉ của nút PN thành chứng chỉ của nó (certC) vào gói REP trước khi chuyển tiếp về  
nguồn. Giả sử C cần chuyển tiếp gói REP về nguồn thông qua NH là B, nút C sẽ gửi gói REP đến B như mô tả trong  
(14).  
C
B: [[REP, IPA, certX, NA, t]KX-]KC-, certC  
(14)  
Sau khi được C chuyển tiếp, gói REP tiếp tục được xử lý tại các nút trung gian khác cho đến khi về nguồn. Mỗi  
nút xử lý gói REP theo các bước tương tự tại C gồm: chứng thực chữ ký của nút PN, thay chứng chỉ của nút PN thành  
chứng chỉ của nút hiện tại và ký nội dung của gói REP do đích gửi trước khi tiếp tục chuyển tiếp gói REP về nguồn  
thông qua NH. Khi nút nguồn A nhận được gói REP, A sẽ xác thực chữ ký số của nút PN và nút đích X trước khi thiết  
lập tuyến đến đích.  
Như vậy, giao thức ARAN hỗ trợ cơ chế quản lý khóa công khai bằng cách cấp chứng chỉ số cho mỗi nút và sử  
dụng phương pháp xác thực HbH. Nhờ vậy mà nút có thể xác thực nút PN khi nhận gói điều khiển tuyến và ngăn chặn  
nút độc hại tấn công bằng cách sử dụng khóa giả mạo. Do đó, hiệu quả an ninh của giao thức ARAN tốt hơn SAODV.  
Tuy nhiên, ARAN tồn tại một số nhược điểm sau:  
Giao thức ARAN, bất kỳ sự thay đổi thông tin của gói trong quá trình chuyển tiếp đều bị nút trung gian xem là  
không hợp lệ và bị hủy bỏ, từ đó giúp ngăn chặn tấn công. Do đó, ARAN không thể tích hợp HC vào gói RDP và REP  
để tính chi phí vì HC sẽ tăng mỗi khi được chuyển tiếp qua một nút.  
Giao thức ARAN không cho phép nút trung gian trả lời tuyến về nguồn cho dù nó tuyến hợp lệ đến đích.  
Nguyên nhân là nút trung gian không thể ký trên gói REP trước khi gửi về nguồn do nó không có khóa bí mật của nút  
đích.  
Tương tự SAODV, ARAN không thể ngăn ngừa tấn công lỗ sâu ở chế độ ẩn. Nguyên nhân là do ở chế độ ẩn,  
nút độc hại chỉ đơn giản là chuyển tiếp gói tin đến nút kế tiếp mà không thay đổi thông tin. [18, 19]  
IV. TẤN CÔNG LỖ ĐEN GIAO THỨC SAODV  
Bài báo để xuất một hình thức tấn công lỗ đen mở rộng (eBH) nhằm mục đích tấn công giao thức SAODV.  
Điểm khác biệt so với tấn công lỗ đen là tại giai đoạn nút độc hại đánh lừa nút nguồn rằng bản thân nút độc hại có  
tuyến đường đến đích với chi phí tốt nhất. Để làm được điều này, khi nhận được gói yêu cầu tuyến, nút độc hại ngay  
lập tức gửi gói trả lời tuyến RREP về nguồn. Gói RREP được thiết lập các giá trị như sau:  
418  
PHÂN TÍCH HIỆU QUẢ AN NINH CỦA HAI GIAO THỨC SAODV VÀ ARAN TRÊN MẠNG MANET  
Tương tự tấn công lỗ đen, giá trị HC = 1 cho biết tuyến có chi phí tốt nhất và DSN = 4294967295 cho biết  
tuyến tươi nhất;  
Khởi tạo bộ khóa giả mạo gồm (fe, fN) và (fd, fN), lưu khóa công khai giả mạo kèm theo gói trả lời tuyến;  
Khởi tạo giá trị ngẫu nhiên (seed) và lưu giá trị của biến seed vào trường hash;  
Sử dụng hàm băm mà nút nguồn đã sử dụng được quy định trong trường hash_function của gói RREQ, băm giá  
trị biến seed MAX_HOP_COUNT lần và lưu vào trường top_hash của gói RREP;  
Băm thông tin của các trường không thay đổi của gói trả lời tuyến, mã hóa giá trị băm bằng khóa bí mật giả mạo  
(fd, fN), lưu kết quả vào trường Sign của gói RREP trước khi gửi về nguồn.  
Mã lệnh được cài đặt trong thủ tục trả lời tuyến sendReply() như Hình 4. Trong đó: getRdmKey() là hàm khởi  
tạo giá trị ngẫu nhiên, BHSAODV_MAX_HC là MAX_HOP_COUNT của giao thức SAODV, fSHA() là hàm băm  
SHA1, HashRREP() là hàm cho phép băm thông tin của gói RREP sử dụng SHA1, encryption() là hàm mã hóa trong  
hệ mã RSA.  
Hình 4. Mã lệnh thiết lập cho gói RREP giả mạo  
V. ĐÁNH GIÁ KẾT QUẢ BẰNG MÔ PHỎNG  
Bài báo sử dụng NS-2.35 [20] để đánh giá tác hại của hình thức tấn công eBH trước giao thức SAODV. Phạm  
vi mô phỏng 2000m*2000m, thời gian mô phỏng là 1000 giây, tô-pô mạng có 100 nút di chuyển ngẫu nhiên theo mô  
hình Random Way Point [21]. Vận tốc di chuyển tối đa là 30m/s, nút độc hại đứng yên tại vị trí trung tâm (1000m,  
1000m) như Hình 5 và thực hiện hành vi tấn công từ giây thứ 500. Giao thức định tuyến là AODV và SAODV, giao  
thức vận chuyển UDP, mỗi tô pô mạng sử dụng 10 nguồn phát CBR, nguồn đầu tiên bắt đầu phát tại giây thứ 0, các  
nguồn phát tiếp theo cách nhau 5 giây, chi tiết thông số trong Bảng 1.  
Bảng 1. Thông số mô phỏng  
Thông số  
Giá trị  
Khu vực địa lý  
Thời gian mô phỏng  
Tổng số nút mạng  
2000m x 2000m  
1000s  
101 (1 nút độc hại)  
Vận tốc di chuyển (m/s) 1..30  
Dạng truyền thông  
Số kết nối  
CBR (Constant Bit Rate)  
10 UDP  
Kích thước gói tin  
Hàng đợi  
512(bytes)  
FIFO (DropTail)  
AODV, SAODV  
31, 37  
Giao thức định tuyến  
Số nguyên tố (p, q)  
Hàm băm  
SHA1 [22]  
Hình 5. Giao diện mô phỏng trên NS2  
Lương Thái Ngọc, Lê Vũ, Võ Thanh Tú  
419  
Biểu đồ tỷ lệ gửi gói tin thành công tại Hình 6 cho thấy rằng sau 1000 giây mô phỏng trong môi trường mạng  
bình thường thì tỷ lệ gửi gói tin thành công (PDR) của giao thức AODV là 71.04% và SAODV là 62.91%, do cơ chế  
an ninh nên PDR của SAODV thấp hơn giao thức gốc 8.13%. Tấn công lỗ đen đã ảnh hưởng đến hiệu quả định tuyến  
của cả hai giao thức, PDR của hai giao thức giảm xuống rất nhanh kể từ sau giây thứ 500. Kết thúc mô phỏng thì PDR  
của AODV là 35.54% và SAODV là 34.33%, lần lượt thấp hơn 35.50% và 28.58% so với môi trường mạng bình  
thường. Điều này cho thấy rằng hình thức tấn công eBH đã gây hại thành công giao thức SAODV.  
Hình 6. Biểu đồ tỷ lệ gửi gói tin thành công  
Biểu đồ tại Hình 7 cho thấy rằng phụ tải định tuyến (RL) của giao thức SAODV cao hơn AODV trong cả hai  
môi trường bình thường và bị tấn công lỗ đen. Kết thúc 1000 giây mô phỏng trong môi trường mạng bình thường thì  
RL của AODV là 16.98 gói và SAODV là 17.17 gói, trong môi trường bị tấn công lỗ đen thì RL của AODV là 20.73  
gói và SAODV 22.33 gói. Kết quả cho thấy rằng, trong môi trường mạng bình thường, để định tuyến thành công một  
gói dữ liệu đến đích thì giao thức AODV phải xử lý trung bình 20.73 gói, thấp hơn SAODV 0.19 gói. Trong môi  
trường bị tấn công lỗ đen thì RL của AODV thấp hơn 1.6 gói.  
Hình 7. Biểu đồ phụ tải định tuyến  
Biểu đồ Hình 8 cho thấy rằng trong môi trường mạng bình thường thì thời gian trễ trung bình (EtE) để định  
tuyến thành công một gói dữ liệu đến đích của AODV là 0.927 giây và SAODV là 1.81 giây. Trong môi trường bị tấn  
công lỗ đen thì EtE của SAODV là 1.931 giây và AODV là 0.891 giây. Điều này cho thấy rằng cơ chế an ninh của giao  
thức SAODV đã ảnh hưởng đến EtE của giao thức gốc.  
Hình 8. Biểu đồ thời gian trễ trung bình  
420  
PHÂN TÍCH HIỆU QUẢ AN NINH CỦA HAI GIAO THỨC SAODV VÀ ARAN TRÊN MẠNG MANET  
VI. KẾT LUẬN  
Bài báo đã phân tích chi tiết hai giao thức định tuyến an ninh dựa trên chữ ký số là SAODV và ARAN. Cơ chế  
an ninh của hai giao thức chỉ bảo vệ các trường không thay đổi của gói điều khiển tuyến, SAODV bảo vệ HC bằng  
chuỗi băm, ARAN loại bỏ HC nên không thể xác định được chi phí đến đích và nút trung gian không thể trả lời tuyến.  
Một số trường thay đổi của gói điều khiển tuyến đã không được bảo vệ, đây là điểm yếu có thể bị tin tặc lợi dụng để  
thực hiện hành vi tấn công mạng. Giải pháp tấn công lỗ đen sử dụng khóa giả mạo đã gây hại đến PDR của giao thức  
SAODV, nhưng không gây hại được giao thức ARAN. Nguyên nhân là ARAN có thể phát hiện nút độc hại sử dụng  
khóa giả mạo bằng cách so sánh với khóa công khai trong chứng chỉ số. Kết quả mô phỏng đã cho thấy rằng PDR của  
AODV giảm 35.5% khi bị tấn công lỗ đen và SAODV giảm 28.58% khi bị tấn công lỗ đen mở rộng.  
VII. TÀI LIỆU THAM KHẢO  
[1] Hoebeke J., Moerman I., Dhoedt B., Demeester P.. “An Overview of Mobile Ad Hoc Networks: Applications and  
Challenges”. Journal of the Communications Network, Vol. 3(3), pp. 60-66, 2004.  
[2] Perkins C. E. and Royer E. M.. “Ad-hoc On-Demand Distance Vector Routing”. Proceedings of the Second IEEE  
Workshop on Mobile Computer Systems and Applications, pp. 90-100, 1999.  
[3] Johnson D. B., Maltz D. A.. “Dynamic Source Routing in Ad Hoc Wireless Networks”. The Kluwer International  
Series in Engineering and Computer Scienc, Vol. 353, pp. 153-181,1996.  
[4] Nagrath P., Aneja S., Gupta N., Madria S.. “Protocols for mitigating Blackhole attacks in delay tolerant  
networks”. Wireless Networks, Vol. 22(1), pp. 235-246, 2016.  
[5] Tomar S. P. S., Chaurasia B. K.. “Detection and Isolation of Sinkhole Attack from AODV Routing Protocol in  
MANET”. International Conference on Computational Intelligence and Communication Networks, pp. 799-802,  
2014.  
[6] Gurung S., Chauhan S.. “A novel approach for mitigating gray hole attack in MANET”. Wireless Networks, Vol.  
24(2), pp. 565 - 579, 2018.  
[7] Tu T. Vo, Ngoc T. Luong, Doan Hoang. “MLAMAN: a novel multi-level authentication model and protocol for  
preventing wormhole attack in mobile ad hoc network”. Wireless Networks, pp. 1-18, 2018.  
[8] Vo Thanh Tu, Luong Thai Ngoc, “SMA2AODV: Routing protocol reduces the harm of Flooding attacks in  
Mobile Ad hoc Network”, Journal of Communications, Vol. 12(6), pp. 371-378, 2017.  
[9] Luong Thai Ngoc, Vo Thanh Tu. “Whirlwind: A new method to attack Routing Protocol in Mobile Ad hoc  
Network”. International Journal of Network Security, Vol. 19(5), pp. 832-838, 2017.  
[10] Weerasinghe H., Fu H.. “Preventing Cooperative Black Hole Attacks in Mobile Ad Hoc Networks: Simulation  
Implementation and Evaluation”. Future Generation Communication and Networking (FGCN 2007), Vol. 2, pp.  
362-367, 2007.  
[11] Shahabi S., Ghazvini M., Bakhtiarian M.. “A modified algorithm to improve security and performance of AODV  
protocol against black hole attack”. Wireless Networks, Vol. 22(5), pp. 1505-1511, 2016.  
[12] Thillaikarasi R., Bhanu S. M. S.. “An Efficient DSR Protocol to Detect Blackhole Attacks in WMN Using Cross  
Layer Approach”. Wireless Personal Communications, Vol. 95(3), pp. 3477-3492, 2017.  
[13] Zapata M. G., Asokan N.. “Securing ad hoc routing protocols”. In Proceedings of the 1st ACM workshop on  
Wireless security (WiSE ’02). ACM, New York, NY, USA, 1-10, 2002.  
[14] Sanzgiri K., Dahill B., Levine B. N., Shields C., Royer E. M. B.. “A secure routing protocol for Ad hoc  
Networks”. 10th IEEE International Conference on Network Protocols, pp. 78-87, 2002.  
[15] Zapata M. G.. “Secure Ad hoc On-Demand Distance Vector (SAODV) Routing”. Mobile Ad Hoc Networking  
Working Group, 2004.  
[16] Yan Z., Honglin H., Masayuki F.. Resource, Mobility, and Security Management in Wireless Networks and  
Mobile Communications. CRC Press, 618 pages, 2006.  
[17] Mulert J. V., Welch I., Seah W. K. G.. “Security threats and solutions in MANETs: A case study using AODV  
and SAODV”. Journal of Network and Computer Applications, Vol. 35(4), pp. 1249-1259, 2012.  
[18] Celia L., Zhuang W., Cungang Y.. “SEAODV: A Security Enhanced AODV Routing Protocol for Wireless Mesh  
Networks”. Transactions on Computational Science XI, Vol. 6480, pp. 1-16, 2010.  
[19] Khabbazian M., Mercier H., Bhargava V. K.. “Wormhole Attack in Wireless Ad Hoc Networks: Analysis and  
Countermeasure”. IEEE Globecom 2006, Vol. 8(2), pp. 736 - 745, 2006.  
Lương Thái Ngọc, Lê Vũ, Võ Thanh Tú  
421  
[21] Bettstetter C., Resta G., Santi P.. “The node distribution of the random waypoint mobility model for wireless ad  
hoc networks”. IEEE Transactions on Mobile Computing, Vol. 2(3), pp. 257-269, 2003.  
[22] National Institute of Standards and Technology. “Secure hash standard”. FIPS PUB 180-1, 1995. Available:  
EVALUATION PERFORMANCE OF SAODV AND ARAN ROUTING PROTOCOLS  
IN MOBILE AD HOC NETWORK  
Luong Thai Ngoc, Le Vu, Vo Thanh Tu  
ABSTRACT: One of the challenges of the MANET network is the routing security. The cause is that the original routing protocols  
in MANET are not designed for security purposes, typically AODV. For enhanced security, there are some improved protocols from  
AODV using digital signatures including SAODV and ARAN. In this paper, we analyze their security mechanisms detaily and shows  
the security vulnerabilities. We describe an extended black hole (eBH) attack type that it can harm to the SAODV protocol. The  
simulation results show that the packet delivery ratio of the SAODV protocol is reduced by eBH attack type.  
Keywords: AODV, ARAN, MANET, SAODV, routing protocol, security.  
pdf 9 trang Thùy Anh 17400 Free
Bạn đang xem tài liệu "Phân tích hiệu quả an ninh của hai giao thức saodv và aran trên mạng manet", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfphan_tich_hieu_qua_an_ninh_cua_hai_giao_thuc_saodv_va_aran_t.pdf