nghiŒncÙum¸ts¨gi…iph†p …

144
ĐI H¯C HU TRƯ˝NG ĐI H¯C KHO A H¯C LƯƠNG THÁI NG¯C NGHIÊN CU M¸T S¨ GII PHÁP NÂNG CAO AN NINH TRÊN MNG MANET LUN ÁN TIN SĨ KHOA H¯C MÁY TÍNH HU, 2020

Upload: others

Post on 16-Oct-2021

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: NGHIŒNCÙUM¸TS¨GI…IPH†P …

ĐẠI HỌC HUẾ

TRƯỜNG ĐẠI HỌC KHOA HỌC

LƯƠNG THÁI NGỌC

NGHIÊN CỨU MỘT SỐ GIẢI PHÁP

NÂNG CAO AN NINH TRÊN MẠNG MANET

LUẬN ÁN TIẾN SĨ KHOA HỌC MÁY TÍNH

HUẾ, 2020

Page 2: NGHIŒNCÙUM¸TS¨GI…IPH†P …

ĐẠI HỌC HUẾ

TRƯỜNG ĐẠI HỌC KHOA HỌC

LƯƠNG THÁI NGỌC

NGHIÊN CỨU MỘT SỐ GIẢI PHÁP

NÂNG CAO AN NINH TRÊN MẠNG MANET

Ngành: Khoa học máy tính

Mã số: 9480101

LUẬN ÁN TIẾN SĨ KHOA HỌC MÁY TÍNH

Người hướng dẫn khoa học

PGS.TS. Võ Thanh Tú

HUẾ, 2020

Page 3: NGHIŒNCÙUM¸TS¨GI…IPH†P …

LỜI CAM ĐOAN

Tôi cam đoan các kết quả trình bày trong luận án này dựa trên quá trình nghiên

cứu của riêng tôi, không sao chép bất kỳ kết quả nghiên cứu nào của các tác giả khác.

Nội dung của luận án có tham khảo và sử dụng một số thông tin từ các nguồn sách,

tạp chí và luận án đã công bố, tất cả được liệt kê trong danh mục tài liệu tham khảo.

Thừa thiên Huế, ngày ... tháng ... năm 2019

Nghiên cứu sinh

Lương Thái Ngọc

i

Page 4: NGHIŒNCÙUM¸TS¨GI…IPH†P …

LỜI CẢM ƠN

Nội dung luận án tiến sĩ “Nghiên cứu một số giải pháp nâng cao an ninh

trên mạng MANET” được hoàn thành trong thời gian học tập, nghiên cứu tại Khoa

Công nghệ Thông tin, Trường Đại học Khoa học, Đại học Huế. Để đạt được kết quả

này, trước tiên tôi xin gửi lời cảm ơn chân thành đến PGS.TS. Võ Thanh Tú, người

đã đưa ra các định hướng nghiên cứu và trực tiếp hướng dẫn, giúp đỡ tôi trong suốt

thời gian thực hiện luận án. Tiếp theo, xin gửi lời cảm ơn đến GS. Hoàng Bằng Đoàn,

Trường Đại học Công nghệ Sydney (UTS), người đã cho phép tôi sử dụng công trình

nghiên cứu để báo cáo trong luận án này.

Ngoài ra, tôi xin được gửi lời cảm ơn chân thành tới Ban giám đốc Đại học Huế,

Ban giám hiệu Trường Đại học Khoa học, lãnh đạo Trường Đại học Đồng Tháp, ban

chủ nhiệm Khoa đã tạo điều kiện thuận lợi cho tôi trong thời gian thực hiện nghiên

cứu của mình. Rất cảm ơn tất cả quý Thầy, Cô khoa Công nghệ Thông tin, Trường

Đại học Khoa học, Đại học Huế đã truyền đạt kiến thức cho tôi trong thời gian học

tập, nghiên cứu tại Đơn vị. Cảm ơn các nhà khoa học trong hội đồng nghiệm thu luận

án và tất cả quý Thầy, Cô đã tham gia vào quá trình góp ý, phản biện nhằm nâng cao

chất lượng của luận án.

Cuối cùng, tôi xin bày tỏ lòng cảm ơn tới tất cả đồng nghiệp, gia đình, đặc biệt

là Vợ tôi người đã gánh vác những khó khăn thay tôi và luôn động viên, khích lệ tinh

thần cho tôi để hoàn thành luận án này.

Thừa thiên Huế, ngày ... tháng ... năm 2019

ii

Page 5: NGHIŒNCÙUM¸TS¨GI…IPH†P …

MỤC LỤC

Lời cam đoan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i

Lời cảm ơn. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii

Mục lục . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii

Danh mục từ viết tắt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii

Danh mục ký hiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix

Danh mục hình ảnh và đồ thị . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii

Danh mục bảng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii

Mở đầu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

Chương 1. AN NINH TRÊN MẠNG MANET . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.1.Mạng tùy biến di động . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.1.1. Ứng dụng của mạng MANET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.1.2. Một số thách thức thường gặp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.1.3. Công nghệ truyền thông . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.2.Định tuyến trên mạng MANET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

1.2.1. Một số vấn đề quan tâm về định tuyến. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111.2.2. Phân tích ưu và nhược điểm của các loại giao thức . . . . . . . . . . . . . . . . . . . . . . . 121.2.3. Tiêu chí và phương pháp đánh giá hiệu quả định tuyến . . . . . . . . . . . . . . . . . . 14

1.3.Giao thức định tuyến AODV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1.3.1. Thuật toán khám phá tuyến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161.3.2. Quản lý bảng định tuyến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181.3.3. Duy trì tuyến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191.3.4. Tránh lặp tuyến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201.3.5. Minh họa quá trình khám phá tuyến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1.4.Một số hình thức tấn công trên mạng MANET . . . . . . . . . . . . . . . . 24

1.4.1. Tấn công lỗ sâu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261.4.2. Tấn công ngập lụt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

1.5.Đánh giá tác hại của tấn công lỗ sâu và ngập lụt . . . . . . . . . . . . . . . 31

1.5.1. Tác hại của tấn công lỗ sâu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321.5.2. Tác hại của tấn công ngập lụt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

iii

Page 6: NGHIŒNCÙUM¸TS¨GI…IPH†P …

1.6.Phương pháp kiểm tra an ninh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

1.7.Một số giải pháp an ninh liên quan . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

1.8.Tiểu kết Chương 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Chương 2. GIẢI PHÁP PHÁT HIỆN VÀ NGĂN CHẶN

TẤN CÔNG LỖ SÂU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.1.Giới thiệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.2.Phân tích ưu và nhược điểm của một số giải pháp an ninh

trước tấn công lỗ sâu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

2.2.1. Giải pháp DelPHI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422.2.2. Giải pháp WADT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442.2.3. Giải pháp TTHCA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452.2.4. Giải pháp EEP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

2.3.Cơ chế xác thực đa mức . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

2.3.1. Chữ ký số trên mạng MANET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492.3.2. Ba bước xác thực an ninh của MLA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512.3.3. Giao thức an ninh MLAMAN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532.3.4. Cấp chứng chỉ thành viên . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572.3.5. Đánh giá hiệu năng của giao thức MLAMAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

2.4.So sánh các giải pháp an ninh chống tấn công lỗ sâu . . . . . . . . . . . 66

2.5.Tiểu kết Chương 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Chương 3. GIẢI PHÁP PHÁT HIỆN VÀ NGĂN CHẶN

TẤN CÔNG NGẬP LỤT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

3.1.Giới thiệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

3.2.Phân tích ưu và nhược điểm của một số giải pháp an ninh

trước tấn công ngập lụt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

3.2.1. Giải pháp FAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693.2.2. Giải pháp EFS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703.2.3. Giải pháp BI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

3.3.Giải pháp an ninh sử dụng thuật toán phân lớp . . . . . . . . . . . . . . . . 72

3.3.1. Mô hình tổng quát của giải pháp FADA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743.3.2. Thuật toán phân lớp kNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743.3.3. Véc-tơ tần suất khám phá tuyến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 753.3.4. Xây dựng tập dữ liệu huấn luyện. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 763.3.5. Bộ phân lớp kNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 793.3.6. Giao thức an ninh FAPRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 803.3.7. Đánh giá hiệu năng của giao thức FAPRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

3.4.So sánh các giải pháp an ninh chống tấn công ngập lụt . . . . . . . . . 87

iv

Page 7: NGHIŒNCÙUM¸TS¨GI…IPH†P …

3.5.Tiểu kết Chương 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

Chương 4. GIẢI PHÁP BẢO MẬT ĐỊNH TUYẾN

TRÊN MẠNG MANET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

4.1.Giới thiệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

4.2.Phân tích ưu và nhược điểm của một số giải pháp bảo mật

định tuyến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

4.2.1. Giao thức SAODV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904.2.2. Giao thức ARAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934.2.3. Tác hại của tấn công lỗ sâu chế độ ẩn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

4.3.Cơ chế xác thực tin cậy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

4.3.1. Ba bước xác thực an ninh của TAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974.3.2. Giao thức an ninh TAMAN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004.3.3. Cơ chế quản lý chứng thư số . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034.3.4. So sánh các giải pháp bảo mật định tuyến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

4.4.Đánh giá hiệu năng của giao thức TAMAN . . . . . . . . . . . . . . . . . . . 114

4.4.1. Ảnh hưởng của DCMM đến hiệu năng của TAMAN . . . . . . . . . . . . . . . . . . . . 1144.4.2. Hiệu quả an ninh trước hình thức tấn công lỗ đen. . . . . . . . . . . . . . . . . . . . . . . 117

4.5.Tiểu kết Chương 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

KẾT LUẬN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

DANH MỤC CÔNG TRÌNH CỦA TÁC GIẢ. . . . . . . . . . . . . . . . . 122

TÀI LIỆU THAM KHẢO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

v

Page 8: NGHIŒNCÙUM¸TS¨GI…IPH†P …

DANH MỤC TỪ VIẾT TẮT

Viết tắt Thuật ngữ Tiếng Anh Diễn giải Tiếng Việt

ATM Automated Teller Machine Máy rút tiền tự độngAODV Ad hoc On demand Distance Vector Giao thức định tuyến véc-tơ

khoảng cách theo yêu cầu trongmạng Ad hoc

AOMDV Ad hoc On demand Distance Vector Giao thức định tuyến véc-tơ khoảngcách đa đường theo yêu cầu trongmạng Ad hoc

ASDF Address Spoofing based Data Flooding Tấn công ngập lụt Data dựa trênAttack địa chỉ giả mạo

ASHF Address Spoofing based Hello Tấn công ngập lụt Hello dựa trênFlooding Attack địa chỉ giả mạo

ASRRF Address Spoofing based Route Request Tấn công ngập lụt yêu cầu tuyếnFlooding Attack dựa trên địa chỉ giả mạo

BAN Body Area Networks Mạng diện tích cơ thểBH Blackhole Lỗ đenCA Certificate Authority Cơ quan cấp chứng thưCV Checking Value Giá trị kiểm traDC Digital Certification Chứng thư sốDCMM Digital Certification Management Cơ chế quản lý chứng thư số

MechanismsDelPHI Delay Per Hop Indication Độ trễ mỗi chặng chỉ địnhDP Data Packet Gói dữ liệuDPH Delay Per Hop Độ trễ trên chặngDRDTS Diagram of Route Discovery Biểu đồ khe thời gian khám

Time-Slot phá tuyếnDS Digital Signature Chữ ký sốDSDV Destination Sequence Distance Vector Giao thức định tuyến véc-tơ

khoảng cách theo thứ tự đíchDSN Destination Sequence Number Số thứ tự của nút đíchDSR Dynamic Source Routing Giao thức định tuyến nguồn độngDYMO Dynamic MANET On-demand Routing Giao thức định tuyến theo yêu

cầu động cho mạng MANETEE End-End Đầu-cuốiEEP End-to-End protocol Giao thức Đầu-CuốiEFS Effective Filtering Scheme Lược đồ lọc hiệu quảEtE End-to-End Delay Trễ đầu-cuốiFADA Flooding Attacks Detection Algorithm Thuật toán phát hiện tấn công

ngập lụt

vi

Page 9: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Viết tắt Thuật ngữ Tiếng Anh Diễn giải Tiếng Việt

FAP Flooding Attack Prevention Ngăn ngừa tấn công ngập lụtFANET Flying Ad-Hoc Networks Mạng tùy biến của các thiết

bị bayFD Flooding Ngập lụtFE Fake Entry Thông tin tuyến giả mạoFRREP Fake Route Reply Trả lời tuyến giả mạoGPS Global Positioning System Hệ thống định vị toàn cầuGH Grayhole Lỗ xámHC Hop Count Số chặngHM Hidden Mode Chế độ ẩnHbH Hop-by-hop Từng chặngIDS Intrusion Detection System Hệ thống phát hiện xâm nhậpIEEE Institute of Electrical and Viện kỹ thuật Điện và Điện tử

Electronics EngineersLAN Local Area Network Mạng nội bộLH Last Hop Chặng cuối cùngLBK Local Broadcast Key Quảng bá khóa cục bộLTE Long-Term Evolution Sự tiến hóa dài hạnMANET Mobile Adhoc Network Mạng tùy biến di độngMC Member Certification Chứng chỉ thành viênMD Maximum Delay Độ trễ tối đaMLA Multi-Level Authentication Xác thực đa mứcMLAMAN MLA on Mobile Ad hoc Network Giao thức định tuyến xác thực

Routing Protocol đa mức cho mạng MANETMN Malicious Node Nút độc hạiMPD Multi Path Discovery Khám phá nhiều tuyếnMS Maximum Speeds Vận tốc tối đaNASDF Non-Address Spoofing based Data Tấn công ngập lụt Data dựa

Flooding Attack trên địa chỉ cố địnhNASHF Non-Address Spoofing based Hello Tấn công ngập lụt Hello dựa

Flooding Attack trên địa chỉ cố địnhNASRRF Non-Address Spoofing based Route Request Tấn công ngập lụt yêu cầu

Flooding Attack tuyến dựa trên địa chỉ cố địnhNC Number of connections Số lượng kết nốiNH Next Hop Chặng kế tiếpNS2 Network Simulator 2 Hệ mô phỏng NS2OLSR Optimized Link State Routing Định tuyến trạng thái liên kết

tối ưuOSI Open Systems Interconnection Kết nối hệ thống mởOTP One-Time Password Mật khẩu sử dụng một lầnPM Participation Mode Chế độ tham giaPDR Packet Delivery Ratio Tỷ lệ gửi gói tin thành công

vii

Page 10: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Viết tắt Thuật ngữ Tiếng Anh Diễn giải Tiếng Việt

PKDB Public Key Database Cở sở dữ liệu khóa công khaiPKI Public Key Infrastructure Hạ tầng khóa công khaiPN Preceding Node Nút liền trướcPTT Packet Traversal Time Thời gian truyền tải gói tinQoS Quality of Service Chất lượng dịch vụRWP Random Waypoint Tọa độ điểm ngẫu nhiênRCP Route Control Packet Gói tin điều khiển tuyếnRDH Route Discovery History Lịch sử khám phá tuyếnRERR Route Error Lỗi tuyếnRDP Route Discovery Packet Gói tin khám phá tuyếnRDFV Route Discovery Frequency Vector Véc-tơ tần suất khám phá tuyếnREP Reply Packet Gói tin trả lờiRL Routing Load Phụ tải định tuyếnRREQ Route Request Yêu cầu tuyếnRREP Route Reply Trả lời tuyếnRSA Rivest, Shamir and Adleman Hệ mã khóa công khai RSART Routing Table Bảng định tuyếnRTT Round Trip Time Thời gian truyền khứ hồi của góiSAODV Secure Ad hoc On demand Distance Giao thức định tuyến véc-tơ

Vector khoảng cách theo yêu cầu trongmạng Ad hoc đảm bảo an ninh

SH Sinkhole Lỗ chìmSVM Support Vector Machine Máy vec-tơ hỗ trợSN Sequence Number Số thứ tựSSN Source Sequence Number Số thứ tự nguồnTAM Trust Authentication Mechanisms Cơ chế xác thực tin cậyTCP Transmission Control Protocol Giao thức điều khiển truyền dẫnTL Tunnel Length Chiều dài đường hầmTTHCA Traversal Time and Hop Count Analysis Phân tích chi phí và

thời gian truyền tảiUAV Unmanned Aerial Vehicle Phương tiện bay không người láiUDP User Datagram Protocol Giao thức gói dữ liệu người dùngVANET Vehicular Ad Hoc Network Mạng tùy biến giao thôngWADT Wormhole Attacks Detection Technique Kỹ thuật phát hiện tấn công

lỗ sâuWAN Wide Area Network Mạng diện rộngWARP Wormhole Avoidance Routing Protocol Giao thức định tuyến tránh lỗ sâuWH Wormhole Lỗ sâuWRP Wireless Routing Protocol Giao thức định tuyến không dâyWSN Wireless Sensor Network Mạng cảm biến không dâyZRP Zone Routing Protocol Giao thức định tuyến theo vùngkNN k-Nearest Neighbor Thuật toán k láng giềng gần nhất

viii

Page 11: NGHIŒNCÙUM¸TS¨GI…IPH†P …

DANH MỤC KÝ HIỆU

Ký hiệu Diễn giải

DCNδ Chứng thư số của nút Nδ

De(v, k) Giải mã giá trị v sử dụng khóa k

En(v, k) Mã hóa giá trị v sử dụng khóa k

GPSNδ Vị trí của nút Nδ

H(v) Băm giá trị v bằng hàm băm H

IPNδ Địa chỉ của nút Nδ

IPsrc, IPdst Địa chỉ nút nguồn và nút đích

MCNδ Chứng chỉ thành viên của nút Nδ

Nδ Nút có nhãn là δ

RNδ Bán kính phát sóng tối đa của nút Nδ

TMC Thời gian kiểm tra cấp MC

TDC Thời gian kiểm tra cấp DC

kNδ -, kNδ+ Bộ khóa bí mật và công khai của nút Nδ

[v]KA− Dữ liệu v được ký số bởi nút A [74]

V ji Véc-tơ RDFV của nút nguồn Ni được ghi nhận tại nút Nj

T ji Khe thời gian thứ i của nút nguồn Nj

TSimin Khe thời khám phá tuyến tối thiểu của hệ thống do Ni ghi nhận

Th Ngưỡng phát hiện tấn công ngập lụt

k Số lượng láng giềng gần nhất trong thuật toán kNN

m Kích thước véc-tơ tần suất khám phá tuyến

n Số lượng nút mạng trong hệ thống

pkt Gói tin

ix

Page 12: NGHIŒNCÙUM¸TS¨GI…IPH†P …

DANH MỤC HÌNH ẢNH VÀ ĐỒ THỊ

1.1 Mô hình mạng MANET . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.2 Ứng dụng của mạng MANET trong lĩnh vực quân sự . . . . . . . . . . . . 8

1.3 Ứng dụng của mạng MANET trong lĩnh vực dân sự . . . . . . . . . . . . . 9

1.4 Mô tả truyền thông 1-chặng và đa-chặng giữa hai nút Ni và Nj . . . . . . . 10

1.5 Mô tả phân tầng trong mô hình kết nối hệ thống mở [7] . . . . . . . . . . . 11

1.6 Cấu trúc gói điều khiển tuyến của giao thức AODV [64] . . . . . . . . . . . 16

1.7 Sơ đồ thuật toán quảng bá gói yêu cầu tuyến của giao thức AODV [76] . . 17

1.8 Mô tả cấu trúc bảng định tuyến của AODV tại nút nguồn NS . . . . . . . 19

1.9 Mô tả việc duy trì tuyến tại nút N10 . . . . . . . . . . . . . . . . . . . . . 20

1.10 Mô tả tuyến có xuất hiện chu trình . . . . . . . . . . . . . . . . . . . . . . 20

1.11 Mô tả hiệu quả tránh lặp tuyến của giao thức AODV . . . . . . . . . . . . 21

1.12 Mô tả quá trình khám phá tuyến của giao thức AODV . . . . . . . . . . . 22

1.13 Mô tả tấn công lỗ sâu trong giao thức AODV . . . . . . . . . . . . . . . . 26

1.14 Mô tả tấn công ngập lụt gói RREQ . . . . . . . . . . . . . . . . . . . . . . 29

1.15 Mô tả tấn công ngập lụt gói HELLO . . . . . . . . . . . . . . . . . . . . . 30

1.16 Mô tả tấn công ngập lụt gói DATA . . . . . . . . . . . . . . . . . . . . . . 30

1.17 Phân loại hành vi của nút độc hại khi tấn công ngập lụt . . . . . . . . . . 31

1.18 Vị trí nút độc hại thực hiện tấn công lỗ sâu . . . . . . . . . . . . . . . . . 32

1.19 Tác hại tấn công lỗ sâu đến hiệu năng của giao thức AODV . . . . . . . . 33

1.20 Vị trí nút độc hại thực hiện tấn công ngập lụt . . . . . . . . . . . . . . . . 34

1.21 Tác hại tấn công ngập lụt gói RREQ đến hiệu năng của giao thức AODV . 36

1.22 Tổng hợp các giải pháp an ninh trên mạng MANET đã công bố . . . . . . 37

2.1 Mô tả tấn công lỗ sâu sử dụng đường hầm kết nối giữa M1 và M2 . . . . . 41

2.2 Một số giải pháp phát hiện và ngăn chặn tấn công lỗ sâu đã công bố . . . 42

2.3 Mô tả cách tính độ trễ tối đa của giải pháp WADT [44] . . . . . . . . . . . 44

2.4 Mô hình phát hiện tấn công lỗ sâu của TTHCA [42] . . . . . . . . . . . . . 46

2.5 Mô tả giải pháp phát hiện và ngăn chặn tấn công lỗ sâu EEP . . . . . . . 47

2.6 Sơ đồ mô tả quá trình nút nguồn ký và nút đích xác thực chữ ký . . . . . . 50

2.7 Mô tả phát hiện tấn công lỗ sâu ở chế độ ẩn . . . . . . . . . . . . . . . . . 53

2.8 Cấu trúc gói tin điều khiển của giao thức MLAMAN . . . . . . . . . . . . 53

2.9 Sơ đồ thuật toán quảng bá gói yêu cầu tuyến của giao thức MLAMAN . . 54

x

Page 13: NGHIŒNCÙUM¸TS¨GI…IPH†P …

2.10 Sơ đồ thuật toán trả lời tuyến của giao thức MLAMAN . . . . . . . . . . . 56

2.11 Mô tả các bước cấp MC cho nút thành viên Nδ . . . . . . . . . . . . . . . 58

2.12 Cấu trúc gói tin điều khiển cho việc cấp chứng chỉ thành viên . . . . . . . 59

2.13 Hiệu quả an ninh của EEP dựa trên vận tốc và chiều dài đường hầm . . . 62

2.14 Hiệu quả an ninh của MLA dựa trên vận tốc và chiều dài đường hầm . . . 62

2.15 Số lượng gói tin hao phí phải xử lý để cấp MC của MLAMAN . . . . . . . 63

2.16 Ảnh hưởng của cơ chế cấp MC đến tỷ lệ gửi gói thành công của MLAMAN 64

2.17 Hiệu quả an ninh của giao thức MLAMAN khi bị tấn công lỗ sâu . . . . . 65

3.1 Mô tả nút độc hại tấn công ngập lụt gói RREQ [24] . . . . . . . . . . . . . 68

3.2 Một số giải pháp phát hiện và ngăn chặn tấn công ngập lụt đã công bố . . 69

3.3 Mô tả DRDTS của nút bình thường và độc hại được ghi nhận tại NA . . . 73

3.4 Mô hình tổng quát của giải pháp FADA . . . . . . . . . . . . . . . . . . . 74

3.5 Mô tả ảnh hưởng của giá trị k trong thuật toán kNN . . . . . . . . . . . . 75

3.6 Mô tả RDFV của 5 nút bình thường và 5 nút độc hại . . . . . . . . . . . . 76

3.7 Giao diện của tô-pô mạng trong giai đoạn huấn luyện của giải pháp FADA 77

3.8 Mô tả nút trung gian xử lý mỗi khi nhận được gói RREQ và RREP . . . . 78

3.9 Tập dữ liệu huấn luyện MVC (4) và NVC (+), kích thước của véc-tơ là 60 79

3.10 Sơ đồ thuật toán quảng bá gói yêu cầu tuyến của giao thức FAPRP . . . . 82

3.11 Mô tả lịch sử khám phá tuyến của nút nguồn được nghi nhận tại Ni . . . . 84

3.12 Hiệu quả phát hiện nút độc hại của giải pháp FADA . . . . . . . . . . . . 84

3.13 Tỷ lệ phát hiện nút độc hại thành công của FADA và BI . . . . . . . . . . 85

3.14 Hiệu năng của BAODV và FAPRP khi bị tấn công ngập lụt . . . . . . . . 86

4.1 Một số giao thức định tuyến an ninh đã công bố . . . . . . . . . . . . . . . 90

4.2 Cấu trúc gói tin điều khiển tuyến của giao thức SAODV [91] . . . . . . . . 90

4.3 Mô tả quá trình ký và xác thực của giao thức SAODV . . . . . . . . . . . 92

4.4 Mô tả cấu trúc bảng định tuyến của giao thức SAODV . . . . . . . . . . . 93

4.5 Mô tả quá trình ký và xác thực của giao thức ARAN . . . . . . . . . . . . 95

4.6 Mô tả tấn công lỗ sâu chế độ ẩn gây hại đến SAODV và ARAN . . . . . . 96

4.7 Mô hình xác thực tin cậy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

4.8 Cấu trúc chứng thư số theo chuẩn X.509 [58] . . . . . . . . . . . . . . . . . 98

4.9 Cấu trúc gói tin điều khiển tuyến của giao thức TAMAN . . . . . . . . . . 100

4.10 Sơ đồ thuật toán khám phá tuyến của giao thức TAMAN . . . . . . . . . . 101

4.11 Mô tả quá trình ký và xác thực của giao thức TAMAN . . . . . . . . . . . 103

4.12 Mô tả quá trình cung cấp DC cho nút Nδ . . . . . . . . . . . . . . . . . . . 105

4.13 Cấu trúc gói tin điều khiển để cung cấp chứng thư số . . . . . . . . . . . . 105

4.14 Sơ đồ thuật toán cung cấp chứng thư số của cơ chế DCMM . . . . . . . . . 106

4.15 Cấu trúc gói tin điều khiển sử dụng trong DCMM . . . . . . . . . . . . . . 109

4.16 Minh họa khả năng ngăn chặn tấn công mạo danh của TAMAN . . . . . . 112

xi

Page 14: NGHIŒNCÙUM¸TS¨GI…IPH†P …

4.17 Minh họa khả năng ngăn chặn tấn công lỗ sâu của TAMAN . . . . . . . . 113

4.18 Minh họa khả năng ngăn chặn tấn công ngập lụt của TAMAN . . . . . . . 113

4.19 Số lượng gói tin hao phí để cấp DC của DCMM . . . . . . . . . . . . . . . 115

4.20 Ảnh hưởng của DCMM đến hiệu năng của TAMAN . . . . . . . . . . . . . 116

4.21 Hiệu năng của TAMAN, SAODV và ARAN khi bị tấn công lỗ đen . . . . . 118

xii

Page 15: NGHIŒNCÙUM¸TS¨GI…IPH†P …

DANH MỤC BẢNG

1.1 Đặc điểm của một số giao thức định tuyến trên mạng MANET . . . . . . . 12

1.2 Kết quả khám phá tuyến trong môi trường mạng bình thường . . . . . . . 23

1.3 Tổng hợp các hình thức tấn công mạng MANET . . . . . . . . . . . . . . . 24

1.4 Đặc điểm của một số loại tấn công trên mạng MANET . . . . . . . . . . . 25

1.5 Kết quả khám phá tuyến khi bị tấn công lỗ sâu (OB-PM) . . . . . . . . . 27

1.6 Kết quả khám phá tuyến khi bị tấn công lỗ sâu (En-PM) . . . . . . . . . . 28

1.7 Thông số cơ bản được sử dụng để mô phỏng . . . . . . . . . . . . . . . . . 32

2.1 Cơ sở dữ liệu khóa công khai . . . . . . . . . . . . . . . . . . . . . . . . . . 58

2.2 Đặc điểm các giải pháp phát hiện tấn công lỗ sâu . . . . . . . . . . . . . . 66

3.1 So sánh đặc điểm các giải pháp phát hiện tấn công ngập lụt . . . . . . . . 88

4.1 Mô tả cơ sở dữ liệu chứng thư số . . . . . . . . . . . . . . . . . . . . . . . 104

4.2 Đặc điểm của TAMAN và một số nghiên cứu liên quan . . . . . . . . . . . 111

4.3 Hiệu quả an ninh của TAMAN và một số nghiên cứu liên quan . . . . . . . 111

xiii

Page 16: NGHIŒNCÙUM¸TS¨GI…IPH†P …

MỞ ĐẦU

1. Tính cấp thiết của luận án

Lịch sử phát triển của mạng tùy biến di động (MANET [34]) bắt đầu từ dự án

mạng DARPA năm 1972. Mạng MANET có ưu điểm là tính di động, khả năng hoạt

động độc lập, không phụ thuộc vào hạ tầng mạng cố định và khả năng mở rộng linh

hoạt. Vì vậy, MANET đã nhận được sự quan tâm, nghiên cứu và phát triển của nhiều

tổ chức từ dân sự đến quân sự. Ngày nay, nhờ sự phát triển mạnh mẽ của các thiết bị

và các ứng dụng trên nền tảng di động, mạng MANET đã không ngừng phát triển với

nhiều biến thể khác nhau nhằm ứng dụng vào thực tế, tiêu biểu là hệ thống giao thông

thông minh, cứu hộ thiên tai, quản lý thông tin sức khỏe bệnh nhân và thu thập thông

tin tình báo [16, 33, 37]. Mặc dù mạng MANET đã được ứng dụng nhiều trong thực

tế trên nhiều lĩnh vực khác nhau. Tuy nhiên, MANET phải đối mặt với nhiều thách

thức cần tiếp tục nghiên cứu [34, 36], trong đó thách thức về an ninh là chủ đề rất thú

vị và được nhiều nhà khoa học quan tâm nghiên cứu [11, 52, 79].

Quá trình truyền thông trên mạng máy tính được thiết kế theo mô hình kết nối

hệ thống mở (OSI [7]). Mô hình OSI gồm 7 tầng, mỗi tầng đảm trách nhiệm vụ riêng

và hỗ trợ nhau trong quá trình truyền thông. Định tuyến là một dịch vụ được cung

cấp tại tầng “mạng”, còn gọi là tầng “định tuyến di động” trên mạng MANET. Hầu hết

các giao thức định tuyến được thiết kế với giả thuyết rằng không tồn tại nút độc hại

trong mạng [59]. Vì vậy, chúng tồn tại nhiều lỗ hổng an ninh bị tin tặc khai thác để

thực hiện hành vi tấn công mạng. Giao thức định tuyến tùy biến theo yêu cầu dựa vào

véc-tơ khoảng cách (AODV [63]) được thiết kế để vận hành trên mạng MANET. Tuy

nhiên, AODV tồn tại một số lỗ hổng an ninh. Thứ nhất, AODV sử dụng thuật toán

định tuyến véc-tơ khoảng cách nên chi phí định tuyến dựa vào số chặng (HC). Tuyến

được chọn là tuyến có số chặng nhỏ nhất. Một nút độc hại có thể quảng cáo bản thân

có tuyến đến đích với chi phí nhỏ nhất, mục đích là để đánh lừa nút nguồn định tuyến

dữ liệu qua nút độc hại. Khi nhận được gói dữ liệu, nút độc hại thực hiện hành vi phá

hoại bằng việc hủy gói hoặc nghe trộm, phân tích luồng thông tin. Một số hình thức

tấn công tiêu biểu dựa trên lỗ hổng này là: Tấn công lỗ đen (BH - Blackhole [78]), lỗ

chìm (SH - Sinkhole [11]), lỗ xám (GH - Grayhole [26]) và lỗ sâu (WH - Wormhole

[42, 44]). Thứ hai, AODV là giao thức định tuyến phản ứng, sử dụng gói tin điều khiển

tuyến (RCP) để khám phá và duy trì tuyến, nhưng AODV không có cơ chế kiểm tra,

bảo vệ phù hợp. Vì vậy, tin tặc có thể thực hiện hành vi tấn công ngập lụt (FD -

Flooding [24]) bằng cách gửi gói tin điều khiển tuyến vào mạng với tần suất cao gây

1

Page 17: NGHIŒNCÙUM¸TS¨GI…IPH†P …

nghẽn mạng, tăng hao phí truyền thông, tăng thời gian trễ trung bình, giảm hiệu năng

mạng, lãng phí tài nguyên do phải xử lý quá nhiều gói tin không cần thiết.

Nghiên cứu giải pháp an ninh trên mạng MANET là chủ đề có tính thời sự và

ý nghĩa thực tế, trong đó an ninh định tuyến đã được nhiều nhà khoa học quan tâm.

Hiện tại, đã có một số giải pháp an ninh công bố và được thiết kế theo hai hướng tiếp

cận [41, 52, 57], bao gồm: Hệ thống phát hiện xâm nhập (IDS) và bảo mật định tuyến.

Giải pháp phát hiện xâm nhập có ưu điểm là đơn giản, phát hiện chính xác từng hình

thức tấn công và dễ dàng áp dụng trên các thiết bị có cấu hình phần cứng thấp, nhưng

hiệu quả an ninh hạn chế hơn các giải pháp bảo mật định tuyến. Tiêu biểu là IDS phát

hiện và ngăn chặn tấn công lỗ sâu dựa trên độ trễ của mỗi chặng (DPH) [17, 42, 44]

hoặc vị trí mỗi nút [72]; Ngoài ra, một số IDS sử dụng giá trị ngưỡng cố định [67, 75]

hoặc linh động [24] để phát hiện và ngăn chặn tấn công ngập lụt; Hướng tiếp cận học

máy [49, 62] cũng được sử dụng tạo giải pháp an ninh trước hình thức tấn công ngập

lụt nhằm cải thiện hiệu quả của các IDS dựa trên ngưỡng. Ngược lại, giải pháp bảo

mật định tuyến có thể phát hiện và ngăn chặn nhiều hình thức tấn công, nhưng giải

pháp phức tạp và yêu cầu cấu hình thiết bị phần cứng cao để vận hành các thuật toán

mã hóa dữ liệu [74, 91] hoặc sử dụng thuật toán băm [21, 48]. Ý tưởng chính của các

giải pháp bảo mật định tuyến là sử dụng chữ ký số (DS) hoặc cơ chế xác thực mật

khẩu sử dụng một lần (OTP). Nhờ vào cơ chế ký và xác thực chữ ký mà các giải pháp

này có khả năng bảo mật rất tốt, có thể phát hiện và ngăn chặn nhiều hình thức tấn

công mạng. Tuy nhiên, theo thời gian tin tặc đã thay đổi hành vi tấn công nhằm vượt

qua các cơ chế an ninh, tiêu biểu là như: hành vi tấn công lỗ sâu ở chế độ ẩn (HM),

tấn công lỗ sâu ở chế độ tham gia (PM) bằng cách thay đổi thông tin của gói tin điều

khiển tuyến, tấn công ngập lụt với tần suất thấp, tấn công bằng việc sử dụng bộ khóa

giả mạo. Những thay đổi trong hành vi tấn công đã làm xuất hiện hạn chế trong các

giải pháp an ninh đã công bố, cần tiếp tục nghiên cứu hoàn thiện.

Như vậy, ưu điểm nổi bật của mạng MANET là tính di động, tự tổ chức và khả

năng mở rộng. Nhờ vậy mà mạng MANET được ứng dụng trong nhiều lĩnh vực khác

nhau của đời sống. Tuy nhiên, thách thức về an ninh lại xuất phát từ các đặc điểm

vốn có của mạng MANET. Theo thời gian, tin tặc không ngừng thay đổi hành vi tấn

công nhằm qua mặt các giải pháp an ninh đã công bố. Vì vậy, việc nghiên cứu để nâng

cao an ninh trên mạng MANET là chủ đề có tính thời sự và thực tiễn cao để góp phần

nâng cao chất lượng dịch vụ định tuyến.

2. Động lực nghiên cứu

Hiện tại, đã có nhiều giải pháp an ninh công bố nhằm nâng cao khả năng an

ninh trên mạng MANET. Tuy nhiên, vẫn còn một số tồn tại cần tiếp tục nghiên cứu

hoàn thiện, cụ thể như sau:

• Các IDS [17, 42, 44, 72] phát hiện và ngăn chặn tấn công lỗ sâu có ưu điểm là

ít ảnh hưởng đến hiệu năng của giao thức gốc, dễ dàng triển khai trên các thiết

2

Page 18: NGHIŒNCÙUM¸TS¨GI…IPH†P …

bị không yêu cầu cao về phần cứng. Tuy nhiên, độ trễ mỗi chặng phụ thuộc vào

thời gian truyền khứ hồi của gói tin (RTT) hoặc thời gian truyền tải gói (PTT).

Hai tham số này bị ảnh hưởng bởi độ trễ trong quá trình xử lý gói và môi trường

mạng di động. Vì vậy, chúng rất dễ bị sai lầm khi kiểm tra an ninh trong môi

trường di động. Ngoài ra, hầu hết các IDS sử dụng phương pháp kiểm tra đầu–

cuối nên nút trung gian không có cơ sở để kiểm tra nút tiền nhiệm và khó phát

hiện vị trí của kẻ tấn công. Cuối cùng, chúng không hỗ trợ cơ chế kiểm tra toàn

vẹn gói tin nên nút độc hại có thể vượt qua cơ chế an ninh bằng cách thay đổi

giá trị của các trường trên gói tin điều khiển tuyến.

• Các IDS phát hiện và ngăn chặn tấn công ngập lụt dựa trên giá trị ngưỡng

[24, 67, 75] có ưu điểm là đơn giản, giảm thiểu tác hại của tấn công ngập lụt.

Tuy nhiên, ngưỡng cố định sẽ thiếu mềm dẻo do ngưỡng tối ưu trong các kịch

bản khác nhau sẽ khác nhau; Một nút bình thường có thể bị hiểu nhầm là độc

hại nếu thực hiện khám phá tuyến với tần suất cao tại một thời điểm bất kỳ;

Nút độc hại có thể qua mặt cơ chế an ninh bằng cách tấn công với tần suất thấp

hơn giá trị ngưỡng. Hai giải pháp dựa trên hướng tiếp cận học máy [49, 62] đã

cải thiện phần nào hạn chế của giải pháp dựa trên ngưỡng. Tuy nhiên, thuộc tính

của các véc-tơ biểu diễn cho các nút vẫn còn dựa trên tần suất phát gói RREQ

nên dễ xuất hiện sai lầm trong môi trường di động. Ngoài ra, chúng được đề xuất

để hoạt động trong mạng có tô-pô tương đối ổn định là mạng cảm biến không

dây (WSN) nên không phù hợp với đặc điểm di động của mạng MANET.

• Giải pháp bảo mật định tuyến [21, 48, 74, 91] có ưu điểm là khả năng an ninh

rất tốt. Tuy nhiên, SAODV [91] chỉ hỗ trợ kiểm tra đầu–cuối nên nút trung gian

không thể kiểm tra nút liền trước và chưa có cơ chế quản lý khóa công khai nên

nút độc hại có thể sử dụng bộ khóa giả mạo để tấn công. ARAN [74] đã khắc

phục hạn chế này bằng cách sử dụng hạ tầng khóa công khai (PKI) và cơ chế xác

thực từng–chặng. Nhưng, ARAN không đảm bảo tuyến được chọn có chi phí tốt

nhất do gói RCP có trường lưu HC. Ngoài ra, MANET không có hạ tầng mạng

nên việc triển khai PKI sẽ gặp khó khăn. Cuối cùng, hai giải pháp sử dụng cơ

chế xác thực OTP [21, 48] có điểm hạn chế là không kiểm tra toàn vẹn gói tin

nên hiệu quả an ninh hạn chế. Đặc biệt, tất cả đều không thể phát hiện tấn công

lỗ sâu ở chế độ ẩn [15, 57], đây là hạn chế cần nghiên cứu hoàn thiện.

Từ những tồn tại đã phân tích ở trên, cùng với sự phát triển của công nghệ định

vị toàn cầu (GPS [30]), chữ ký số [70] và hướng tiếp cận học máy [73] chính là động

lực để luận án nghiên cứu, cải tiến các cơ chế an ninh đã công bố. Mục đích là nâng

cao hơn nữa hiệu quả an ninh của các giải pháp đã công bố nhằm nâng cao chất lượng

dịch vụ định tuyến và an toàn thông tin trên mạng MANET.

3

Page 19: NGHIŒNCÙUM¸TS¨GI…IPH†P …

3. Mục tiêu luận án

Mục tiêu tổng quát của luận án là nghiên cứu, đề xuất giải pháp an ninh đối

với hình thức tấn công lỗ sâu, tấn công ngập lụt và giải pháp bảo mật định tuyến. Cải

tiến giao thức AODV thành giao thức an ninh nhằm giảm thiểu tối đa mất gói tin do

tấn công mạng, nâng cao tỷ lệ gửi gói tin thành công, giảm thời gian trễ trung bình

và phụ tải định tuyến khi bị tấn công ngập lụt. Cụ thể là:

(1) Nghiên cứu, đề xuất giải pháp an ninh trước hình thức tấn công lỗ sâu ở hai chế

độ ẩn và tham gia. Cải tiến giao thức AODV thành giao thức an ninh có khả

năng phát hiện và ngăn chặn nút độc hại thực hiện hành vi tấn công lỗ sâu.

(2) Nghiên cứu, đề xuất giải pháp an ninh trước hình thức tấn công ngập lụt. Cải

tiến giao thức AODV thành giao thức an ninh có khả năng phát hiện và ngăn

chặn nút độc hại thực hiện hành vi tấn công ngập lụt.

(3) Nghiên cứu, đề xuất giải pháp bảo mật định tuyến và cơ chế quản lý chứng thư

số. Cải tiến giao thức AODV thành giao thức an ninh trước các hình thức tấn

công mạng hiện tại, bao gồm tấn công lỗ sâu ở chế độ ẩn.

4. Đối tượng và phạm vi nghiên cứu

An ninh trên mạng tùy biến di động là chủ đề rất rộng và phức tạp. Để hoàn

thành mục tiêu nghiên cứu, luận án xác định đối tượng và phạm vi như sau:

a) Đối tượng: Giao thức định tuyến AODV, hàm băm SHA [60], hệ mã RSA [70],

chứng thư số theo chuẩn X.509 [58], công nghệ GPS [30], tấn công lỗ sâu [42, 44]

và ngập lụt [24, 27].

b) Phạm vi: Giải pháp an ninh tại tầng mạng hay tầng định tuyến di động, áp dụng

cho thuật toán định tuyến phẳng.

5. Phương pháp nghiên cứu

Để thực hiện mục tiêu nghiên cứu đã đề ra, luận án sử dụng phương pháp nghiên

cứu lý thuyết và mô phỏng, cụ thể như sau:

a) Nghiên cứu lý thuyết: Luận án nghiên cứu và tổng hợp các công trình liên quan

đến việc nâng cao an ninh đã công bố trong và ngoài nước. Đồng thời, luận án

tập trung phân tích chi tiết ưu và nhược điểm để phát hiện vấn đề còn tồn tại

nhằm đề xuất giải pháp cải tiến phù hợp.

b) Mô phỏng: Luận án đánh giá kết quả bằng mô phỏng sử dụng phần mềm NS2

tương tự các tác giả [1, 2, 3, 4]. Để kết quả được khách quan, luận án mô phỏng

trên nhiều kịch bản với nhiều tham số khác nhau. Dựa trên kết quả thống kê,

luận án đánh giá hiệu quả an ninh của giải pháp đề xuất so với một số nghiên

cứu liên quan, đưa ra nhận định ưu điểm và nhược điểm của giải pháp đề xuất.

4

Page 20: NGHIŒNCÙUM¸TS¨GI…IPH†P …

6. Bố cục luận án

Luận án được bố cục gồm 3 phần là Mở đầu, Nội dung và phần Kết luận. Trong

đó phần quan trọng nhất là nội dung được chia thành 4 Chương, cụ thể như sau:

• Chương 1: “An ninh trên mạng MANET” trình bày tổng quan về giao thức

định tuyến và an toàn định tuyến trên mạng MANET. Chương này tập trung

phân tích giao thức định tuyến AODV và một số hình thức tấn công trên mạng

MANET tại tất cả các tầng của mô hình OSI, tập trung mô tả chi tiết hai hình

thức tấn công gồm: Tấn công lỗ sâu và tấn công ngập lụt. Ngoài ra, chương này

cũng thiết kế một số kịch bản mô phỏng để đánh giá tác hại của tấn công lỗ sâu

và ngập lụt bằng mô phỏng trên NS2.

• Chương 2: “Giải pháp phát hiện và ngăn chặn tấn công lỗ sâu” trình bày một

số giải pháp an ninh trước hình thức tấn công lỗ sâu đã công bố trong thời gian

qua như: DelPHI, WADT, TTHCA và EEP. Ngoài ra, chương này cũng trình bày

giải pháp đề xuất MLA nhằm phát hiện và ngăn chặn tấn công lỗ sâu, cải tiến

giao thức AODV thành giao thức an ninh MLAMAN. Đồng thời, đánh giá hiệu

quả an ninh của MLA trên phần mềm NS2 và so sánh với giải pháp EEP. [CT1]

• Chương 3: “Giải pháp phát hiện và ngăn chặn tấn công ngập lụt” trình bày một

số giải pháp an ninh trước hình thức tấn công ngập lụt đã công bố trong thời

gian qua như: FAP, EFS, BI và kNNAODV. Ngoài ra, chương này cũng trình bày

giải pháp đề xuất FADA nhằm phát hiện và ngăn chặn tấn công ngập lụt, cải

tiến giao thức AODV thành giao thức an ninh FAPRP. Đồng thời, đánh giá hiệu

quả an ninh của FADA bằng phần mềm NS2 và so sánh với giải pháp BI. [CT2]

• Chương 4: “Giải pháp bảo mật định tuyến trên mạng MANET” trình bày hai

giải pháp bảo mật định tuyến sử dụng chữ ký số đã công bố là SAODV và ARAN.

Ngoài ra, chương này cũng trình bày cơ chế xác thực tin cậy (TAM) và cơ chế

quản lý chứng thư số (DCMM). Đồng thời, tích hợp hai cơ chế TAM và DCMM

vào giao thức AODV để tạo giao thức cải tiến TAMAN và đánh giá hiệu quả an

ninh của TAMAN trên phần mềm NS2. [CT3, CT4]

7. Đóng góp của luận án

Thông qua tổng hợp, phân tích ưu và nhược điểm của các nghiên cứu trước đây,

luận án đề xuất một số giải pháp cải tiến nhằm phát huy ưu điểm, khắc phục những

hạn chế. Sau đây là một số đóng góp chính của luận án:

(1) Luận án đã đề xuất giải pháp MLA nhằm phát hiện và ngăn chặn tấn công lỗ

sâu. Đồng thời, cải tiến giao thức AODV thành giao thức an ninh MLAMAN

bằng cách tích hợp giải pháp MLA vào giao thức AODV. [CT1]

5

Page 21: NGHIŒNCÙUM¸TS¨GI…IPH†P …

(2) Luận án đã đề xuất giải pháp FADA nhằm phát hiện và ngăn chặn tấn công

ngập lụt. Đồng thời, cải tiến giao thức AODV thành giao thức an ninh FAPRP

cách tích hợp giải pháp FADA vào giao thức AODV. [CT2]

(3) Luận án đã đề xuất cơ chế quản lý chứng thư số (DCMM [CT3]) theo chuẩn

X.509 và mô hình xác thực tin cậy (TAM [CT4]). Đồng thời, tích hợp DCMM và

TAM vào giao thức AODV tạo giao thức an ninh TAMAN.

Kết quả nghiên cứu của luận án đã cho thấy an ninh trên mạng tùy biến di động

là vấn đề phức tạp. Một số hình thức tấn công mạng có thể thay đổi cách thức tấn

công để qua mặt các giải pháp phát hiện xâm nhập. Hướng tiếp cận trên học máy, chữ

ký số đã cho thấy hiệu quả và tiềm năng ứng dụng để giải quyết bài toán an ninh trên

mạng MANET.

6

Page 22: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Chương 1

AN NINH TRÊN MẠNG MANET

Chương này giới thiệu về mạng MANET và đặc điểm của một số loại giao thức

định tuyến. Luận án tập trung phân tích cơ chế hoạt động của giao thức AODV, mô

tả chi tiết một số hình thức tấn công mạng MANET. Ngoài ra, luận án thiết kế một

số kịch bản mô phỏng trên NS2 để đánh giá tác hại của tấn công lỗ sâu và ngập lụt.

1.1 Mạng tùy biến di động

Mạng tùy biến di động (gọi tắt là MANET [36]) được phát triển nhằm đáp ứng

nhu cầu trao đổi thông tin giữa các thiết bị trong khi di chuyển, hoạt động không phụ

thuộc vào cơ sở hạ tầng mạng cố định. Mỗi thiết bị (gọi là nút) đóng vai trò là thiết

bị đầu cuối, có chức năng định tuyến và có thể di chuyển độc lập theo mọi hướng. Tất

cả các nút kết nối với nhau sử dụng môi trường truyền thông không dây, nút nguồn có

thể gửi gói tin đến nút đích bất kỳ trong mạng nhờ vào các nút trung gian.

N1 N2 N3 N4 N5

N6 N7 N8

N9 N10 N11

Nút Vùng phát sóng

Hình 1.1. Mô hình mạng MANET

Hình 1.1 minh họa mạng MANET gồm 11 nút, hai nút N1 và N2 gọi là nút láng

giềng vì cả hai nằm trong phạm vi phát sóng của nhau. Nút N1 có thể truyền dữ liệu

đến N4 qua hai nút trung gian là N2 và N3. Tiếp theo đây, luận án giới thiệu khả năng

ứng dụng, một số thách thức và công nghệ truyền thông trên MANET.

7

Page 23: NGHIŒNCÙUM¸TS¨GI…IPH†P …

1.1.1 Ứng dụng của mạng MANET

Đặc điểm ưu việc của mạng MANET là tính di động, khả năng tự tổ chức và

hoạt động không phụ thuộc vào hạ tầng mạng cố định [53](pp. 4–5). Đã có nhiều biến

thể khác nhau của mạng MANET được phát triển, tiêu biểu gồm: WSN [11], BAN

[16], VANET [33] và FANET [37]. Vì vậy, MANET được ứng dụng vào nhiều lĩnh vực

của đời sống từ quân sự đến dân sự.

a) Quân sự: Trong khu vực chiến đấu, đội hình tác chiến có thể được thiết lập

để trao đổi thông tin dựa vào công nghệ mạng MANET như Hình 1.2(a). Mỗi người

lính hoặc phương tiện chiến đấu (xe tăng, máy bay, tàu chiến) có thể xem như một nút

trong mạng. Chúng kết nối với nhau để trao đổi thông tin về trạm chỉ huy một cách

linh động trong khi chiến đấu. Do tính độc lập của mỗi nút và cơ chế hoạt động ngang

hàng nên việc truyền thông không bị ảnh hưởng khi một trong các nút không may bị

tiêu diệt trong lúc chiến đấu [40][53](pp. 6–7). Ngoài ra, FANET [37, 87] được phát

triển từ mạng MANET nhằm ứng dụng trong quân sự (Hình 1.2(b)). Mỗi nút trong

mạng FANET là một phương tiện bay không người lái (UAV). Mỗi UAV có thể trao

đổi thông tin với nhau để phục vụ các nhiệm vụ như: thu thập thông tin tài nguyên

rừng, tài nguyên nước, biến đổi khí hậu, thông tin tình báo và xây dựng bản đồ khu

vực. Công nghệ mạng này rất phù hợp triển khai ở những nơi mà việc lưu thông bằng

đường bộ gặp khó khăn.

(a) MANET

(b) FANET [87]

Hình 1.2. Ứng dụng của mạng MANET trong lĩnh vực quân sự

b) Dân sự: Dựa trên những thành tựu trong lĩnh vực quân sự, MANET đã được

triển khai ứng dụng trong lĩnh vực dân sự, bao gồm: Y tế và giao thông. Về y tế, một

biến thể của mạng MANET được ứng dụng với tên gọi là mạng BAN [16] như Hình

1.3(a). Mỗi nút trong mạng BAN là các cảm biến gắn trên cơ thể người nhằm thu thập

thông tin tình trạng sức khỏe của người bệnh. Mạng BAN có thể được kết nối đến một

mạng khác để trao đổi thông tin với cơ sở dữ liệu bệnh nhân tại cơ sở y tế [12]. Nhờ

vậy mà bác sĩ có thể quản lý tình trạng sức khỏe của bệnh nhân để có những cảnh báo

8

Page 24: NGHIŒNCÙUM¸TS¨GI…IPH†P …

phù hợp. Về giao thông, một biến thể khác của MANET là VANET [33] đã được phát

triển để ứng dụng trong lĩnh vực giao thông như Hình 1.3(b). Công nghệ mạng này

hướng đến xây dựng các hệ thống giao thông tự động tại các đô thị thông minh trong

tương lai. Mỗi nút trong mạng là một phương tiện giao thông, kết nối với nhau để trao

đổi thông tin đến phương tiện ở xa. Mỗi phương tiện giao thông có thể quản lý thông

tin về lưu lượng xe, những nguy hiểm cần tránh hoặc tai nạn giao thông. Mục đích là

giúp cho người sử dụng phương tiện thuận lợi và an toàn khi tham gia giao thông.

Cảm biến xử lý thông tin

INTERNET

Cảm biến trung tâm

(a) BAN [16]

Cảm biến xử lý thông tin

(b) VANET [33]

Hình 1.3. Ứng dụng của mạng MANET trong lĩnh vực dân sự

1.1.2 Một số thách thức thường gặp

Bên cạnh những ưu điểm, MANET phải đối mặt với nhiều thách thức khi ứng

dụng vào thực tế [34, 36, 66]. Thách thức này xuất phát từ đặc điểm vốn có của mạng

MANET là sử dụng môi trường không dây, môi trường mạng di động, bán kính phát

sóng ngắn và tài nguyên hạn chế. Cụ thể là:

• Thứ nhất, các nút trong mạng sử dụng môi trường truyền thông không dây nên

kém bảo mật kém hơn so với môi trường truyền có dây. Nút độc hại có thể ẩn

mình trong phạm vi phát sóng của nút nguồn hoặc nút trung gian để thu thập

thông tin và rất khó bị phát hiện.

• Thứ hai, các nút mạng thường xuyên gia nhập và rời khỏi mạng nên tô-pô mạng

MANET thay đổi thường xuyên. Điều này đòi hỏi các giao thức định tuyến phải

liên tục cập nhật thông tin đường đi bằng cách phát quảng bá gói điều khiển

tuyến, dẫn đến mất an toàn thông tin. Ngoài ra, tài nguyên hạn chế và tô-pô

mạng liên tục thay đổi nên gây khó khăn khi triển khai các giải pháp an ninh.

• Thứ ba, bán kính phát sóng ngắn nên các nút trong mạng phải sử dụng cơ chế

truyền thông đa chặng (multi-hop). Nút nguồn muốn giao tiếp với nút đích phải

qua các nút trung gian trên tuyến có chi phí tốt nhất. Đây là lỗ hổng bị nút độc

9

Page 25: NGHIŒNCÙUM¸TS¨GI…IPH†P …

hại khai thác để tấn công bằng cách đánh lừa nút nguồn rằng nó có tuyến đến

đích với chi phí tốt.

• Thứ tư, tài nguyên của thiết bị hạn chế. Hầu hết các thiết bị di động có bộ nhớ

nhỏ và sử dụng nguồn năng lượng là pin nên khả năng xử lý bị hạn chế. Điều

này ảnh hưởng đến hiệu quả định tuyến và rất khó để triển khai các giải pháp

an ninh yêu cầu về cấu hình thiết bị.

Những thách thức trên đã thúc đẩy nhiều nhà khoa học nghiên cứu khắc phục.

Đầu tiên là nâng cao chất lượng dịch vụ (QoS) định tuyến tùy thuộc vào yêu cầu của

các ứng dụng [13, 50, CT6]. Tiếp theo là nâng cao hiệu quả định tuyến nhằm thích

nghi với tính di động của mạng [10, 55, 88], sử dụng năng lượng hiệu quả [56, 77, 83],

ứng dụng công nghệ tác tử di động nhằm nâng cao hiệu quả định tuyến [1, 14]. Cuối

cùng là đảm bảo an ninh truyền thông giữa các thiết bị trong môi trường kết nối mở

[52, 57, 86]. Ngoài ra, công nghệ tác tử di động cũng được sử dụng để cải tiến giao thức

định tuyến nhằm mục đích an ninh [CT7]. Mỗi tác tử có khả năng thu thập thông tin

và cộng tác cùng nhau để thực hiện nhiệm vụ xác nhận lộ trình an toàn trước khi định

tuyến, cảnh báo người dùng khi xuất hiện tấn công mạng.

1.1.3 Công nghệ truyền thông

Công nghệ giao tiếp không dây cung cấp khả năng kết nối một cách đơn giản

và linh hoạt giữa các thiết bị. Đã có nhiều chuẩn giao tiếp không dây ra đời để đáp

ứng nhu cầu truyền thông [34]. Tất cả công nghệ IEEE sử dụng sóng điện từ để truyền

thông. Hai nút Ni và Nj nằm trong vùng phủ sóng của nhau thì chúng có thể trao đổi

thông tin trực tiếp với nhau, gọi là truyền thông 1-chặng như mô tả trong Hình 1.4(a).

Ngoài ra, các chuẩn khác nhau có phạm vi phủ sóng khác nhau, nhưng cũng hạn chế.

Do vậy, một nút muốn truyền thông với nút khác nằm ngoài vùng phủ sóng thì nút

nguồn phải truyền dữ liệu qua một (hoặc nhiều) nút trung gian khác, gọi là truyền

thông đa-chặng. Các nút trung gian đóng vai trò là bộ định tuyến, giúp định tuyến gói

tin đến đích như mô tả trong Hình 1.4(b).

NiRNi

d(Ni, Nj)

NjRNj

Khoảng cách Vùng phủ sóng (R)

(a) Một chặng (1hop)

d(Ni, N1)

NiRNi

N1 N2 Nj

Khoảng cách Vùng phủ sóng (R)

(b) Đa chặng (multi-hop)

Hình 1.4. Mô tả truyền thông 1-chặng và đa-chặng giữa hai nút Ni và Nj

10

Page 26: NGHIŒNCÙUM¸TS¨GI…IPH†P …

1.2 Định tuyến trên mạng MANET

Trong mạng máy tính, việc kết nối các thiết bị tham gia truyền thông phải tuân

thủ theo mô hình chuẩn là OSI. Mô hình này được thiết kế dựa vào nguyên lý phân

tầng như Hình 1.5(a), mục đích để thuận lợi cho việc giải thích các kỹ thuật kết nối

truyền thông giữa các thiết bị và thiết kế giao thức trên mạng. Khi ứng dụng vào mạng

MANET, OSI đã được tinh giản từ 7 tầng xuống 5 tầng nhờ sự kết hợp giữa 3 tầng

trên cùng (phiên, trình bày và ứng dụng) thành tầng ứng dụng như Hình 1.5(b). Ngoài

ra, tầng mạng được chuyển đổi thành tên mới là “định tuyến di động” để phù hợp môi

trường mạng MANET, tầng này chịu trách nhiệm khám phá và định tuyến dữ liệu [7].

Luận án tập trung nghiên cứu vấn đề an ninh cho các giao thức định tuyến hoạt động

tại tầng này nhằm nâng cao chất lượng dịch vụ mạng MANET.

ỨNG DỤNG

TRÌNH BÀY

PHIÊN

VẬN CHUYỂN

MẠNG

LIÊN KẾT DỮ LIỆU

VẬT LÝ

(a) OSI

ỨNG DỤNG

VẬN CHUYỂN

ĐỊNH TUYẾN DI ĐỘNG

LIÊN KẾT DỮ LIỆU

VẬT LÝ

(b) MANET

Hình 1.5. Mô tả phân tầng trong mô hình kết nối hệ thống mở [7]

1.2.1 Một số vấn đề quan tâm về định tuyến

Đặc điểm của MANET là tính tự trị và di động cao nên tài nguyên bị hạn chế,

băng thông thấp và tỷ lệ lỗi cao. Vì vậy, theo [1, 8] khi thiết kế giao thức định tuyến,

một số tiêu chí sau đây thường được các nhà nghiên cứu quan tâm:

a) Tối thiểu phụ tải định tuyến: Tất cả giao thức đều phải sử dụng gói tin điều

khiển để yêu cầu hoặc cung cấp thông tin về trạng thái của mạng. Mục đích là để thiết

lập lộ trình từ nguồn đến đích với chi phí tối thiểu. Do vậy, một lượng băng thông

bị chiếm dụng. Phụ tải định tuyến là tiêu chí để đánh giá mức độ chiếm dụng băng

thông. Phụ tải định tuyến được hiểu là số lượng gói tin điều khiển tuyến cần phải xử

lý để định tuyến thành công một gói tin dữ liệu đến đích. Đây là tham số quan trọng

để đánh giá hiệu quả định tuyến. Một giao thức định tuyến hiệu quả phải đảm bảo

phụ tải định tuyến phù hợp bằng cách giảm tối đa các gói tin điều khiển hao phí.

b) Xử lý tối thiểu: Mô hình mạng thường xuyên thay đổi nên giao thức định

tuyến phải thường xuyên khám phá, cập nhật tuyến. Một thuật toán khám phá tuyến

phức tạp sẽ ảnh hưởng đến khả năng xử lý của các thiết bị, tiêu hao tài nguyên. Ngược

lại, thuật toán đơn giản nhưng hiệu quả sẽ giúp nâng cao thời gian và hiệu quả hoạt

động của các thiết bị trong mạng.

11

Page 27: NGHIŒNCÙUM¸TS¨GI…IPH†P …

c) Hỗ trợ định tuyến đa chặng: Thiết bị di động trong mạng MANET có bán

kính phát sóng hạn chế. Vì vậy, gói tin phải được định tuyến qua nhiều nút trung gian

trước khi đến đích. Một giao thức định tuyến tốt phải đảm bảo hỗ trợ truyền thông

đa chặng. Ngoài ra, giao thức định tuyến phải đảm bảo loại bỏ chu trình trong thuật

toán khám phá tuyến.

d) Đảm bảo độ tin cậy: Do môi trường mạng di động nên tô-pô của mạng MANET

rất thường xuyên thay đổi. Các nút thường xuyên gia nhập và rời khỏi mạng nên giao

thức định tuyến phải có khả năng cập nhật tuyến kịp thời với những thay đổi của

mạng. Ngoài ra, giao thức định tuyến phải đảm bảo an ninh định tuyến nhằm đảm

bảo không bị tin tặc thực hiện hành vi phá hoại.

e) Hỗ trợ định tuyến đơn và đa đường: Các giao thức định tuyến đơn đường có

ưu điểm là khám phá ra tuyến có chi phí tốt nhất và duy nhất, nên gói tin được định

tuyến trên con đường có số chặng đến đích là ít nhất. Tuy nhiên, việc định tuyến đơn

đường sẽ rất dễ dẫn đến tình trạng nghẽn mạng, nguyên nhân là các tuyến được khám

phá có khuynh hướng gần tâm của mạng làm xuất hiện nút thắt cổ chai. Giao thức hỗ

trợ định tuyến đa đường sẽ mang lại hiệu quả tốt khi truyền thông với mật độ cao.

1.2.2 Phân tích ưu và nhược điểm của các loại giao thức

Định tuyến là một dịch vụ được cung cấp tại tầng mạng của mô hình OSI. Nút

nguồn sử dụng tuyến được khám phá và duy trì nhờ vào các giao thức định tuyến. Đã

có nhiều giao thức định tuyến được đề xuất để hoạt động trên mạng MANET. Một số

giao thức tiêu biểu được tổng hợp và phân loại theo các tiêu chí như Bảng 1.1. Luận

án tập trung nghiên cứu cơ chế hoạt động của giao thức AODV, các giải pháp an ninh

đã công bố và đề xuất giải pháp cải tiến trên giao thức này. [9, 22, 28]

Bảng 1.1. Đặc điểm của một số giao thức định tuyến trên mạng MANET

Phân loại giao thức định tuyến dựa vàoCơ chế

khám phá tuyếnVùng

định tuyếnPhương phápđịnh tuyến

Kiểuđịnh tuyến

Chủđộng

Phảnứng

Lai PhẳngPhâncấp

Địnhtuyếnnguồn

Từngchặng

Đơnđường

Đađường

AODV[63] • • • •DSR[39] • • • •

DSDV[65] • • • •ZRP[29] • • • •

AOMDV[51] • • • •

a) Dựa trên cơ chế khám phám tuyến: Gồm định tuyến chủ động, phản ứng và

lai. Định tuyến chủ động (hay định tuyến theo bảng) rất hiệu quả với mạng có cấu

hình ổn định. Mỗi nút lưu tuyến đến tất cả các nút còn lại vào bảng định tuyến (RT)

12

Page 28: NGHIŒNCÙUM¸TS¨GI…IPH†P …

nhờ vào việc nhận và gửi các gói tin hệ thống định kỳ. Khi cấu hình mạng thay đổi,

thông tin cập nhật được lan truyền nhằm thông báo đến các nút còn lại. Ưu điểm là

gói tin được chuyển tiếp nhanh nên độ trễ khi truyền thấp, nhưng chi phí định tuyến

lớn bởi vì tất cả các tuyến phải được xác định trước.

Định tuyến phản ứng (hay theo yêu cầu) thực hiện khi có nhu cầu truyền thông.

Nút nguồn muốn gửi dữ liệu đến nút khác phải thực hiện quá trình khám phá tuyến

bằng cách quảng bá gói yêu cầu tuyến và nhận gói trả lời tuyến. Ưu điểm là phí định

tuyến thấp, phù hợp với hệ thống mạng không ổn định. Tuy nhiên, độ trễ truyền gói

tin cao do quá trình khám phá tuyến trước khi truyền dữ liệu. Định tuyến lai phù hợp

với mô hình mạng hỗn hợp nhờ kết hợp các ưu điểm của các giao thức định tuyến chủ

động và phản ứng.

b) Dựa trên vùng định tuyến: Gồm định tuyến phẳng và phân cấp. Định tuyến

phẳng phù hợp với các mạng nhỏ, mọi nút trong mạng hoạt động ngang hàng và có vai

trò như nhau. Hạn chế của định tuyến phẳng là tất cả các nút thuộc một vùng quảng

bá, nên khi sử dụng với mạng có nhiều nút sẽ lãng phí tài nguyên và băng thông do

phải xử lý các gói tin hệ thống.

Định tuyến phân cấp cải thiện hạn chế của định tuyến phẳng. Tô-pô mạng được

tổ chức thành nhiều khu vực nhỏ hơn, mỗi khu vực có thể chia tiếp thành các vùng

con theo kiểu cây phân cấp. Trong một khu vực, các nút hoạt động ngang hàng, việc

quảng bá gói tin chỉ ảnh hưởng đến những nút cùng khu vực. Nút nguồn giao tiếp với

nút ở khu vực khác phải thông qua các nút có thẩm quyền. Chỉ những gói tin điều

khiển tuyến cần thiết mới được truyền qua lại giữa các vùng nhằm giảm hao phí định

tuyến. Các nút trong vùng định tuyến dữ liệu đến nút khác thuộc vùng bằng thuật

toán định tuyến chủ động. Định tuyến liên vùng sử dụng cơ chế định tuyến theo yêu

cầu hoặc định tuyến lai.

c) Dựa trên phương pháp định tuyến: Gồm định tuyến nguồn và từng chặng.

Định tuyến nguồn có ưu điểm là nguồn biết chính xác các nút trên tuyến đến đích.

Điểm hạn chế là phần đầu (header) của gói dữ liệu lớn để chứa danh sách các nút đến

đích. Vì vậy, các giao thức loại này chỉ phù hợp với môi trường mạng nhỏ và tương đối

ổn định.

Định tuyến từng chặng khắc phục hạn chế của định tuyến nguồn. Nút nguồn chỉ

thêm địa chỉ nút gửi và nút nhận vào phần đầu của gói dữ liệu. Nút trung gian sử dụng

thông tin trong bảng định tuyến để định tuyến gói dữ liệu đến đích. Ưu điểm là tuyến

đến đích có thể thay đổi tại các nút trung gian và kích thước phần đầu của gói nhỏ và

cố định. Giao thức loại này phù hợp với môi trường mạng di động như MANET. Tuy

nhiên, nút nguồn không biết thông tin đầy đủ trên tuyến đến đích nên thuật toán định

tuyến phải đảm bảo không tồn tại chu trình.

d) Dựa trên kiểu định tuyến: Gồm định tuyến đơn đường và đa đường. Định

tuyến đơn đường cho phép nút nguồn chuyển gói dữ liệu đến nút đích trên một tuyến

13

Page 29: NGHIŒNCÙUM¸TS¨GI…IPH†P …

đường duy nhất. Một khi xuất hiện tuyến bị lỗi, nút phải bắt đầu tiến trình khám phá

tuyến mới để thay thế. Giao thức định tuyến đa đường khắc phục được nhược điểm

này, nó cho phép gửi gói dữ liệu trên tuyến chính. Một khi tuyến chính bị sự cố, tuyến

dự phòng sẽ được sử dụng để chuyển tiếp gói tin. Ngoài ra, một số giao thức thuộc loại

này cho phép gói dữ liệu đến đích trên nhiều luồng, mỗi luồng thuộc một tuyến khác

nhau nhằm giải quyết bài toán cân bằng tải.

1.2.3 Tiêu chí và phương pháp đánh giá hiệu quả định tuyến

Việc xác định tiêu chí và phương pháp đánh giá có ý nghĩa quan trọng, đây là

tham số để đánh giá tác hại của tấn công mạng đến hiệu năng của giao thức định

tuyến và hiệu quả của các giải pháp an ninh đề xuất.

a) Tiêu chí đánh giá: Dựa trên các nghiên cứu gần đây [27, 42, 44], luận án sử

dụng một số tiêu chí đánh giá hiệu quả định tuyến là: Tỷ lệ gửi gói thành công, trễ

đầu–cuối (hay thời gian trễ trung bình) và phụ tải định tuyến. Ngoài ra, tiêu chí tỷ lệ

phát hiện tấn công thành công được sử dụng để đánh giá hiệu quả an ninh của giao

thức cải tiến.

– Tỷ lệ gửi gói thành công (PDR): Là tiêu chí quan trọng để đánh giá độ tin cậy

của giao thức định tuyến. PDR được tính dựa vào Công thức (1.1).

PDR =Số lượng gói dữ liệu nhận thành công

Tổng số gói dữ liệu đã gửi× 100% (1.1)

– Trễ đầu–cuối (EtE): Là tiêu chí đo trung bình thời gian trễ để định tuyến

thành công một gói tin dữ liệu đến đích. EtE được tính dựa vào Công thức (1.2).

EtE =Tổng thời gian của các gói dữ liệu đã gửi thành công

Số lượng gói dữ liệu gửi thành công(1.2)

– Phụ tải định tuyến (RL): Là tiêu chí để đánh giá lượng gói tin điều khiển tuyến

hao phí cần phải xử lý (gói được gửi hoặc chuyển tiếp) để định tuyến thành công một

gói dữ liệu đến đích. RL được tính dựa vào Công thức (1.3), trong đó gói tin điều khiển

tuyến của giao thức AODV bao gồm: RREQ, RREP, HELLO và RERR. Ngoài ra, các

giao thức cải tiến sẽ có thêm một số gói tin hệ thống mới, giao thức MLAMAN có thêm

gói: MCP,MCACK , giao thức TAMAN có thêm gói: DCP,DCACK , DCR,DCRACK .

Đặc biệt, khi mô phỏng tấn công ngập lụt, gói điều khiển tuyến hao phí sẽ bao gồm

gói RREQ giả mạo do nút độc hại phát ra.

RL =Tổng số gói tin điều khiển tuyến hao phí đã xử lý

Số gói dữ liệu nhận được(1.3)

– Tỷ lệ phát hiện tấn công thành công (ADR): Tất cả các giải pháp an ninh dựa

trên việc kiểm tra gói tin RCP để phát hiện tấn công mạng. Kết quả sau khi kiểm

14

Page 30: NGHIŒNCÙUM¸TS¨GI…IPH†P …

tra là gói RCP được chấp nhận hoặc loại bỏ. Nếu gói RCP bị loại bỏ đến từ nút độc

hại hoặc gói RCP được chấp nhận đến từ nút bình thường thì giải pháp đã phát hiện

thành công. Ngược lại, giải pháp phát hiện thất bại trong trường hợp chấp nhận gói

RCP đến từ nút độc hại hoặc hủy gói RCP đến từ nút bình thường. ADR là tiêu chí

đánh giá hiệu quả của giải pháp an ninh, được tính dựa vào Công thức (1.4), trong đó

AT là số lượng gói RCP được chấp nhận đến từ nút bình thường; DT là số lượng gói

RCP bị loại bỏ đến từ nút độc hại; AF là số lượng gói RCP được chấp nhận đến từ

nút độc hại; DF là số lượng gói RCP bị loại bỏ đến từ nút bình thường.

ADR =AT + DT

AT + AF + DT + DF× 100% (1.4)

b) Phương pháp đánh giá: Các phương pháp đánh giá hiệu năng mạng máy tính

thuộc 3 nhóm chính: Sử dụng mô hình giải tích, phương pháp thực nghiệm và mô

phỏng. Đối với mô hình giải tích, các kĩ thuật thường áp dụng là quá trình ngẫu nhiên,

lý thuyết hàng đợi hay lý thuyết đồ thị. Phương pháp thực nghiệm cho phép đánh giá

hiệu năng bằng cách đo hiệu năng trên mạng thực. Mục đích là giám sát hiệu năng của

mạng, thu thập số liệu và kiểm chứng kết quả. Phương pháp này phù hợp trong giai

đoạn lắp đặt và vận hành hệ thống, để chọn các tham số cấu hình phù hợp làm cho

hệ thống đạt được hiệu năng tốt nhất. Đối với phương pháp mô phỏng, người dùng sử

dụng các phần mềm mô phỏng để đánh giá hiệu năng, quá trình mô phỏng đơn thuần

chỉ là sự bắt chước hoạt động của mạng thực trên một mô hình ảo. Trong các phương

pháp đánh giá hiệu năng mạng thì đánh giá bằng phương pháp mô phỏng được sử

dụng nhiều do tiết kiệm chi phí, tính mềm dẻo trong thiết kế. [1](pp.18–19)

Để đánh hiệu năng mạng, cả 3 phương pháp trên đều có thể được sử dụng. Tuy

nhiên, vấn đề là việc xây dựng các mô hình giải tích với mạng MANET là phức tạp và

khó có thể giải được nếu không dùng các giả thiết đơn giản hóa bài toán hoặc sử dụng

phương pháp chia nhỏ bài toán thành các mô hình nhỏ. Vì vậy, mô hình mạng có thể

giải được sẽ rất khác biệt so với mô hình mạng thực tế [1](pp. 20–21). Sử dụng phương

pháp đo trên mạng thực thì tốn kém và khó thực hiện, các công cụ đo đạc cũng là

vấn đề gặp phải khi thực nghiệm. Phương pháp mô phỏng có ưu điểm là không tốn

chi phí, nhờ vậy mà người dùng có thể mô phỏng nhiều lần đến khi đạt yêu cầu. Với

những ưu điểm như vậy, nên phương pháp mô phỏng thường được sử dụng khi đánh

giá hiệu năng mạng [31](pp. 5–6). Hiện nay, nhiều hệ mô phỏng mạng được khuyến

nghị sử dụng rộng rãi trong cộng đồng nghiên cứu về lĩnh vực mạng và truyền thông,

tiêu biểu là OPNET, QualNet, GloMoSim, OMNET++ và NS2. Trong đó, NS2 được

sử dụng rộng rãi trong cộng đồng các nhà nghiên cứu hoạt động mạng [54].

Trong khuôn khổ nghiên cứu, luận án tập trung đánh giá tác hại của tấn công

mạng và hiệu quả của giải pháp an ninh đề xuất. Do điều kiện khó khăn về cơ sở hạ

tầng mạng nên phương pháp thực nghiệm chưa thể thực hiện được. Vì vậy, tương tự

các tác giả [1, 2, 3, 4], luận án sử dụng phương pháp mô phỏng để đánh giá kết quả

nghiên cứu với phần mềm NS2.

15

Page 31: NGHIŒNCÙUM¸TS¨GI…IPH†P …

1.3 Giao thức định tuyến AODV

Giao thức AODV được phát triển theo chuẩn RFC 3561 [63] nên phù hợp với

đặc điểm di động của mạng MANET, được sử dụng trong nhiều nghiên cứu gần đây

nhằm nâng cao hiệu quả an ninh [10, 50, 77, 78]. Đây là giao thức thuộc nhóm định

tuyến phẳng, đơn đường và sử dụng cơ chế khám phá tuyến chủ động. Nút nguồn chỉ

khám phá tuyến khi cần định tuyến dữ liệu. Mỗi lần khám phá tuyến, nút nguồn thiết

lập tuyến duy nhất đến đích và có chi phí tốt nhất. Chi phí định tuyến của giao thức

AODV được xác định dựa trên số chặng đến đích, đây là tham số cho phép nút nguồn

chọn tuyến đến đích.

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Type JRGDU Reserved HC| | |ID_Broadcast

Destination IP Address

Destination Sequence NumberSource IP Address

Source Sequence Number

(a) RREQ

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Type |RA| Reserved | HC|Pre Sz

Destination IP Address

Destination Sequence Number

Source IP Address

Life time

(b) RREP

Hình 1.6. Cấu trúc gói điều khiển tuyến của giao thức AODV [64]

Cơ chế khám phá tuyến của AODV sử dụng gói yêu cầu tuyến (RREQ) và gói trả

lời tuyến (RREP), gói HELLO và gói báo lỗi tuyến (RERR) được sử dụng để duy trì

tuyến. Hình 1.6 mô tả cấu trúc gói tin RREQ và RREP của giao thức AODV. Trường

Type (1byte): Qui định loại gói tin; Trường J (1bit) và R (1bit): Cờ qui định chế độ

làm việc là gia nhập và hiệu chỉnh, được dự phòng để phát triển cơ chế định tuyến đa

đường; Trường D (1bit): Qui định chỉ nút đích trả lời RREP; Trường U (1bit): Cờ được

bật nếu nút không biết số thứ tự của nút đích; ID_Broadcast (4bytes): Định danh của

lần khám phá tuyến, nút trung gian sử dụng giá trị này kết hợp với địa chỉ nút nguồn

để xác định gói RREQ đã được xử lý hoặc chưa; Source and Destination IP Address

(4bytes): Địa chỉ nút nguồn và đích (IPsrc, IPdst); Source (hoặc Destination) Sequence

Number (4bytes): Số thứ tự của nút nguồn và đích (SSN, DSN), giá trị này để xác định

“độ tươi” của tuyến đường khám phá, với mục đích là tránh lặp tuyến; HC (1bytes):

Số lượng chặng đến đích, đây là chi phí định tuyến; Life Time (4bytes): Thời gian sống

của gói trả lời tuyến; Reserved (11bits): Kích thước còn lại của gói để dự phòng.

1.3.1 Thuật toán khám phá tuyến

Quá trình khám phá tuyến của giao thức AODV được thực hiện qua 2 giai đoạn:

(1) Yêu cầu tuyến và (2) Trả lời tuyến. Nút nguồn thực hiện yêu cầu tuyến bằng cách

quảng bá gói RREQ, nút đích (hoặc nút trung gian) trả lời tuyến bằng cách gửi đơn

hướng gói RREP. Lưu đồ thuật toán quảng bá gói yêu cầu tuyến và gửi gói trả lời

tuyến được trình bày trong Hình 1.7.

16

Page 32: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Nút nguồn (NS)Núttrunggianhoặcđích(N

i)

Bắt đầu

Kết thúc

Khởi tạo gói RREQ;Thiết lập giá trị của các trường;

Quảng bá gói RREQ;

Xác định nút liền trước (Nj) đã gửi gói RREQ;

Tăng chi phíQuảng bá RREQ

Hủy gói RREQ

no

yesĐã xử lý RREQ

Thêm tuyến về NS qua NH là Nj ;Ghi nhận đã xử lý gói RREQ vào L;

đủ “tươi”tuyến đến đích

Có no

Khởi tạo và gửi góiRREP về nguồn

yes

no

Đây lànút đích

yes

(a) Yêu cầu tuyến

Nút đích (ND)

Núttrunggianhoặcnguồn(N

i)

Bắt đầu

Kết thúc

Khởi tạo gói RREP;Thiết lập giá trị của các trường;

Gửi gói RREP về nguồn;

Xác định nút liền trước (Nj) đã gửi gói RREP;

Tăng chi phíChuyển tiếp RREP

Hủy gói RREP

Thêm tuyến đến ND thôngqua NH là Nj ;

về nguồnCó tuyến

yesno

Khám phá thành côngGửi DP từ hàng đợi

no

Đây lànút nguồn

yes

(b) Trả lời tuyến

Hình 1.7. Sơ đồ thuật toán quảng bá gói yêu cầu tuyến của giao thức AODV [76]

a) Yêu cầu tuyến: Khi nút nguồn (NS) muốn 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:

– Đầu tiên, nút trung gian Ni xác định nút liền trước (Nj) đã gửi hoặc chuyển

tiếp gói RREQ;

– Tiếp theo, Ni lưu danh sách (L) trạng thái xử lý của gói RREQ, mỗi phần tử

của danh sách có hai thông tin là định danh của lần khám phá tuyến (id_broadcast)

và địa chỉ nguồn (src_add). Nếu thông tin định danh của lần khám phá tuyến và địa

chỉ nguồn trong gói RREQ thuộc L thì gói RREQ nhận được đã xử lý rồi, Ni hủy gói

RREQ và thuật toán kết thúc;

17

Page 33: NGHIŒNCÙUM¸TS¨GI…IPH†P …

– Ngược lại, đây là gói RREQ đầu tiên nhận được, nút trung gian Ni lưu tuyến

ngược về nguồn NS bằng cách thêm vào bảng định tuyến một tuyến mới qua chặng

kế tiếp là Nj hoặc cập nhật lại tuyến nếu tuyến mới có chi phí tốt hơn tuyến hiện có;

Đồng thời, Ni ghi nhận gói RREQ đã xử lý bằng cách lưu thông tin id_broadcast và

src_add vào L. Cuối cùng, Ni kiểm tra nếu nó là nút đích hoặc có tuyến đủ “tươi” đến

đích thì Ni khởi tạo gói trả lời tuyến (RREP) và gửi về nguồn; ngược lại, Ni tăng chi

phí định tuyến trong gói RREQ lên 1 trước khi tiếp tục quảng bá để khám phá tuyến.

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, cho

đến khi nút đích (ND) nhận được gói RREQ hoặc nút trung gian có tuyến đủ “tươi”

đến đích. Nút nguồn khám phá tuyến thất bại khi nút đích 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.

Độ phức tạp: Theo [71], thuật toán yêu cầu tuyến của giao thức định tuyến

AODV có độ phức tạp là O(n), với n là số lượng nút mạng.

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. Để 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 RREP, nút trung gian (Ni) xử lý gói RREP như sau:

– Đầu tiên, nút trung gian Ni xác định nút liền trước (Nj) đã gửi hoặc chuyển

tiếp gói RREP;

– Tiếp theo, Ni lưu tuyến đến đích ND vào bảng định tuyến với chặng kế tiếp là

Nj hoặc cập nhật lại tuyến nếu tuyến mới có chi phí tốt hơn;

– Cuối cùng, 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 đang chờ trong hàng đợi đến đích; ngược

lại, Ni tìm tuyến về nguồn, nếu tìm thấy thì Ni tăng chi phí định tuyến trong trường

HC của gói RREP lên 1, tiếp tục chuyển tiếp gói RREP về nguồn; ngược lại, gói RREP

bị huỷ, thuật toán kết thúc.

Độ phức tạp: Theo [71], thuật toán yêu cầu tuyến của giao thức định tuyến

AODV có độ phức tạp là O(n), với n là số lượng nút mạng.

1.3.2 Quản lý bảng định tuyến

Giao thức AODV sử dụng phương pháp định tuyến từng chặng nên nút nguồn

không biết thông tin đầy đủ trên tuyến đến đích. Để định tuyến dữ liệu, nút sử dụng

thông tin định tuyến được lưu trữ trong bảng định tuyến. Mỗi dòng dữ liệu của bảng

định tuyến chứa thông tin định tuyến (được gọi là entry). AODV là giao thức định

tuyến đơn đường nên không tồn tại hai entry trong bảng định tuyến chỉ đường đến

cùng 1 nút đích. Mỗi thông tin định tuyến có các trường cơ bản như: Địa chỉ nút đích

(node), địa chỉ chặng kế tiếp (NH), chi phí định tuyến (HC) và số thứ tự (SN) là thông

18

Page 34: NGHIŒNCÙUM¸TS¨GI…IPH†P …

số nhận biết “độ tươi” của tuyến. Ngoài ra, mỗi entry còn một số trường khác để lưu

trữ trạng thái và thời gian hiệu lực của mỗi entry. Dữ liệu trong bảng định tuyến tại

Hình 1.8 cho thấy rằng nút nguồn có thông tin đường đi đến 4 nút khác là N5, N1, N7

và N6. Ngoài ra, nút N5 chính là láng giềng của nút nguồn do chi phí định tuyến đến

N5 là 1. Entry3 [N7, N8, 5, 14] cho thấy rằng để định tuyến dữ liệu đến nút N7, nút

nguồn phải chuyển dữ liệu đến chặng kế tiếp là N8 với chi phí đến đích là 5 chặng.Bảng định tuyến

Node NH HC SNEntry1 N5 N5 1 15

N1 N2 3 13Entry3 N7 N8 5 14

N6 N5 4 18

Hình 1.8. Mô tả cấu trúc bảng định tuyến của AODV tại nút nguồn NS

Do đặc điểm di động của mạng nên tuyến đến đích thường xuyên thay đổi. Vì

vậy, thông tin trong bảng định tuyến của mỗi nút được cập nhật rất thường xuyên, dựa

vào một số sự kiện: (1) Trong quá trình khám phá tuyến, nút lưu tuyến về nút nguồn

(hoặc nút đích) bằng cách thêm mới một entry khi nhận gói RREQ (hoặc RREP); (2)

Nếu xuất hiện tuyến mới có cùng địa chỉ đích với một entry trong bảng định tuyến thì

entry được cập nhật theo tuyến mới nếu tuyến mới tươi hơn tuyến hiện tại hoặc có

cùng độ tươi nhưng chi phí định tuyến thấp hơn; (3) Nếu xuất hiện nút láng giềng Ni

di động qua ngoài vùng phủ sóng thì nút loại bỏ entry đến nút Ni ra khỏi bảng định

tuyến; (4) Nếu nhận được gói thông báo lỗi tuyến RERR thì tất cả entry có liên quan

đến địa chỉ nút đích trong gói RERR bị loại bỏ. [2, 63]

1.3.3 Duy trì tuyến

Duy trì tuyến là việc loại bỏ các tuyến đường không hợp lệ do sự thay đổi thường

xuyên của tô-pô mạng. Giao thức AODV hỗ trợ khả năng duy trì tuyến bằng cách sử

dụng gói HELLO và RERR. Mỗi nút luôn thông báo sự tồn tại của nó với nút láng

giềng bằng cách phát gói HELLO định kỳ sau khoảng thời gian HELLO_INTERVAL.

Nếu nút Ni lần đầu nhận gói HELLO từ nút láng giềng Nj thì liên kết giữa hai nút

được thiết lập, hai nút có thể trao đổi thông tin với nhau. Tuy nhiên, nếu sau khoảng

thời gian (ALLOWED_HELLO_LOSS × HELLO_INTERV AL) giây kể từ lần

nhận gói HELLO trước đó mà Ni không nhận được gói HELLO tiếp theo thì Ni biết

rằng Nj đã ra ngoài vùng phủ sóng, tất cả entry trong bảng định tuyến liên quan đến

Nj bị loại bỏ; Ni khởi tạo gói RERR chứa địa chỉ Nj và quảng bá đến các nút khác để

thông báo rằng liên kết đến Nj không còn tồn tại. Khi nhận được gói RRER, nút loại

bỏ các entry liên quan đến Nj trong bảng định tuyến.

Ví dụ 1.1: Hình 1.9 mô tả việc duy trì tuyến tại N10. Khi phát hiện liên kết

với nút N5 không còn hiệu lực, N10 loại bỏ tất cả các tuyến liên quan đến N5 trong

19

Page 35: NGHIŒNCÙUM¸TS¨GI…IPH†P …

bảng định tuyến của nó. Đồng thời, N10 phát quảng bá gói RERR chứa nút N5 đến

láng giềng để loại bỏ các tuyến đến N5 qua chặng kế tiếp là N10.

N5

N10[N5, N5, 1][N1, N2, 3][N7, N8, 5][N6, N5, 4]

Hình 1.9. Mô tả việc duy trì tuyến tại nút N10

1.3.4 Tránh lặp tuyến

Định tuyến từng chặng có ưu điểm hơn so với định tuyến nguồn là kích thước

phần đầu của gói dữ liệu cố định và nhỏ hơn định tuyến nguồn. Nguyên nhân là do gói

dữ liệu của giao thức định tuyến nguồn phải chứa tất cả các nút từ nguồn đến đích.

Tuy nhiên, khuyết điểm của định tuyến từng chặng là nút nguồn không biết đầy đủ

thông tin trên tuyến đến đích. Vì vậy, có thể xuất hiện chu trình trong tuyến mà nút

nguồn khám phá. Hình 1.10 cho thấy xuất hiện lặp tuyến trong quá trình nút nguồn

N1 định tuyến dữ liệu đến nút đích N7. Đầu tiên, dựa vào thông tin trong bảng định

tuyến, nút nguồn thấy rằng để chuyển gói dữ liệu đến đích N7 thì N1 phải chuyển gói

qua chặng kế tiếp là N3 với chi phí đến đích là 3 chặng. Tiếp theo, nút trung gian N3

kiểm tra trong bảng định tuyến của nó và thấy rằng để định tuyến gói dữ liệu đến N7

thì N3 phải chuyển gói qua chặng kế tiếp là N4 với chi phí đến đích là 2. Tương tự, nút

N4 chuyển tiếp gói dữ liệu qua nút N2 bằng cách sử dụng thông tin trong bảng định

tuyến của nó. Cuối cùng, N2 chuyển tiếp gói dữ liệu đến đích qua chặng kế tiếp là N3

dựa vào thông tin trong bảng định tuyến của nó. Kết quả là tất cả gói dữ liệu bị cuốn

vào một vòng lặp và tự mất do hết thời gian sống. Việc lặp tuyến sẽ ảnh hưởng rất lớn

đến dịch vụ mạng, tất cả các ứng dụng sử dụng giao thức TCP bị kết thúc do không

nhận được tính hiệu ACK. Các ứng dụng sử dụng giao thức UDP sẽ bị cuốn vào một

vòng xoáy dữ liệu gây ra mất gói và nghẽn mạng.

N1

Nguồn DP

[N7, N3, 3]

N2

[N7, N3, 3] DP

N3

DP

[N7, N4, 2]

DP

[N7, N2, 2]

N4

N5

N6

N7

Đích

Hình 1.10. Mô tả tuyến có xuất hiện chu trình

20

Page 36: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Giao thức AODV có khả năng tránh lặp tuyến hiệu quả. Giải pháp tránh lặp

tuyến của AODV là mỗi nút duy trì số thứ tự (SN) để làm cơ sở xác định độ “tươi”

của tuyến vừa khám phá. Giá trị SN của mỗi nút sẽ tăng trước khi gửi gói RREQ hoặc

trước khi gửi gói RREP. Dựa vào giá trị SSN và DSN trong gói RREQ hoặc gói RREP,

nút cập nhật tuyến mới nếu thỏa điều kiện là tuyến vừa khám phá “tươi” hơn tuyến

hiện có (giá trị SN trong gói tin > giá trị SN của entry) hoặc nếu hai tuyến có độ “tươi”

như nhau (giá trị SN trong gói tin = giá trị SN của entry) thì tuyến có chi phí thấp

hơn được chọn. Để minh họa hiệu quả tránh lặp tuyến của giao thức AODV, luận án

sử dụng lại tô-pô mạng bị lặp tuyến tại Hình 1.10. Giả sử rằng tại thời điểm nút nguồn

N1 khám phá tuyến thì trong mạng đã xuất hiện chu trình. Nút nguồn N1 quảng bá

gói RREQ đến các nút láng giềng để khám phá tuyến đến N7, giá trị SN tăng lên và

gửi kèm theo gói RREQ để đảm bảo tuyến vừa khám phá là tươi nhất. Khi nhận được

gói RREQ, các nút láng giềng N2, N3 và N5 thêm tuyến ngược về nguồn với nút kế là

N1 và chi phí là 1 chặng vào bảng định tuyến của mỗi nút. Khi nhận gói RREQ, hai

nút trung gian N4 và N6 thiết lập tuyến ngược về nguồn lần lượt qua nút N2 và N3

với chi phí là 2 chặng. Ngoài ra, hai nút N4 và N6 cũng nhận được gói RREQ đến từ

N3, N5 và hủy gói này do đã xử lý rồi. Cuối cùng, nút đích N7 thêm tuyến ngược về

nguồn qua N6 với chi phí là 3 chặng khi nhận gói RREQ từ N6.

N1

Nguồn

[N7, N3, 3]

N2

[N1, N1, 1][N7, N3, 3]

N3

[N1, N1, 1][N7, N4, 2][N7, N6, 2]

[N7, N2, 2]

[N1, N2, 2]

N4

N5

[N1, N1, 1]

N6

[N1, N3, 2][N7, N7, 1]

N7

Đích[N1, N6, 3]

Hình 1.11. Mô tả hiệu quả tránh lặp tuyến của giao thức AODV

Khi nhận được gói RREQ, nút đích trả lời gói RREP về nguồn qua tuyến ngược

đã lưu trước đó. Trước khi gửi, nút đích tăng giá trị SN để đảm bảo tuyến đang khám

phá là tươi nhất và gửi kèm với gói RREP. Gói RREP được chuyển tiếp về nguồn trên

tuyến {N7 → N6 → N3 → N1}. Nút N6 thiết lập tuyến đến N7 với chi phí là 1 chặng

vào bảng định tuyến khi nhận gói RREP và chuyển tiếp gói về nguồn qua nút trung

gian N3. Khi nhận gói RREP, nút N3 kiểm tra trong bảng định tuyến và thấy rằng

đang có entry đến đích N7. Tuy nhiên, do tuyến hiện tại cũ hơn tuyến mới (DSN của

entry < DSN của gói RREP) nên N3 cập nhật lại tuyến đến đích qua N6 với chi phí

là 2 chặng trước khi chuyển tiếp RREP về nguồn qua nút N1. Nút nguồn N1 nhận

được gói RREP và thêm tuyến mới đến đích N7 qua chặng kế tiếp là N3 với chi phí

21

Page 37: NGHIŒNCÙUM¸TS¨GI…IPH†P …

đến đích là 3 chặng. Kết quả là nút nguồn định tuyến gói dữ liệu đến đích trên tuyến

{N1 → N3 → N6 → N7}, chu trình đã bị loại bỏ như Hình 1.11.

1.3.5 Minh họa quá trình khám phá tuyến

Để minh họa quá trình khám phá tuyến của giao thức AODV, luận án sử dụng

tô-pô mạng gồm 11 nút như Hình 1.12. Địa chỉ của các nút lần lượt là N1, N2, ... và

N11, giá trị SN của mỗi nút được thiết lập dưới mỗi nút, giá trị ID_Broadcast hiện tại

của nút N1 là 10.

a) Giai đoạn quảng bá gói RREQ: Nút nguồn (N1) khám phá tuyến đến đích

(N8) bằng cách gửi quảng bá gói RREQ đến hai nút láng giềng {N2, N6}, trường của

gói RREQ được thiết lập như sau: ID_Broadcast = 11, Source IP = N1, Destination

IP = N8, SSN = SSN + 1 = 35, DSN = 0, HC = 0. Khi nhận được gói RREQ từ N1,

hai nút trung gian N2 và N6 thấy rằng đây là gói đầu tiên nhận được và cả hai không

phải nút đích nên chúng xử lý gói như sau: Đầu tiên, nút N2 thêm một thông tin định

tuyến vào bảng định tuyến để biểu diễn tuyến ngược về N1, thông tin của entry là

[Node = N1, NH = N1, HC = RREQ.HC + 1 = 1, SN = 35]. Điều này có nghĩa rằng

để định tuyến gói tin đến N1, nút N2 phải chuyển gói tin đến chặng kế tiếp là N1 với

chi phí định tuyến là 1. Tiếp theo, N2 lưu thông tin ID_Broadcast và địa chỉ nguồn

N1 vào bộ nhớ để đánh dấu rằng gói RREQ đã được xử lý. Mục đích là loại bỏ gói này

nếu tiếp tục nhận được từ nút trung gian khác; Đồng thời, N2 cập nhật lại địa chỉ nút

cuối cùng (Last Hop - LH) của tuyến vào gói RREQ là địa chỉ của nó, tăng HC lên 1

và tiếp tục quảng bá gói RREQ để khám phá tuyến. Tương tự N2, nút N6 cũng thêm

một entry [Node = N1, NH = N1, HC = RREQ.HC + 1 = 1, SN = 35] vào bảng định

tuyến để biểu diễn tuyến ngược về N1; lưu thông tin ID_Broadcast và địa chỉ nguồn

vào bộ nhớ; cập nhật lại địa chỉ của LH trong phần đầu đề của gói RREQ là N6, tăng

HC lên 1 trước khi tiếp tục quảng bá gói RREQ để khám phá tuyến.

N1 N2 N3 N4 N5

N6 N7 N8

N9 N10 N11

Đích

Nguồn34 17 19 12 40

11 23 4432 18 11

RREQ RREP Nút Vùng phát sóng

Hình 1.12. Mô tả quá trình khám phá tuyến của giao thức AODV

Khi nhận được gói RREQ từ N2, hai nút trung gian N3 và N7 thấy rằng đây là

gói đầu tiên nhận được và cả hai không phải nút đích nên chúng thêm một entry [Node

= N1, NH = N2, HC = RREQ.HC + 1 = 2, SN = 35] vào bảng định tuyến để biểu

diễn tuyến ngược về nguồn. Thông tin định tuyến này có ý nghĩa rằng để định tuyến

22

Page 38: NGHIŒNCÙUM¸TS¨GI…IPH†P …

gói tin đến N1, nút N3 (hoặc N7) phải chuyển gói tin đến chặng kế tiếp là N2 với chi

phí định tuyến là 2 chặng. Tiếp tục, N3 và N7 đánh dấu gói RREQ đã được xử lý và

cập nhật lại trường LH trong phần đầu đề của gói RREQ là địa chỉ nút hiện tại, tăng

chi phí định tuyến lên 1 trước khi quảng bá gói RREQ. Ngoài ra, N7 cũng nhận được

gói RREQ đến từ N6, dựa vào ID_Broadcast và địa chỉ nguồn trong bộ nhớ, N7 biết

rằng gói RREQ đã được xử lý rồi nên đã hủy gói này. Gói RREQ được quảng bá đến

các nút trung gian còn lại là N3, N4, N9, N10, và N11 trước khi đến đích N8, giá trị HC

tăng 1 mỗi khi gói RREQ được chuyển tiếp tại mỗi nút trung gian. Mỗi nút lưu tuyến

ngược về N1 với chi phí định tuyến và chặng kế tiếp tương ứng giá trị HC và LH trong

gói RREQ. Khi nhận được gói RREQ từ N11, nút N8 lưu tuyến ngược về nguồn bằng

cách thêm entry vào bảng định tuyến, thông tin của entry gồm [Node = N1, NH =

N11, HC = RREQ.HC + 1 = 6, SN = 35]. Đồng thời, nút N8 trả lời tuyến bằng cách

gửi đơn hướng gói RREP về nguồn qua chặng kế tiếp là N11.

Bảng 1.2. Kết quả khám phá tuyến trong môi trường mạng bình thường

Gửi gói NútThông tin của gói

[LH][IPsrc, IPdst, HC, SSN/DSN ]

Bảng định tuyếnNode NH HC SN

RREQ

N1 [N1][N1, N8, 0, 35] NULLN2 [N2][N1, N8, 1, 35] N1 N1 1 35 †N3 [N3][N1, N8, 2, 35] N1 N2 2 35 †N4 [N4][N1, N8, 3, 35] N1 N3 3 35 †N5 Không nhận được gói RREQN6 [N6][N1, N8, 1, 35] N1 N1 1 35 †N7 [N7][N1, N8, 2, 35] N1 N2 2 35 †N8 [N8][N1, N8, 6, 35] N1 N11 6 35 †N9 [N9][N1, N8, 3, 35] N1 N7 3 35 †N10 [N10][N1, N8, 4, 35] N1 N9 4 35 †N11 [N11][N1, N8, 5, 35] N1 N10 5 35 †

RREP

N8 Tạo gói RREP [N8][N8, N1, 0, 45]

N11 [N11][N8, N1, 1, 45] N8 N8 1 45 ‡N10 [N10][N8, N1, 2, 45] N8 N11 2 45 ‡N9 [N9][N8, N1, 3, 45] N8 N10 3 45 ‡N7 [N7][N8, N1, 4, 45] N8 N9 4 45 ‡N2 [N2][N8, N1, 5, 45] N8 N7 5 45 ‡N1 [N1][N8, N1, 6, 45] N8 N2 6 45 *

(*) Tuyến khám phá; (†) Tuyến về nguồn; (‡) Tuyến đến đích

b) Giai đoạn gửi gói RREP: Để trả lời tuyến về nguồn, N8 khởi tạo và gửi gói

RREP về nguồn thông qua N11, các trường của gói RREP được thiết lập giá trị như

sau: Source IP = N8, Destination IP = N1, HC = 0, DSN = DSN + 1 = 45. Khi nhận

được gói RREP từ N8, nút trung gian N11 xử lý gói RREP. Đầu tiên, N11 thêm một

thông tin định tuyến mới vào bảng định tuyến để biểu diễn tuyến đến đích N8, thông

23

Page 39: NGHIŒNCÙUM¸TS¨GI…IPH†P …

tin của entry là [Node = N8, NH = N8, HC = RREQ.HC + 1 = 1, SN = 45]. Tiếp

theo, N11 cập nhật lại trường LH trong phần đầu đề của gói RREP là N11, tìm tuyến

về nguồn N1 và xác định chặng tiếp theo là N10, tăng chi phí định tuyến lên 1 và tiếp

tục gửi gói RREP qua nút N10.

Khi nhận được gói RREP từ N11, nút trung gian N10 thêm một entry mới vào

bảng định tuyến để biểu diễn tuyến đến N8, thông tin của entry là [Node = N8, NH

= N11, HC = RREQ.HC + 1 = 2, SN = 45]. Đồng thời, N10 cập nhật lại trường LH

trong phần đầu đề của gói RREP là N10, tăng chi phí định tuyến lên 1 trước khi gửi

gói RREP qua chặng kế tiếp là N9. Quá trình xử lý gói RREP được thực hiện tương

tự tại các nút trung gian khác như {N9, N7, N2} cho đến khi nút nguồn N1 nhận được

gói RREP. Khi nhận được gói RREP từ nút N2, nút nguồn thêm một entry [Node =

N8, NH = N2, HC = RREQ.HC + 1 = 6, SN = 45] vào bảng định tuyến, đây chính là

tuyến vừa được nút nguồn khám phá thành công. Thông tin gói RREQ và bảng định

tuyến tại mỗi nút được trình bày trong Bảng 1.2. Kết quả khám phá tuyến cho thấy

nút nguồn N1 muốn định tuyến dữ liệu đến đích N8 phải chuyển qua chặng kế tiếp là

N2 với chi phí là 6 chặng, theo hướng {N1 → N2 → N7 → N9 → N10 → N11 → N8}.

1.4 Một số hình thức tấn công trên mạng MANET

Quá trình truyền thông trong mạng MANET dựa trên cấu trúc phân tầng như

Hình 1.5(b). Vì vậy, tin tặc có thể thực hiện tấn công ở tất cả các tầng với phương

pháp và mục đích khác nhau như Bảng 1.3.

Bảng 1.3. Tổng hợp các hình thức tấn công mạng MANET

Tầng Tên Phương pháp Mục đích

Ứngdụng

Viruses [18]Sử dụng mã độc trong cácứng dụng

Phá hoại, gây lỗi, thu thậpthông tin

Vậnchuyển

Flooding [5, 25] Phát ngập lụt gói SYN Từ chối dịch vụTrả lời ngập lụt gói ACK

Địnhtuyếndi

động

Blackhole [78]Thông tin đường đi giảmạo đến nguồn

Phá hoại thông tin

Grayhole [26]Thông tin đường đi giảmạo đến nguồn

Phá hoại thông tin

Sinkhole [11]Thông tin đường đi giảmạo đến nguồn

Phá hoại thông tin

Wormhole [42, 44]Sử dụng đường hầm thôngqua 2 nút độc hại

Nghe trộm hoặc phá hoạithông tin

Flooding [24, 27]Phát ngập lụt gói RREQ,HELLO và DATA

Tăng hao phí truyền thôngvà thời gian trễ

Liên kếtdữ liệu

Selfish [82] Giả mạo MACPhá hoại thông tin, ngănchặn chia sẻ băng thông

Vật lý Jamming [32] Gây nhiễu tần số thiết bị Phá hoại

24

Page 40: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Tại tầng ứng dụng, một số hình thức tấn công như virus, sâu và mã độc nhằm

gây lỗi hoặc thu thập thông tin qua các ứng dụng [18]. Tầng vận chuyển có các hình

thức tấn công ngập lụt gói SYN [25], bão ACK [5] nhằm làm cạn kiệt hoặc đạt giá trị

tối đa số lượng tài nguyên kết nối. Tiếp theo là tầng định tuyến đi động, tin tặc đã

lợi dụng lỗ hổng của giao thức định tuyến để thực hiện hành vi tấn công lỗ đen [78]/

lỗ chìm [11], lỗ xám [26], lỗ sâu [42, 44] và ngập lụt [24, 27]. Ngoài ra, tầng liên kết

dữ liệu và vật lý có hình thức tấn công ích kỷ (Selfish [82]) và gây nhiễu (Jamming

[32]) nhằm phá hoại tần số giao tiếp của các thiết bị. Trong các hình thức tấn công thì

tấn công tại tầng mạng là rất nguy hại. Nguyên nhân là do nút độc hại chiếm dụng

các luồng dữ liệu nhằm nghe trộm thông tin hoặc phá hoại. Các nghiên cứu gần đây

[44, 84] cho thấy giao thức AODV [63] là mục tiêu của các hình thức tấn công này.

Đặc điểm của các hình thức tấn công được tổng hợp trong Bảng 1.4.

Bảng 1.4. Đặc điểm của một số loại tấn công trên mạng MANET

Đặc điểmCác loại tấn công

Blackhole Grayhole Wormhole Flooding

Mục đíchPhá hoại • • ◦ •Nghe trộm •

Vị tríBên ngoài • • • •Bên trong

Hình thứcChủ động • • • •Bị động ◦

Mất gói doNút độc hại • • • •Hết thời gian sống

(•) Thực hiện; (◦) Tuỳ chọn.

Mục đích của các hình thức tấn công là phá hoại, riêng tấn công lỗ sâu nhằm

mục đích nghe trộm. Đôi khi tin tặc thiết lập tấn công lỗ sâu nhằm mục đích phá hoại

thông tin [44]. Tất cả các hình thức tấn công thực hiện bên ngoài mạng và là hình thức

tấn công chủ động. Tấn công lỗ đen, lỗ chìm và lỗ xám có đặc điểm chung là chủ động

thay đổi thông tin gói khám phá tuyến để đánh lừa nút nguồn nhằm tham gia vào

tuyến. Tấn công lỗ xám tương tự tấn công lỗ đen, nhưng gây hại thấp hơn tấn công

lỗ đen và có thể được thiết lập theo hình thức bị động. Tấn công ngập lụt nhằm mục

đích phá hoại bằng cách sử dụng các gói tin điều khiển để làm tăng hao phí truyền

thông. Một khi nút độc hại tấn công với tần suất cao sẽ cản trở quá trình khám phá

tuyến và làm giảm hiệu năng mạng. Gói dữ liệu bị hủy do nút độc hại trong tấn công

lỗ đen, lỗ xám và lỗ sâu hoặc do nút độc hại cản trở quá trình khám phá tuyến trong

tấn công ngập lụt. Luận án tập trung vào hai hình thức tấn công lỗ sâu và ngập lụt

cùng các giải pháp an ninh trên hai hình thức tấn công này. Tiếp theo đây, luận án

mô tả chi tiết quá trình thực hiện tấn công lỗ sâu và ngập lụt để làm cơ sở cho các

giải pháp an ninh đề xuất trong các Chương tiếp theo.

25

Page 41: NGHIŒNCÙUM¸TS¨GI…IPH†P …

1.4.1 Tấn công lỗ sâu

Tấn công lỗ sâu nhằm mục đích nghe trộm thông tin, đôi khi tin tặc thiết lập

tấn công nhằm mục đích phá hoại sẽ ảnh hưởng đến hiệu năng mạng [44]. Để tấn công,

tin tặc sử dụng hai nút độc hại kết nối với nhau qua một liên kết riêng (OB) còn gọi

là đường hầm hoặc sử dụng cơ chế đóng gói (En). Tấn công lỗ sâu có thể thực hiện ở

hai chế độ là: Chế độ ẩn và chế độ tham gia. Ở chế độ ẩn, nút độc hại chuyển tiếp gói

tin điều khiển tuyến đến nút láng giềng mỗi khi nhận được từ nút liền trước. Vì vậy,

các giải pháp an ninh sử dụng cơ chế kiểm tra toàn vẹn gói tin sẽ thất bại do thông tin

của gói điều khiển tuyến không thay đổi mỗi khi chuyển tiếp qua nút độc hại. Ở chế

độ tham gia, nút độc hại xử lý gói như nút bình thường. Chế độ này thất bại trước các

giải pháp an ninh sử dụng cơ chế kiểm tra toàn vẹn gói tin, nhưng sẽ rất nguy hiểm

cho các IDS dựa trên thông tin của gói tin điều khiển. [42]

N1 N2 N3 N4 N5

N6 N7 N8

N9 N10 N11

M1

M2

Đích

Nguồn34

17 19 34 40

11 23 44

32 18 11

RREQ RREP Nút Đường hầm

1924

(a) Sử dụng đường hầm

N1 N2 N3 N4 N5

N6N7

N8

N9 N10 N11

M1

M2

RREQ RREP Nút Nút độc hại

19

24 Đích

Nguồn34

17 19 34 40

11 23 44

32 1811

(b) Sử dụng cơ chế đóng gói

Hình 1.13. Mô tả tấn công lỗ sâu trong giao thức AODV

a) Sử dụng liên kết riêng: Để thực hiện tấn công, tin tặc sử dụng 2 nút độc hại

(M1,M2) kết nối với nhau qua một liên kết riêng gọi là đường hầm. Khi nhận gói yêu

cầu tuyến RREQ, nút độc hại M1 chuyển tiếp gói RREQ đến M2 qua đường hầm,

M2 tiếp tục chuyển tiếp RREQ đến đích. Khi nhận được gói RREQ, nút đích gửi gói

RREP qua đường hầm về nguồn. Kết quả là nút nguồn xác lập tuyến qua đường hầm

vì tuyến có chi phí thấp hơn tuyến thực tế.

Ví dụ 1.2: Hình 1.13(a) là một ví dụ mô tả quá trình nút nguồn N1 khám phá

tuyến đến đích N8 trong tô-pô mạng có hai nút độc hại (M1,M2) kết nối thông qua

đường hầm. Nút nguồn N1 quảng bá gói RREQ để khám phá tuyến đến nút đích N8.

Gói RREQ đầu tiên đến đích trên tuyến chứa đường hầm là {N1 →M1 →M2 → N8}.Khi nhận được gói RREQ, nút độc hại M1 thêm một entry mới vào bảng định tuyến

để biểu diễn tuyến về nguồn N1, thông tin của entry là: Node = N1, NH = N1, HC

= RREQ.HC + 1 = 1, SN = 35. Tương tự, nút độc hại M2 thêm một entry mới vào

bảng định tuyến để biểu diễn tuyến về nguồn N1 qua chặng kế tiếp là M1, thông tin

của entry là: Node = N1, NH = M1, HC = RREQ.HC + 1 = 2, SN = 35. Cuối cùng,

26

Page 42: NGHIŒNCÙUM¸TS¨GI…IPH†P …

khi nhận được gói RREQ, nút đích N8 thêm một entry mới vào bảng định tuyến để

biểu diễn tuyến về nguồn N1 qua chặng kế tiếp là M2, thông tin của entry là: Node

= N1, NH = M2, HC = RREQ.HC + 1 = 3, SN = 35; đồng thời, nút đích N8 trả lời

tuyến bằng cách gửi gói RREP theo hướng {N8 → M2 → M1 → N1}. Ngoài ra, góiRREQ thứ hai cũng đến đích trên tuyến {N1 → N2 → N7 → N9 → N10 → N11 → N8}.Nhưng, nút đích N8 hủy gói RREQ thứ hai nhận được vì đã xử lý rồi. Khi nhận gói

RREP, M2 thêm một entry mới vào bảng định tuyến để biểu diễn tuyến đến N8, thông

tin bao gồm: Node = N8, NH = N8, HC = RREP.HC + 1 = 1, SN = 45. Tương tự,

M1 thêm một entry mới vào bảng định tuyến để biểu diễn tuyến đến đích N8, thông

tin của entry là: Node = N8, NH = M2, HC = RREP.HC + 1 = 2, SN = 45. Ngoài ra,

nút nguồn N1 cũng thêm một entry mới vào bảng định tuyến để biểu diễn tuyến đến

đích N8 qua chặng kế tiếp là M1, thông tin của entry là: Node = N8, NH = M1, HC

= RREP.HC + 1 = 3, SN = 45. Kết quả là nút nguồn N1 xác lập tuyến đến đích qua

chặng kế tiếp là M1 với chí phí là 3 chặng, tuyến này chứa hai nút độc hại. Chi tiết

gói tin điều khiển và bảng định tuyến được liệt kê trong Bảng 1.5.

Bảng 1.5. Kết quả khám phá tuyến khi bị tấn công lỗ sâu (OB-PM)

Gửi gói NútThông tin của gói[LH][IPsrc, IPdst, HC, SN ]

Bảng định tuyếnNode NH HC SN

RREQ

N1 [N1][N1, N8, 0, 35] NULLN2 [N2][N1, N8, 1, 35] N1 N1 1 35N3 [N3][N1, N8, 2, 35] N1 N2 2 35N4 [N4][N1, N8, 3, 35] N1 N3 3 35N5 Không nhận được gói RREQN6 [N6][N1, N8, 1, 35] N1 N1 1 35N7 [N7][N1, N8, 2, 35] N1 N2 2 35N8 [N8][N1, N8, 3, 35] N1 M2 3 35N9 [N9][N1, N8, 3, 35] N1 N7 3 35N10 [N10][N1, N8, 4, 35] N1 N9 4 35N11 [N11][N1, N8, 5, 35] N1 N10 5 35M1 [M1][N1, N8, 1, 35] N1 N1 1 35M2 [M2][N1, N8, 2, 35] N1 M1 2 35

RREP

N8 Tạo gói RREP [N8][N8, N1, 0, 45]

M2 [M2][N8, N1, 1, 45] N8 N8 1 45M1 [M1][N8, N1, 2, 45] N8 M2 2 45N1 [N1][N8, N1, 3, 45] N8 M1 3 45*

(*) Tuyến được thiết lập tại nút nguồn khi nhận gói RREP

b) Sử dụng cơ chế đóng gói: Phương pháp này sử dụng hai nút độc hại xuất hiện

trong mạng như nút bình thường. Khi nhận được gói RREQ, nút độc hại đóng gói

trước khi chuyển gói RREQ đến đích qua các nút trung gian khác. Quá trình đóng gói

cũng được thực hiện tương tự khi nhận gói RREP. Mục đích là giảm chi phí của gói

27

Page 43: NGHIŒNCÙUM¸TS¨GI…IPH†P …

điều khiển tuyến bằng cách gán giá trị của trường HC = 0. Ngoài ra, nút độc hại còn

tăng giá trị của trường ID_broadcast của gói RREQ để nút láng giềng chấp nhận xử

lý gói này nếu nó đã nhận được gói tương tự từ một láng giềng khác. Mục đích là để

nút nguồn xác lập đường đi qua tuyến chứa nút độc hại vì có chi phí thấp hơn tuyến

thực tế. Tuỳ thuộc vào vị trí xuất hiện mà tuyến chứa một hoặc hai nút độc hại.

Bảng 1.6. Kết quả khám phá tuyến khi bị tấn công lỗ sâu (En-PM)

Gửi gói NútThông tin của gói

[LH][IPsrc, IPdst, HC, SSN/DSN ]

Bảng định tuyếnNode NH HC SN

RREQ

N1 [N1][N1, N8, 0, 35] NULLN2 [N2][N1, N8, 1, 35] N1 N1 1 35N3 [N3][N1, N8, 2, 35] N1 N2 2 35N4 [N4][N1, N8, 3, 35] N1 N3 3 35N5 Không nhận được gói RREQN6 [N6][N1, N8, 1, 35] N1 N1 1 35M1 [M1][N1, N8, 0, 35] N1 N6 2 35N7 [N7][N1, N8, 2, 35] N1 N2 2 35N8 [N8][N1, N8, 6, 35] N1 N11 6 35

N1 M2 1 35N9 [N9][N1, N8, 3, 35] N1 N7 3 35

N1 M1 1 35N10 [N10][N1, N8, 4, 35] N1 N9 4 35N11 [N11][N1, N8, 5, 35] N1 N10 5 35M2 [M2][N1, N8, 0, 35] N1 N10 3 35

RREP

N8 Tạo gói RREP [N8][N8, N1, 0, 45]

M2 [M2][N8, N1, 0, 45] N8 N8 1 45N10 [N10][N8, N1, 1, 45] N8 M2 1 45N9 [N9][N8, N1, 2, 45] N8 N10 2 45M1 [M1][N8, N1, 0, 45] N8 N9 3 45N6 [N6][N8, N1, 1, 45] N8 M1 1 45N1 [N1][N8, N1, 2, 45] N8 N2 2 45*

(*) Tuyến được thiết lập tại nút nguồn khi nhận gói RREP

Ví dụ 1.3: Hình 1.13(b) mô tả hai nút độc hại M1 và M2 sử dụng cơ chế

đóng gói để tấn công mạng. Nút N9 nhận được hai gói RREQ từ nguồn N1 trên tuyến

{N1 → N2 → N7} và {N1 → N6 →M1}. Nút N9 thấy rằng chi phí về nguồn qua chặng

kế tiếp là N7 là 3 chặng, trong khi chi phí về nguồn qua chặng kế tiếp là M1 là 1 chặng

vì giá trị HC của gói RREQ được khởi tạo lại khi chuyển tiếp qua M1. Như vậy, N9

thiết lập tuyến về nguồn qua chặng kế tiếp là M1 bằng cách thêm một entry mới vào

bảng định tuyến, thông tin của entry là: Node = N1, NH = M1, HC = RREQ.HC + 1

= 1, SN = 35; gói RREQ đến từ N7 không được chấp nhận do có chi phí lớn hơn. Nút

đích N8 nhận được hai gói RREQ đến từ nút N11 và M2, gói đến là từ N11 có chi phí là

28

Page 44: NGHIŒNCÙUM¸TS¨GI…IPH†P …

3 chặng do phải chuyển tiếp qua 3 nút trung gian gồm {N9, N10 và N11}, trong khi gói

RREQ đến từ M2 có chi phí là 1 chặng. Vì vậy, nút đích thiết lập tuyến về nguồn qua

chặng kế tiếp là M2 bằng cách thêm một entry mới vào bảng định tuyến, thông tin của

entry là: Node = N1, NH =M2, HC = RREQ.HC + 1 = 1, SN = 35; gói RREQ đến từ

N11 không được chấp nhận do có chi phí lớn hơn. Nút đích N8 trả lời tuyến về nguồn

bằng cách gửi gói RREP theo hướng {N8 → M2 → N10 → N9 → M1 → N6 → N1}.Tất cả các nút trung gian lưu tuyến đến đích N8 mỗi khi nhận được gói RREP, đồng

thời chuyển tiếp gói RREP về nguồn nhờ vào entry trong bảng định tuyến. Khi nhận

được gói RREP từ nút N6, nút nguồn N1 thêm một entry mới vào bảng định tuyến để

biểu diễn tuyến đến đích N8 qua chặng kế tiếp là N6, thông tin của entry là: Node =

N8, NH = N6, HC = RREP.HC + 1 = 2, SN = 45. Kết quả là nút nguồn N1 xác lập

tuyến đến đích qua chặng kế tiếp là N6 với chí phí đến đích là 2 chặng, tuyến này chứa

hai nút độc hại M1 và M2, xem chi tiết trong Bảng 1.6.

1.4.2 Tấn công ngập lụt

Tấn công ngập lụt được thực hiện bằng cách nút độc hại gửi tràn ngập các gói

hệ thống cho các nút không tồn tại trong mạng, hoặc truyền một lượng lớn các gói

dữ liệu vô ích để gây nghẽn mạng. Kết quả là tạo ra bão quảng bá gói tin trên mạng,

làm tăng hao phí truyền thông, giảm khả năng đáp ứng tại mỗi nút vì phải xử lý các

gói tin không cần thiết. Tấn công ngập lụt sử dụng gói tin điều khiển (gồm RREQ và

HELLO) hoặc sử dụng gói DATA. [24, 27]

a) Ngập lụt gói RREQ: Gói yêu cầu tuyến RREQ được sử dụng để thực hiện

khám phá tuyến khi cần thiết, vì thế tin tặc lợi dụng gói này để phát quảng bá quá

mức làm tràn ngập lưu lượng không cần thiết trên mạng. Hình 1.14 cho thấy nút NM

thực hiện hành vi tấn công ngập lụt gói RREQ đã gây hại đến tất cả các nút trong hệ

thống do cơ chế truyền quảng bá.

N1

NS

N5

N2 N3

N4 ND

N9

N7

NM

N8

Hướng chuyển của gói RREQ

RREQ

RREQ RREQ

RREQ

RREQ

RREQ

RREQ RREQ

RREQ

RREQ RREQ

RREQ

RREQ

Hình 1.14. Mô tả tấn công ngập lụt gói RREQ

b) Ngập lụt gói HELLO: Gói HELLO được phát định kỳ để thông báo sự tồn tại

của nút với láng giềng trong mạng không dây, đây là điểm yếu bị tin tặc lợi dụng để

29

Page 45: NGHIŒNCÙUM¸TS¨GI…IPH†P …

phát tràn ngập gói HELLO buộc tất cả các nút láng giềng phải tiêu tốn tài nguyên và

thời gian xử lý gói tin không cần thiết. Hình thức tấn công này chỉ gây hại đến các nút

láng giềng của nút độc hại. Hình 3 cho thấy bốn nút N1, N5, N7 và N8 bị ảnh hưởng

khi nút độc hại NM thực hiện tấn công ngập lụt gói HELLO.

N1

NS

N5

N2 N3

N4 ND

N9

N7

NM

N8

Hướng chuyển của gói HELLO

HELLO HELLO

HELLO

HELLO

Hình 1.15. Mô tả tấn công ngập lụt gói HELLO

c) Ngập lụt gói DATA: Hình thức tấn công này chỉ gây hại tại một số nút trong

mạng. Để thực hiện tấn công, nút độc hại phát quá mức gói DATA đến một nút bất

kỳ trên mạng, điều này ảnh hưởng đến khả năng xử lý của các nút tham gia định

tuyến dữ liệu, tăng hao phí băng thông không cần thiết, gây nghẽn mạng và rớt gói.

Hình 1.16 cho thấy nút độc hại NM gửi tràn ngập gói DATA đến nút N3 trên tuyến

{NM → N1 → N2 → N3}.

N1

NS

N5

N2 N3

N4 ND

N9

N7 NM

N8

Hướng chuyển của gói DATA

DATA

DATA DATA

Hình 1.16. Mô tả tấn công ngập lụt gói DATA

Hành vi tấn công ngập lụt: Theo [27], hành vi tấn công ngập lụt có thể thực

hiện trên giao thức định tuyến theo yêu cầu AODV được mô tả trong Hình 1.17. Nút

độc hại tấn công bằng cách phát gói điều khiển tuyến hoặc gói dữ liệu một cách liên

tục hoặc có chọn lọc. Ngoài ra, nút độc hại có thể tấn công kết hợp bằng cách sử dụng

cả hai gói điều khiển tuyến và gói dữ liệu. Đặc biệt, trong khi tấn công, nút độc hại có

thể sử dụng cùng địa chỉ hoặc sử dụng địa chỉ giả mạo khác nhau nhằm đánh lừa các

giải pháp an ninh. Trong trường hợp tấn công ngập lụt có chọn lọc, nút độc hại đôi

30

Page 46: NGHIŒNCÙUM¸TS¨GI…IPH†P …

khi thể hiện hành vi như nút bình thường (không tấn công). Sau đây là một số loại

hành vi tấn công ngập lụt mà nút độc hại có thể thực hiện:

• ASRRF: Nút độc hại thực hiện tấn công ngập lụt bằng cách sử dụng gói tin

RREQ và địa chỉ giả mạo trong khi tấn công;

• ASHF: Nút độc hại thực hiện tấn công ngập lụt bằng cách sử dụng gói tin HELLO

và địa chỉ giả mạo trong khi tấn công;

• ASDF: Nút độc hại thực hiện tấn công ngập lụt bằng cách sử dụng gói tin DATA

và địa chỉ giả mạo trong khi tấn công;

• NASRRF: Nút độc hại thực hiện tấn công ngập lụt bằng cách sử dụng gói tin

RREQ và địa chỉ cố định trong khi tấn công;

• NASHF: Nút độc hại thực hiện tấn công ngập lụt bằng cách sử dụng gói tin

HELLO và địa chỉ cố định trong khi tấn công;

• NASDF: Nút độc hại thực hiện tấn công ngập lụt bằng cách sử dụng gói tin

DATA và địa chỉ cố định trong khi tấn công.

Tấn công liên tục Tấn công chọn lọc

Tấn công ngập lụt

Gói điều khiển Gói dữ liệu

HELLO Lai

ASDF NASDF ASRRF NASRRF ASHF NASHF

RREQ

Hình 1.17. Phân loại hành vi của nút độc hại khi tấn công ngập lụt

Tương tự các nghiên cứu gần đây [24, 27, 67, 75], luận án tập trung vào giải

pháp phát hiện và ngăn chặn tấn công ngập lụt với hành vi NASRRF. Tấn công ngập

lụt chọn lọc với địa chỉ thay đổi rất khó phát hiện. Đây là một chủ đề rất thú vị và

cần có những nghiên cứu tiếp theo để khắc phục. Tương lai, luận án tiếp tục nghiên

cứu các giải pháp an ninh trước tấn công ngập lụt với các hành vi khác.

1.5 Đánh giá tác hại của tấn công lỗ sâu và ngập lụt

Luận án sử dụng phần mềm mô phỏng NS2 [94] để đánh giá tác hại của tấn công

lỗ sâu, ngập lụt và hiệu quả của các giải pháp an ninh đề xuất. Kịch bản mô phỏng

31

Page 47: NGHIŒNCÙUM¸TS¨GI…IPH†P …

gồm các nút di động ngẫu nhiên theo mô hình Random Way Point (RWP [90]). Đây là

mô hình tổng quát nhất để đánh giá hiệu năng của mạng MANET [85], được sử dụng

phổ biến trong các nghiên cứu gần đây [24, 27, 44]. Để tạo kịch bản mạng mô phỏng

theo mô hình này, luận án sử dụng công cụ “setdest” được hỗ trợ sẵn trên NS2, các

thông số cơ bản như mô tả trong Bảng 1.7. Thông số cơ bản này cũng được sử dụng để

đánh giá hiệu quả an ninh của các giải pháp đề xuất trong những Chương tiếp theo.

Bảng 1.7. Thông số cơ bản được sử dụng để mô phỏng

Tham số Thiết lập

Chuẩn mạng không dây IEEE 802.11Băng thông 11MbpsBán kính phát sóng 250mGiao thức vận chuyển UDPMô hình di động Random WaypointLoại nguồn phát CBR (Constant Bit Rate)Hàng đợi FIFO (DropTail)

1.5.1 Tác hại của tấn công lỗ sâu

Để đánh giá tác hại của tấn công lỗ sâu đến hiệu năng của giao thức AODV,

luận án sử dụng mã nguồn tấn công lỗ sâu được chia sẽ tại [93], 5 tô-pô mạng được sử

dụng, mỗi tô-pô có 100 nút hoạt động trong phạm vi là 2000m x 2000m, theo tác giả

[42] thì phạm vi này đủ để các nút truyền thông đa chặng, tất cả các nút di chuyển

ngẫu nhiên với vận tốc từ 1 đến 30m/s (108km/h). Số lượng nguồn phát dữ liệu lần

lượt là 10CBR và 20CBR, nguồn phát đầu tiên bắt đầu phát tại giây thứ 0, các nguồn

tiếp theo cách nhau 5s, tốc độ phát 2pkt/s, kích thước gói là 512bytes. Hai nút độc hại

đứng yên và chiều dài đường hầm (TL) lần lượt là 1, 2, 3, 4 và 5 chặng (250m/chặng),

băng thông đường hầm là 1Gbps tương tự [6](pp.327–328). Hai nút độc hại thực hiện

hành vi ngay khi bắt đầu mô phỏng, vị trí của chúng được bố trí như Hình 1.18. Tiêu

chí đánh giá gồm: Tỷ lệ gửi gói tin thành công, phụ tải định tuyến và thời gian trễ

trung bình. Kết quả thống kê sau khi thực hiện 60 lần mô phỏng với các tham số đầu

vào khác nhau được trình bày trong Hình 1.19.

(1000, 1025)

(1000, 775)

2000m

2000m

(a) TL=1

(1000, 1150)

(1000, 650)

2000m

2000m

(b) TL=2

(1000, 1275)

(1000, 525)

2000m

2000m

(c) TL=3

(1000, 1400)

(1000, 400)

2000m

2000m

(d) TL=4

(1000, 1525)

(1000, 275)

2000m

2000m

(e) TL=5

Hình 1.18. Vị trí nút độc hại thực hiện tấn công lỗ sâu

32

Page 48: NGHIŒNCÙUM¸TS¨GI…IPH†P …

a) Tỷ lệ gửi gói thành công: Kết quả mô phỏng tại Hình 1.19(a) cho thấy rằng

tấn công lỗ sâu nhằm mục đích phá hoại đã ảnh hưởng đến hiệu năng của AODV. Tác

hại lớn nhất khi chiều dài của đường hầm là 3 chặng do việc chuyển hướng tuyến qua

nút độc hại được thực hiện thành công nhất. Sau 1000s mô phỏng, PDR của giao thức

AODV là 78.36% và 76.07% tương ứng 10CBR và 20CBR trong môi trường mạng bình

thường (TL=0), độ lệch chuẩn lần lượt là 0.72% và 2.45%. Tuy nhiên, khi bị tấn công

lỗ sâu thì PDR giảm xuống rất nhiều, đạt thấp nhất là 40.28% và 40.11% tương ứng

với 10CBR và 20CBR khi TL=3, độ lệch chuẩn lần lượt là 4.03% và 3.75%.

30

40

50

60

70

80

0 1 2 3 4 5

Tỷ

lệ gửi

gói

thàn

h cô

ng (

%)

Chiều dài đường hầm (hop)

10CBR 20CBR

(a) Tỷ lệ gửi gói tin thành công

5

10

15

20

25

0 1 2 3 4 5

Phụ

tải địn

h tu

yến

(pkt

)

Chiều dài đường hầm (hop)

10CBR 20CBR

(b) Phụ tải định tuyến

0

0.2

0.4

0.6

0.8

1

1.2

0 1 2 3 4 5

Thờ

i gia

n trễ

trun

g bì

nh (

sec)

Chiều dài đường hầm (hop)

10CBR 20CBR

(c) Thời gian trễ trung bình

Hình 1.19. Tác hại tấn công lỗ sâu đến hiệu năng của giao thức AODV

33

Page 49: NGHIŒNCÙUM¸TS¨GI…IPH†P …

b) Phụ tải định tuyến: Hình 1.19(b) cho thấy tấn công lỗ sâu đã làm tăng phụ

tải định tuyến của AODV ở tất cả kịch bản do số lượng gói tin chuyển thành công

đến đích giảm. Kết quả mô phỏng trong môi trường mạng bình thường cho thấy giao

thức AODV có phụ tải định tuyến là 13.81pkt khi số lượng nguồn phát là 10CBR và

13.90pkt với 20CBR, độ lệch chuẩn lần lượt là 1.46pkt và 1.82pkt. Tuy nhiên, khi bị

tấn công lỗ sâu thì phụ tải định tuyến tăng lên rất nhiều, đạt 16.34pkt và 17.75pkt

tương ứng với 10CBR và 20CBR nếu chiều dài đường hầm là 3, độ lệch chuẩn lần lượt

là 1.59pkt và 3.39pkt.

c) Thời gian trễ trung bình: Hình 1.19(c) cho thấy rằng thời gian trễ trung bình

của AODV giảm dần theo chiều dài đường hầm. Nguyên nhân là do hầu hết các gói

dữ liệu chuyển thành công đến đích trên tuyến ngắn đã làm giảm thời gian trễ, các gói

tin trên tuyến dài bị hủy trước khi đến đích. Kết quả mô phỏng cho thấy trong môi

trường mạng bình thường, thời gian trễ trung bình để định tuyến thành công một gói

dữ liệu của AODV là 0.794s và 0.934s tương ứng 10CBR và 20CBR, độ lệch chuẩn lần

lượt là 0.056s và 0.081s. Khi xuất hiện nút độc hại thì thời gian trễ trung bình giảm

xuống thấp nhất là 0.556s và 0.629s khi độ dài đường hầm là 5 chặng, độ lệch chuẩn

lần lượt là 0.067s và 0.083s.

1.5.2 Tác hại của tấn công ngập lụt

Luận án sử dụng các thông số cơ bản tại Bảng 1.7 để đánh giá tác hại của tấn

công ngập lụt đến hiệu năng của giao thức AODV. Tổng số 15 tô-pô di động được sử

dụng, gồm 5 tô-pô mạng có các nút di động với vận tốc từ 1 đến 10m/s; 5 tô-pô mạng

có các nút di động với vận tốc từ 1 đến 20m/s và 5 tô-pô mạng có các nút di động với

vận tốc từ 1 đến 30m/s. Mỗi tô-pô mạng có 50 nút hoạt động trong phạm vi là 1000m

x 1000m, thời gian mô phỏng là 500s, 20 nguồn phát dữ liệu, mỗi nguồn phát 2pkt/s,

kích thước gói là 512bytes, nguồn phát đầu tiên bắt đầu phát tại giây thứ 0, các nguồn

tiếp theo cách nhau 5s. Số lượng nút độc hại tấn công lần lượt là 1 hoặc 2 nút, vị trí

các nút độc hại được bố trí như Hình 1.20, thực hiện hành vi tấn công với tần suất

10pkt/s và 20pkt/s ngay khi bắt đầu mô phỏng. Tiêu chí đánh giá gồm: Tỷ lệ gửi gói

tin thành công, phụ tải định tuyến và thời gian trễ trung bình.

(500, 500)

1000m

1000m

(a) Một nút

(500, 700)

(500, 300)

1000m

1000m

(b) Hai nút

Hình 1.20. Vị trí nút độc hại thực hiện tấn công ngập lụt

34

Page 50: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Kết quả thống kê sau khi thực hiện 75 lần mô phỏng với các tham số đầu vào

khác nhau được trình bày trong Hình 1.21,bao gồm: 25 lần mô phỏng giao thức AODV

với vận tốc là 1..10m/s trong môi trường bình thường và có nút độc hại tấn công với số

lượng và tần suất khác nhau; 25 lần mô phỏng giao thức AODV với vận tốc là 1..20m/s

trong môi trường bình thường và có nút độc hại tấn công với số lượng và tần suất khác

nhau; 25 lần mô phỏng giao thức AODV với vận tốc là 1..30m/s trong môi trường bình

thường và có nút độc hại tấn công với số lượng và tần suất khác nhau.

a) Tỷ lệ gửi gói thành công: Tấn công ngập lụt không nhằm mục đích hủy gói

tin, mục đích của tấn công ngập lụt là làm tăng hao phí truyền thông. Tuy nhiên, nếu

tần suất phát gói RREQ đủ lớn sẽ cản trở quá trình khám phá tuyến và ảnh hưởng

đến hiệu năng của mạng. Hình 1.21(a) cho thấy tỷ lệ gửi gói tin thành công của AODV

giảm dần theo vận tốc di động, số lượng nút độc hại và tần suất tấn công. Sau 500s

mô phỏng trong môi trường mạng bình thường (Normal), tỷ lệ gửi gói tin thành công

đạt 95.8%, 93.92% và 93.52% tương ứng vận tốc di động là 10m/s, 20m/s và 30m/s, độ

lệch chuẩn lần lượt là 1.52%, 0.72% và 0.97%. Khi bị hai nút độc hại tấn công (2MN)

với tần suất 20pkt/s thì tỷ lệ gửi gói tin thành công giảm từ 93.52% xuống còn 9.56%

tại kịch bản di động với vận tốc di động 30m/s, độ lệch chuẩn là 4.08%. Như vậy, tấn

công ngập lụt đã làm giảm hiệu quả định tuyến dữ liệu của giao thức AODV, mức độ

giảm tỷ lệ thuận với tần suất tấn công và số lượng nút độc hại.

b) Phụ tải định tuyến: Hình 1.21(b) cho thấy tấn công ngập lụt đã làm tăng phụ

tải định tuyến của AODV theo vận tốc di động, số lượng nút độc hại và tần suất tấn

công. Sau 500s mô phỏng trong môi trường mạng bình thường, phụ tải định tuyến của

AODV là 2.18pkt, 3.08pkt và 3.80pkt tương ứng vận tốc di động là 10m/s, 20m/s và

30m/s, độ lệch chuẩn lần lượt là 0.48pkt, 0.31pkt và 0.75pkt. Tuy nhiên, khi xuất hiện

tấn công thì phụ tải định tuyến tăng lên rất cao, từ 2.18pkt lên 17.37pkt khi bị một

nút độc hại tấn công (1MN) với tần suất 10pkt/s trong kịch bản di động với vận tốc

10m/s, độ lệch chuẩn là 0.75pkt. Khi bị hai nút độc hại tấn công với tần suất 20pkt/s

thì phụ tải định tuyến tăng cao nhất, từ 3.8pkt lên 829.79pkt trong kịch bản di động

với vận tốc 30m/s.

c) Thời gian trễ trung bình: Hình 1.21(c) cho thấy tấn công ngập lụt đã làm

tăng thời gian trễ trung bình để định tuyến thành công một gói dữ liệu đến đích của

giao thức AODV. Nguyên nhân là do tấn công ngập lụt đã cản trở quá trình khám phá

tuyến của tất cả các nút vì phải xử lý các gói tin vô ích do nút độc hại phát ra. Sau

500s mô phỏng trong môi trường bình thường, thời gian trễ trung bình của AODV là

0.171s, 0.232s và 0.217s tương ứng vận tốc di động là 10m/s, 20m/s và 30m/s, độ lệch

chuẩn lần lượt là 0.062s, 0.039s và 0.033s. Tuy nhiên, khi xuất hiện một nút độc hại

tấn công với tần suất 10pkt/s thì thời gian trễ trung bình tăng từ 0.171s lên 0.299s

trong kịch bản di động với vận tốc 10m/s, độ lệch chuẩn là 0.043. Trường hợp hai nút

độc hại tấn công với tần suất 20pkt/s và nút di động với vận tốc 30m/s thì thời gian

trễ trung bình tăng từ 0.217s lên 4.043s, độ lệch chuẩn là 1.276s.

35

Page 51: NGHIŒNCÙUM¸TS¨GI…IPH†P …

0

10

20

30

40

50

60

70

80

90

100

v1-10 v1-20 v1-30

Tỷ

lệ gửi

gói

tin

thàn

h cô

ng (

%)

Vận tốc di động (m/s)

Normal 1MN-10pkt/s 1MN-20pkt/s 2MN-10pkt/s 2MN-20pkt/s

(a) Tỷ lệ gửi gói tin thành công

0

200

400

600

800

1000

1200

1400

v1-10 v1-20 v1-30

Phụ

tải địn

h tu

yến

(pkt

)

Vận tốc di động (m/s)

Normal 1MN-10pkt/s 1MN-20pkt/s 2MN-10pkt/s 2MN-20pkt/s

(b) Phụ tải định tuyến

0

1

2

3

4

5

6

v1-10 v1-20 v1-30

Thờ

i gia

n trễ

trun

g bì

nh (

sec)

Vận tốc di động (m/s)

Normal 1MN-10pkt/s 1MN-20pkt/s 2MN-10pkt/s 2MN-20pkt/s

(c) Thời gian trễ trung bình

Hình 1.21. Tác hại tấn công ngập lụt gói RREQ đến hiệu năng của giao thức AODV

1.6 Phương pháp kiểm tra an ninh

Các giải pháp an ninh đã công bố trong thời gian qua sử dụng hai phương pháp

là kiểm tra đầu-cuối (EE) và kiểm tra tại mỗi–chặng (HbH). Điểm khác biệt giữa hai

phương pháp là thông tin được sử dụng trong quá trình kiểm tra an ninh là do nút

nguồn hoặc nút liền trước cung cấp.

36

Page 52: NGHIŒNCÙUM¸TS¨GI…IPH†P …

– Kiểm tra đầu–cuối: Nút trung gian (hoặc đích) sử dụng thông tin của nút

nguồn trong gói điều khiển để kiểm tra tuyến. Ưu điểm là hạn chế tiêu hao tài nguyên

hệ thống, nhưng nút trung gian không có cơ sở để kiểm tra nút liền trước, nút chỉ xác

định được tuyến độc hại mà không biết chính xác địa chỉ của nút độc hại.

– Kiểm tra tại mỗi–chặng: Mỗi nút sử dụng thông tin của nút liền trước trong

gói điều khiển tuyến để kiểm tra tuyến. Ưu điểm là nút trung gian có cơ sở để kiểm

tra nút liền trước nên nút biết chính xác địa chỉ của nút độc hại và tuyến chứa nút

độc hại, tỷ lệ sai lầm thấp hơn kiểm tra đầu–cuối. Tuy nhiên, cơ chế kiểm tra này sẽ

làm tăng chi phí định tuyến và tiêu hao tài nguyên mạng do việc kiểm tra được thực

hiện tại mỗi nút.

1.7 Một số giải pháp an ninh liên quan

Hầu hết các giải pháp an ninh liên quan đã công bố theo hai hướng tiếp cận là:

(1) Phát hiện xâm nhập và (2) Bảo mật định tuyến như Hình 1.22. Giải pháp phát

hiện xâm nhập có ưu điểm là đơn giản, phát hiện chính xác từng hình thức tấn công

và dễ dàng áp dụng trên các thiết bị có cấu hình phần cứng thấp, nhưng hiệu quả an

ninh hạn chế hơn giải pháp bảo mật định tuyến. Ngược lại, giải pháp bảo mật định

tuyến có thể phát hiện và ngăn chặn nhiều hình thức tấn công, nhưng phức tạp và yêu

cầu cấu hình thiết bị phần cứng cao để vận hành các thuật toán mã hóa dữ liệu.

Blackhole/Sinkhole

DelPHI [17]

Grayhole Wormhole Flooding

PH

ÁT

HIỆ

N X

ÂM

NH

ẬP

WADT [44]

TTHCA [42]

EEP [72]

Thời gian

Vị trí

BẢ

O M

ẬT

ĐỊN

H T

UY

ẾN

FAP [67]

EFS [75]

BI [24]

SVMT [62]

kNNAODV [49]

Ngưỡng

Chữ ký số

SAODV [91]

ARAN [74]

H(AODV) [48]

OTP_AODV [21]

OTP

Học máy

Hình 1.22. Tổng hợp các giải pháp an ninh trên mạng MANET đã công bố

37

Page 53: NGHIŒNCÙUM¸TS¨GI…IPH†P …

a) Phát hiện xâm nhập: Đầu tiên là một số IDS phát hiện tấn công lỗ sâu dựa

trên thời gian [17, 42, 44] và vị trí [72]. Thời gian truyền gói tin trên một tuyến tỷ lệ

thuận với HC, tuyến dài tương ứng HC lớn thì thời gian tăng tương ứng, nên DPH của

các tuyến bình thường là gần giống nhau. Ngược lại, tuyến có nút lỗ sâu sẽ có DPH

cao hơn tuyến bình thường, nguyên nhân là do gói khám phá tuyến phải truyền qua

liên kết giữa hai nút độc hại với một khoảng cách xa. Đây là ý tưởng chính được áp

dụng trong giải pháp DelPHI [17], TTHCA [42] và WADT [44] để phát hiện tấn công

lỗ sâu. Ngoài ra, đặc điểm của tấn công lỗ sâu là hai nút độc hại kết nối qua một đường

hầm. Vì vậy, tác giả [72] đã đề xuất giao thức đầu–cuối (EEP). Giải pháp đơn giản,

nhưng hiệu quả trong việc phát hiện tấn công lỗ sâu bằng cách sử dụng vị trí của mỗi

nút để tính chiều dài tuyến (len). Nếu số chặng đến đích nhỏ hơn dlen/Re thì tuyếncó chứa nút lỗ sâu, ngược lại thì tuyến là bình thường, trong đó len là độ dài tuyến

và R là bán kính phát sóng tối đa của nút. Tuy nhiên, các giải pháp đã công bố vẫn

còn một số hạn chế: (1) Thời gian DPH được tính dựa vào thời gian RTT hoặc PTT,

chúng bị ảnh hưởng bởi môi trường di động và độ trễ trong quá trình xử lý tại mỗi nút

nên ảnh hưởng đến độ chính xác của thuật toán kiểm tra; (2) Sử dụng phương pháp

kiểm tra đầu-cuối nên tỷ lệ sai lầm cao. Nút nguồn hoặc đích không nhận biết chính

xác địa chỉ nút độc hại. Để phát hiện nút độc hại, nút nguồn phải sử dụng thêm các

gói tin điều khiển mới (tiêu biểu là TTHCA [42]), nhưng điều này sẽ làm tăng hao phí

truyền thông. Ngoài ra, tin tặc có thể giả mạo gói tin điều khiển mới để tấn công nếu

không có giải pháp bảo mật phù hợp; (3) Do không hỗ trợ cơ chế kiểm tra toàn vẹn

gió tin nên nút độc hại có thể thay đổi thông tin của gói tin RCP nhằm qua mặt các

giải pháp an ninh.

Tiếp theo là một số IDS phát hiện tấn công ngập lụt. Ý tưởng chính của các

IDS là dựa vào tần suất phát gói RREQ để làm giá trị “ngưỡng” phát hiện tấn công

mạng. Một nút thực hiện yêu cầu tuyến vượt quá giá trị ngưỡng sẽ được xác định là

độc hại. Điểm khác biệt của các IDS đã công bố là giá trị ngưỡng được thiết lập cố

định [67, 75] hoặc linh động [24, 27]. Tuy nhiên, tồn tại trong các giải pháp đã công

bố là: (1) Việc xác định giá trị ngưỡng cố định sẽ thiếu tính linh hoạt, nguyên nhân là

ngưỡng tối ưu trong các môi trường mạng khác nhau sẽ khác nhau; (2) Tỷ lệ sai lầm

cao nếu tin tặc thực hiện hành vi tấn công với tần suất thấp (nhỏ hơn 10pkt/s); (3)

Đặc biệt, tin tặc có thể qua mặt các giải pháp an ninh bằng cách thiết lập nút độc

hại phát gói RREQ với tần suất thấp hơn giá trị ngưỡng. Ngoài ra, một số giải pháp

[49, 62] dựa trên hướng tiếp cận khác là học máy, các giải pháp này sử dụng thuật

toán máy học véc-tơ hỗ trợ (SVM) và k-láng giềng gần nhất (kNN) để phát hiện nút

độc hại. Tuy nhiên, thuật toán của giải pháp SVMT [62] vẫn dựa trên ngưỡng cố định

nên hiệu quả an ninh hạn chế. Giải pháp kNNAODV [49] dựa trên số lượng phát gói

RREQ phân biệt nút độc hại hoặc bình thường. Ngoài ra, kNNAODV được thiết kế để

sử dụng cho mạng cảm biến không dây gồm các nút mạng cố định. Vì vậy, giải pháp

kNNAODV bị hạn chế khi sử dụng trong mạng MANET do các nút mạng di động với

vận tốc cao.

38

Page 54: NGHIŒNCÙUM¸TS¨GI…IPH†P …

b) Bảo mật định tuyến: Mặc dù các IDS có thể phát hiện và ngăn chặn tấn công

mạng hiệu quả, nhưng chúng dễ bị sai lầm nếu tin tặc thay đổi hành vi tấn công. Một

số giải pháp theo hướng tiếp cận bảo mật định tuyến có thể cải thiện hạn chế này. Ý

tưởng chính của các giải pháp là sử dụng OTP hoặc chữ ký số để xác thực trong quá

trình khám phá tuyến. Đầu tiên là giải pháp an ninh sử dụng OTP. Đây là hướng tiếp

cận mới với khả năng an ninh tốt, đã được ứng dụng trong thực tế như an ninh trong

mạng LTE [35], giao dịch ATM [43]. Trong quá trình khám phá tuyến, OTP được gửi

kèm các gói tin điều khiển tuyến cho phép nút trung gian kiểm tra nút liền trước. Cơ

chế xác thực OTP cho phép phát hiện hầu hết các hình thức tấn công mạng hiện tại với

chi phí định tuyến phù hợp và ít ảnh hưởng đến giao thức gốc. Tuy nhiên, H(AODV)

[48] chưa hỗ trợ tạo OTP cho các nút, dữ liệu của bảng “Hash Tables” được cài đặt thủ

công tại mỗi nút. Đây là điểm yếu vì các nút mạng phân tán và di động thì việc chia

sẻ “Hash Tables” sao cho an toàn là một thách thức. Ngoài ra tác giả chưa mô phỏng

trên môi trường có nút độc hại để đánh giá hiệu quả. Giao thức OTP_AODV [21]

được đề xuất đã khắc phục được các nhược điểm này. Cơ chế tạo OTP trong giao thức

OTP_AODV không yêu cầu một kênh truyền riêng, nhưng tác giả đã yêu cầu nhiều

điều kiện giả thuyết khác. Trong đó yêu cầu về “mỗi nút trong mạng có một chứng thư

số và được xác thực bởi cơ quan có thẩm quyền” là quá lý tưởng. Nếu giả thuyết này

được đáp ứng thì các nút trong mạng có thể xác thực nút liền trước dựa vào chứng

thư số mà không cần phải dựa vào OTP. Ngoài ra, do thiếu cơ chế kiểm tra toàn vẹn

gói tin nên nút độc hại có thể thay đổi thông tin của gói điều khiển tuyến nhận được

và chuyển tiếp chúng mà không bị phát hiện.

Mặc dù các giải pháp sử dụng OTP có hiệu quả an ninh tốt, nhưng hướng tiếp

cận này tồn tại hạn chế là không có cơ chế xác thực toàn vẹn gói tin. Để cải thiện hạn

chế này, các giải pháp an ninh trên nền tảng chữ ký số đã được đề xuất như SAODV

[91] và ARAN [74]. Để đảm bảo an ninh, cả hai giao thức sử dụng chữ ký số để bảo

vệ các trường không thay đổi. Chi phí định tuyến HC thay đổi mỗi khi chuyển tiếp,

nên SAODV sử dụng chuỗi băm để bảo vệ trường này. Hạn chế của SAODV chỉ hỗ

trợ phương pháp kiểm tra đầu-cuối nên nút trung gian không thể kiểm tra nút liền

trước. Ngoài ra, SAODV chưa có cơ chế quản lý khóa công khai nên nút độc hại có

thể sử dụng bộ khóa giả mạo để tấn công mạng mà không bị phát hiện. Vấn đề này

được khắc phục trong ARAN bằng cách bổ sung cơ chế cấp chứng thư số dựa trên hạ

tầng khóa công khai (PKI). ARAN giả định rằng gói điều khiển tuyến được ký tại nút

nguồn trước khi gửi đi, 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 phát hiện tấn

công. Do đặc điểm này mà ARAN không thể tích hợp thông số HC vào gói điều khiển

tuyến để tính chi phí, bao gồm gói khám phá tuyến RDP và trả lời tuyến REP. Vì vậy,

ARAN không thể nhận biết chi phí tuyến đến đích và nút trung gian không thể trả lời

tuyến đã làm giảm hiệu quả định tuyến của giao thức gốc. Cả hai giao thức đều không

thể phát hiện tấn công lỗ sâu ở chế độ ẩn [15, 57, 92].

39

Page 55: NGHIŒNCÙUM¸TS¨GI…IPH†P …

1.8 Tiểu kết Chương 1

Chương này của luận án đã trình bày cơ chế hoạt động của giao thức AODV,

phân tích chi tiết hình thức tấn công lỗ sâu và ngập lụt trên mạng MANET. Ngoài

ra, chương này cũng thiết kế kịch bản, đánh giá tác hại của 2 hình thức tấn công này

bằng mô phỏng trên NS2. Đây là cơ sở để kiểm tra hiệu quả của các giải pháp an ninh

được đề xuất tại các chương tiếp theo. Kết quả mô phỏng đã cho thấy rằng:

(1) Tấn công lỗ sâu nhằm mục đích phá hoại đã ảnh hưởng đến hiệu năng mạng.

Mức độ gây hại tùy thuộc vào chiều dài đường hầm, vị trí nút độc hại. Khi 2

nút độc hại ở vị trí trung tâm và độ dài đường hầm là 3 chặng thì tỷ lệ gửi gói

tin thành công của giao thức AODV giảm từ 78.38% và 76.07% xuống 40.28%

và 40.11%, tương ứng 10 và 20 nguồn phát dữ liệu.

(2) Tấn công ngập lụt làm tăng rất lớn phụ tải định tuyến, không nhằm mục đích

hủy gói tin. Tuy nhiên, nếu tần suất phát gói RREQ đủ lớn sẽ cản trở quá trình

khám phá tuyến và ảnh hưởng đến hiệu quả định tuyến. Kết quả mô phỏng khi

bị hai nút độc hại tấn công với tần suất 20pkt/s thì tỷ lệ gửi gói tin thành công

giảm từ 93.52% xuống còn 9.56% tại kịch bản di động với vận tốc di động 30m/s,

độ lệch chuẩn là 4.08%.

Như vậy, cả hai hình thức tấn công lỗ sâu và tấn công ngập lụt đều gây ảnh

hưởng đến hiệu năng của giao thức AODV trên mạng MANET. Trong các Chương

tiếp theo, luận án sẽ phân tích một số giải pháp an ninh đã công bố và đề xuất giải

pháp phát hiện, ngăn chặn các hình thức tấn công này.

40

Page 56: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Chương 2

GIẢI PHÁP PHÁT HIỆN VÀ NGĂN CHẶN

TẤN CÔNG LỖ SÂU

Chương này phân tích chi tiết một số giải pháp phát hiện và ngăn chặn tấn công

lỗ sâu đã được công bố. Qua đó, luận án chỉ ra các điểm tồn tại và đề xuất giải pháp

xác thực đa mức (MLA) nhằm phát hiện và ngăn chặn tấn công lỗ sâu. Luận án cũng

đã tích hợp giải pháp MLA vào AODV tạo giao thức cải tiến tên là MLAMAN. Đồng

thời, đánh giá hiệu quả an ninh của giải pháp MLA và EEP trong môi trường mạng

di chuyển ngẫu nhiên và có nút độc hại.

2.1 Giới thiệu

Mục đích của tấn công lỗ sâu là nghe trộm, đôi khi tin tặc thiết lập tấn công

nhằm mục đích phá hoại [44]. Để tấn công, tin tặc sử dụng hai nút độc hại kết nối với

nhau thông qua đường hầm. Khi nhận được gói tin, hai nút độc hại phối hợp để gửi

gói đến đích và chuyển tiếp gói về nguồn. Mục đích để nút nguồn xác lập tuyến qua

đường hầm do chi phí thấp hơn tuyến thực tế. Hình 2.1 mô tả hai nút độc hại M1 và

M2 kết nối với nhau qua một đường hầm để thực hiện tấn công lỗ sâu. Có ba tuyến

từ nguồn (NS) đến đích (ND). Trong đó tuyến qua đường hầm có chi phí là 3 chặng

(hoặc 1 chặng nếu ở chế độ ẩn), thấp hơn hai tuyến bình thường có chi phí lần lượt là

4 và 6 chặng. Vì vậy, tất cả gói dữ liệu từ NS đến ND được chuyển qua đường hầm.

HC=4

HC=6 HC=1 (HM)

HC=3 (PM)

Đường hầm

M1

M2

NS

ND

N1

Hình 2.1. Mô tả tấn công lỗ sâu sử dụng đường hầm kết nối giữa M1 và M2

41

Page 57: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Tấn công lỗ sâu rất nguy hại và khó phát hiện do gói tin không bị thay đổi khi

chuyển tiếp qua nút độc hại ở chế độ ẩn. Chương này của luận án sẽ giải quyết nhược

điểm các giải pháp đã công bố bằng cơ chế xác thực đa mức (MLA [CT1]).

2.2 Phân tích ưu và nhược điểm của một số giải pháp an ninh

trước tấn công lỗ sâu

Một số giải pháp an ninh đã công bố được liệt kê như Hình 2.2. Đầu tiên là một

số giải pháp dựa vào thời gian, tiêu biểu là DelPHI, TTHCA, WADT. Hạn chế của

các giải pháp này là thời gian trễ trên mỗi chặng phụ thuộc vào nhiều yếu tố như môi

trường di động, lưu lượng dữ liệu và độ trễ xử lý. Vì vậy, hiệu quả an ninh phụ thuộc

vào độ dài đường hầm. Giải pháp dựa trên vị trí cải thiện được hạn chế này, nhưng

EEP sử dụng phương pháp kiểm tra đầu-cuối nên xuất hiện sai lầm nếu độ dài đường

hầm nhỏ. Phần này phân tích ưu, nhược điểm của các giải pháp này để làm cơ sở cho

hai đề xuất của luận án.

DelPHI [17] WADT [44] TTHCA [42] EEP [72]

Thời gian Vị trí

Wormhole

MLA [CT1]

Hình 2.2. Một số giải pháp phát hiện và ngăn chặn tấn công lỗ sâu đã công bố

2.2.1 Giải pháp DelPHI

Tác giả [17] và cộng sự đã đề xuất giải pháp tên là DelPHI nhằm phát hiện và

ngăn chặn tấn công lỗ sâu. DelPHI sử dụng thời gian RTT để tính độ trễ mỗi chặng

như Công thức (2.1). Độ trễ trên mỗi chặng của các tuyến bình thường là gần giống

nhau, nhưng thấp hơn tuyến chứa đường hầm. Nguyên nhân là do gói tin phải truyền

qua liên kết giữa hai nút độc hại với một khoảng cách xa hơn bán kính phát sóng. Do

vậy, nếu DPH của tuyến Pi lớn hơn DPH của tuyến Pj giá trị ngưỡng (Th) thì Pi chứa

nút độc hại.

DPH = RTT/(2 ∗HC) (2.1)

Giao thức DelPHI được cải tiến từ AODV. DelPHI sử dụng gói yêu cầu tuyến

(DREQ) và trả lời tuyến (DREP) thay cho gói RREQ và RREP của giao thức gốc.

Điểm cải tiến của giao thức DelPHI so với AODV là:

• Nút trung gian luôn quảng bá gói DREQ đến đích. Nút đích chấp nhận tất cả gói

DREQ để trả lời tuyến. Mục đích là cho phép nút nguồn nhận gói DREP trên

nhiều tuyến khác nhau;

42

Page 58: NGHIŒNCÙUM¸TS¨GI…IPH†P …

• Khi nhận được gói DREP, nút nguồn kiểm tra và chỉ chấp nhận gói DREP trên

tuyến bình thường, các gói DREP trên tuyến chứa nút độc hại bị loại bỏ.

Giả sử rằng nút nguồn nhận được các gói DREP từ nút đích trên q tuyến đường

khác nhau gồm P0, P1, P2, P3, ..., Pq−1. Thuật toán 2.1 cho phép nút nguồn xác định các

tuyến bình thường và tuyến chứa nút độc hại. Trong trường hợp xấu nhất, nút đích sẽ

gửi gói DREP về nguồn trên n-2 tuyến đường, tất cả các tuyến đường có độ dài là 2

chặng. Như vậy, giải pháp DelPHI có độ phức tạp thuật toán là O((n− 2)2) = O(n2),

với n là số lượng nút mạng.

Algorithm 2.1: Thuật toán kiểm tra tuyến của DelPHI [17]

Input: RL = {P0, P1, P2, P3, ..., Pq−1} và giá trị ngưỡng Th

Output: ML = {các tuyến độc hại} và NL = {các tuyến bình thường}

1 Begin

2 for i = 0 to q - 1 do RL[i].DPH ← RL[i].RTT/RL[i].HC;

3 for i = 0 to q - 2 do

4 for j = 0 to q - i - 1 do

5 if (RL[j].DPH < RL[j + 1].DPH) then Swap(RL[j], RL[j+1]);

6 ind← q − 1;

7 while (RL[ind− 1].DPH −RL[ind].DPH 6 Th) and (ind > 1) do

8 NL← NL ∪ {RL[ind]};9 ind← ind− 1;

10 while (ind > 1) do

11 ML←ML ∪ {RL[ind]};12 ind← ind− 1;

13 return ML và NL;

14 End;

Nhận xét: Kết quả mô phỏng trên NS2 cho thấy hiệu quả an ninh của DelPHI

phụ thuộc vào giá trị ngưỡng (Th) (xem thêm [17], Bảng 1). Khi thiết lập Th là 1ms,

tỷ lệ phát hiện tuyến chứa đường hầm đúng tối đa là 97.6% (sai lầm 2.4%). Tuy nhiên,

tỷ lệ đúng của DelPHI khi kiểm tra tuyến bình thường chỉ đạt 85.8% (sai lầm 14.2%).

Ngoài ra, DelPHI còn tồn tại một số nhược điểm như sau:

• Thời gian RTT phụ thuộc vào nhiều yếu tố như: môi trường di động, lưu lượng

dữ liệu và độ trễ xử lý tại mỗi nút. Vì vậy, giá trị ngưỡng tối ưu trong môi trường

khác nhau sẽ khác nhau. Việc thiết lập giá trị ngưỡng thủ công dẫn đến thuật

toán thiếu mềm dẻo khi ứng dụng vào thực tế;

• Nút trung gian luôn quảng bá gói DREQ đến đích mà không trả lời tuyến cho

dù nó có tuyến hợp lệ đến đích. Vì vậy, DelPHI đã làm giảm hiệu quả khám phá

tuyến và tăng hao phí truyền thông so với giao thức gốc;

43

Page 59: NGHIŒNCÙUM¸TS¨GI…IPH†P …

• DelPHI không hiệu quả trong trường hợp tất cả gói DREP về nguồn trên tuyến

chứa đường hầm hoặc nguồn chỉ nhận được gói DREP duy nhất một tuyến. Nút

trung gian không tham gia vào việc kiểm tra an ninh. Vì vậy, nút nguồn chỉ phát

hiện tuyến có chứa đường hầm, không xác định được địa chỉ của nút độc hại.

2.2.2 Giải pháp WADT

Để cải thiện hạn chế của DelPHI, tác giả [44] và cộng sự đã đề xuất giải pháp

WADT nhằm phát hiện và ngăn chặn tấn công lỗ sâu. WADT sử dụng độ trễ tối đa

(MD) như là giá trị ngưỡng nhằm phát hiện tuyến chứa đường hầm hoặc bình thường.

Độ trễ tối đa giữa nút nguồn NS và nút láng giềng NA như mô tả trong Hình 2.3.

NS

NATRREQ

TRREP

R

d− 1

R

Hình 2.3. Mô tả cách tính độ trễ tối đa của giải pháp WADT [44]

Công thức (2.2) cho phép tính độ trễ tối đa từ nút nguồn NS và nút láng giềng

NA, trong đó T là thời gian đi từ nguồn NS đến nút láng giềng NA, R là bán kính phát

sóng của nguồn NS, d là khoảng cách Euclid của hai nút NS và NA. Nếu nút nguồn

NS có nhiều láng giềng thì ngưỡng là giá trị lớn nhất trong các MD tương ứng mỗi

láng giềng. Tuyến được xác định là chứa nút độc hại nếu DPH lớn hơn ngưỡng MD.

MD = TRREQ + TRREP + 2× (T × (R

d− 1)) (2.2)

Tác giả [44] trình bày giao thức cải tiến từ AODV, giao thức này sử dụng giải

pháp WADT hoạt động như sau:

• Mỗi khi khởi động quá trình khám phá tuyến, nút nguồn tính độ trễ tối đa (MD)

trên 1 chặng để làm giá trị ngưỡng;

• Nút đích chấp nhận tất cả gói RREQ nhận được để trả lời tuyến, mục đích là

cho phép nút nguồn nhận gói RREP trên nhiều tuyến khác nhau;

• Khi nhận được gói RREP, nút nguồn tính DPH theo Công thức (2.1) trên mỗi

tuyến và so sánh với ngưỡng MD. Nếu DPH của tuyến Pi lớn hơn ngưỡng MD

thì Pi chứa nút độc hại, gói RREP bị loại bỏ.

44

Page 60: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Thuật toán 2.2 cho phép nút nguồn xác định các tuyến bình thường và tuyến

chứa nút độc hại. Giả sử rằng nút nguồn nhận được các gói RREP từ nút đích trên

q tuyến đường P0, P1, P2, P3, ..., Pq−1. Nút nguồn duyệt qua tất cả các tuyến đường để

tính độ trễ trên mỗi chặng. Nếu tuyến đường Pi có độ trễ trên mỗi chặng > ngưỡng

MD thì Pi được xác định là chứa nút độc hại. Tương tự giải pháp DelPHI, số lượng

tuyến đường mà nút nguồn nhận được gói RREP tối đa là n-2. Như vậy, độ phức tạp

thuật toán của giải pháp WADT là O(n), với n là số lượng nút mạng.

Algorithm 2.2: Thuật toán kiểm tra tuyến của WADT [44]

Input: RL = {P0, P1, P2, P3, ..., Pq−1} và giá trị ngưỡng MD

Output: ML = {các tuyến độc hại} và NL = {các tuyến bình thường}

1 Begin

2 for i = 0 to q - 1 do RL[i].DPH ← RL[i].RTT/RL[i].HC;

3 for i = 0 to q - 1 do

4 if (RL[i].DPH > MD) then

5 ML←ML ∪ {RL[i]}

6 else

7 NL← NL ∪ {RL[i]};

8 return ML và NL;

9 End;

Nhận xét: Hiệu quả an ninh của WADT được so sánh với DelPHI bằng mô

phỏng trên NS2. Kết quả cho thấy WADT hiệu quả hơn DelPHI dựa trên tỷ lệ gửi gói

tin thành công đến đích (theo [44]). Tuy nhiên, WADT tồn tại hạn chế như sau:

• Gói điều khiển tuyến RREQ và RREP có thể được chờ lâu trong hàng đợi trước

khi xử lý. Dẫn đến DPH của tuyến bình thường có thể cao hơn MD. Vì vậy,

WADT có tỷ lệ lỗi cao nếu độ dài của đường hầm nhỏ;

• WADT không cho phép các nút trung gian kiểm tra an ninh. Vì vậy, nút nguồn

chỉ phát hiện tuyến có chứa nút độc hại, không xác định được chính xác địa chỉ

của nút độc hại.

2.2.3 Giải pháp TTHCA

Hiệu quả an ninh của DelPHI và WADT bị hạn chế trong môi trường mạng di

động do độ trễ trên mỗi chặng được tính dựa trên thời gian RTT. Để khắc phục nhược

điểm này, tác giả [42] và cộng sự đã đề xuất giải pháp phát hiện và ngăn chặn tấn

công lỗ sâu bằng cách phân tích chi phí và thời gian tuyền tải (TTHCA). Thời gian

truyền tải gói tin (PTT) được sử dụng thay cho thời gian RTT, được tính như Công

thức (2.3), trong đó ∆TTOT là tổng độ trễ để xử lý gói tin điều khiển tuyến tại các

45

Page 61: NGHIŒNCÙUM¸TS¨GI…IPH†P …

nút trung gian. Điểm khác biệt của TTHCA so với DelPHI và WADT là phương pháp

tính giá trị ngưỡng để phát hiện tấn công mạng. Giá trị ngưỡng (Th) của TTHCA là

tỷ số giữa bán kính phát sóng (R) và vận tốc truyền tín hiệu (V) được thiết lập là

300,000,000m/s, được tính như Công thức (2.4).

PTT = (RTT −∆TTOT )/2 (2.3)

Th = R/V (2.4)

Hình 2.4 là mô hình phát hiện tấn công lỗ sâu của giải pháp TTHCA. Nút

nguồn ghi nhận thời điểm khám phá tuyến để tính thời gian RTT trước khi quảng bá

gói RREQ. Khi nhận được gói RREQ, nút trung gian tính thời gian trễ để xử lý gói

RREQ (∆TRREQ) và lưu vào bộ nhớ của nó trước khi tiếp tục quảng bá. Khi nhận

được gói RREQ, nút đích tính thời gian trễ xử lý gói RREQ và RREP (∆TRREQ và

∆TRREP ). Kết quả được lưu vào trường ∆TTOT của gói RREP trước khi gửi về nguồn.

Khi nhận được gói RREP, nút trung gian tính độ trễ xử lý gói RREP (∆TRREP ) cộng

với ∆TRREQ. Kết quả được cộng vào trường ∆TTOT của gói RREP trước khi chuyển

tiếp về nguồn. Nút nguồn chỉ chấp nhận tuyến có PTT/HC không vượt quá ngưỡng

Th; ngược lại, tuyến chứa nút độc hại. Nút đích nhận gói RREP trên nhiều tuyến

đường để loại bỏ tuyến có nút độc hại. Số lượng tuyến đường mà nút nguồn nhận được

gói RREP tối đa là n-2. Như vậy, độ phức tạp thuật toán của giải pháp TTHCA là

O(n), với n là số lượng nút mạng.

Khám phá tuyếnNút nguồn

Quảng bá gói RREQKhởi tạo thời gian RTT

Quảng bá gói chứa GrayListKhởi tạo lại thời gian RTT

Tính thời gian RTTPTT = (RTT - ∆TTOT )/2

PTT/HC > Th

no

Khám phá thành công

yes

Nút trung gian

Tính giá trị ∆TRREQTiếp tục quảng bá gói RREQ

Tính giá trị ∆TRREP∆TTOT += ∆TRREQ + ∆TRREP

Nút đích

Tính giá trị ∆TRREQ và ∆TRREPTính ∆TTOT = ∆TRREQ + ∆TRREP

Gửi gói RREP kèm ∆TTOT

Hình 2.4. Mô hình phát hiện tấn công lỗ sâu của TTHCA [42]

46

Page 62: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Nhận xét: Hiệu quả an ninh của TTHCA được so sánh với DelPHI và MHA.

Kết quả cho thấy rằng giải pháp TTHCA hiệu quả tốt hơn DelPHI và MHA [38]. Tuy

nhiên, TTHCA vẫn tồn tại một số nhược điểm như sau:

• Hiệu quả an ninh của TTHCA vẫn còn phụ thuộc nhiều vào chiều dài đường

hầm. Kết quả mô phỏng [42] cho thấy rằng TTHCA có hiệu quả tốt nếu độ dài

đường hầm lớn hơn 4 chặng;

• TTHCA sử dụng vận tốc truyền tín hiệu V theo lý thuyết. Khi triển khai thực

tế, V sẽ bị tác động bởi nhiễu do điều kiện thời tiết nên ảnh hưởng đến hiệu quả

an ninh;

• Giải pháp TTHCA sử dụng phương pháp kiểm tra đầu-cuối nên nút nguồn không

phát hiện được nút độc hại. Để xác định địa chỉ nút độc hại, nút nguồn phải

quảng bá gói tin hệ thống mới chứa danh sách xám. Điều này làm tăng hao phí

truyền thông và không an toàn vì tin tặc có thể lợi dụng để tấn công mạng.

2.2.4 Giải pháp EEP

Hiệu quả an ninh của các giải pháp dựa trên thời gian trễ mỗi chặng bị ảnh

hưởng bởi vận tốc di động và chiều dài đường hầm. Để cải thiện hạn chế này, tác giả

[72] và cộng sự đã đề xuất giao thức đầu-cuối (EEP) nhằm phát hiện và ngăn chặn

tấn công lỗ sâu. Giải pháp EEP sử dụng vị trí của nút thông qua tín hiệu GPS (tương

tự [30, 47]) để tính độ dài tuyến (len). Khi nhận gói RREQ, nút đích kiểm tra nếu chi

phí định tuyến (HC) đến đích nhỏ hơn dlen/Re thì tuyến chứa đường hầm, trong đó R

là bán kính phát sóng của nút. Tương tự giải pháp DelPHI, nút đích nhận gói RREP

trên nhiều tuyến đường để loại bỏ tuyến có nút độc hại. Số lượng tuyến đường mà nút

nguồn nhận được gói RREP tối đa là n-2. Độ phức tạp thuật toán của EEP là O(n),

n là số lượng nút mạng.

HC=4

HC=6 HC=1 (HM)

HC=3 (PM)

Đường hầm

M1

M2

NS

ND

N1

RREQ

RREQ

RREQ

N2 N3

N4

N5

N8 N6

N7

Hình 2.5. Mô tả giải pháp phát hiện và ngăn chặn tấn công lỗ sâu EEP

Ví dụ 2.1: Hình 2.5 là một ví dụ mô tả giải pháp phát hiện và ngăn chặn

tấn công lỗ sâu EEP. Nút nguồn NS khám phá tuyến đến đích ND bằng cách quảng

47

Page 63: NGHIŒNCÙUM¸TS¨GI…IPH†P …

bá gói RREQ, vị trí của NS được gán vào gói RREQ trước khi quảng bá. Mỗi khi

nhận gói RREQ, nút trung gian (Ni) tính độ dài tuyến (len) bằng cách sử dụng GPS

của nút liền trước trong gói RREQ. GPS của nút Ni được gán vào gói RREQ trước

khi được quảng bá đến láng giềng. Nút đích nhận được 3 gói RREQ trên 3 tuyến là

P1(NS → N5 → N4 → N3 → N2 → N1 → ND); P2(NS → N8 → N7 → N6 → ND)

và P3(NS → M1 → M2 → ND). Mỗi khi nhận gói RREQ, nút đích ND tính vi =

dlen(Pi)/Re, ∀i = 1..3. Nếu HC(Pi) < vi thì Pi là tuyến chứa đường hầm, gói RREQ

bị loại bỏ; ngược lại, Pi là tuyến bình thường.

Nhận xét: EEP là giải pháp đơn giản để phát hiện tấn công lỗ sâu. Tuy nhiên,

EEP vẫn tồn tại một số nhược điểm cần phải tiếp tục nghiên cứu, cải tiến như sau:

• Giải pháp EEP sử dụng phương pháp kiểm tra đầu-cuối nên hiệu quả phát hiện

tuyến độc hại bị hạn chế. Nguyên nhân là do chiều dài tuyến bị thay đổi trong

môi trường di động cao. Vì vậy, theo [72] thì giải pháp sẽ bị sai lầm nếu độ dài

đường hầm nhỏ hơn (HC/2 + 2)×R;

• Nút nguồn không kiểm tra tuyến khi nhận gói trả lời tuyến RREP. Vì vậy, giải

pháp EEP có thể bị sai lầm trong trường hợp nút trung gian trả lời tuyến về

nguồn qua đường hầm. Quan sát Hình 2.5, ta thấy rằng N1 có thể gửi gói RREP

về nguồn theo hướng {N1 →M2 →M1 → NS}, kết quả là nút nguồn khám phá

ra tuyến chứa đường hầm.

2.3 Cơ chế xác thực đa mức

Điểm hạn chế của các giải pháp phát hiện và ngăn chặn tấn công lỗ sâu đã công

bố là không hỗ trợ cơ chế kiểm tra toàn vẹn gói tin. Vì vậy, tin tặc có thể khai thác để

vượt qua cơ chế an ninh TTHCA và EEP khi thực hiện tấn công lỗ sâu ở chế độ tham

gia. Nguyên nhân là do:

• Giải pháp TTHCA dựa trên thông tin của trường ∆TTOT trong gói tin điều khiển

tuyến để tính giá trị thời gian PTT như Công thức (2.3). Mỗi khi nhận gói tin

điều khiển tuyến, nút độc hại chỉ cần hiệu chỉnh giá trị ∆TTOT = 2 ∗ TTL, TTLlà thời gian sống của gói tin. Dẫn đến giá trị PTT/HC của tuyến qua đường hầm

nhỏ hơn tuyến bình thường và nhỏ hơn ngưỡng. Kết quả là nút nguồn chấp nhận

tuyến qua đường hầm như là tuyến bình thường;

• Giải pháp EEP sử dụng trường len trong gói tin điều khiển tuyến để lưu độ dài

tuyến. Một khi nhận được gói điều khiển tuyến, nút độc hại chỉ cần thiết lập giá

trị trường len = 0, tương ứng không xuất hiện đường hầm trên tuyến. Kết quả

là HC trên tuyến chứa đường hầm lớn hơn dlen/Re, nút đích chấp nhận tuyến

qua đường hầm do thỏa điều kiện kiểm tra.

48

Page 64: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Để khắc phục hạn chế này, luận án đề xuất cơ chế xác thực đa mức (MLA) dựa

trên nền tảng chữ ký số. Ngoài ra, MLA sử dụng trên vị trí của mỗi nút thông qua

tín hiệu GPS tương tự các nghiên cứu [30, 47, 72]. Giao thức MLAMAN [CT1] được

cải tiến từ giao thức AODV bằng cách tích hợp cơ chế MLA. MLAMAN có thể phát

hiện và ngăn chặn tấn công lỗ sâu hiệu quả ở cả hai chế độ ẩn và tham gia. Tương tự

các giải pháp đã công bố [21, 74, 91], MLA giả định rằng: (1) Mỗi nút (Nδ) được thiết

lập một bộ khóa bí mật và công khai (kNδ -, kNδ+); (2) Tất cả các nút đều biết khóa

công khai của Ncenter. Giải pháp MLA không hỗ trợ chức năng cấp phát khóa bí mật

và công khai một cách tự động và an toàn cho tất cả các nút thành viên, vấn đề này

sẽ được trình bày trong các nghiên cứu tiếp theo.

2.3.1 Chữ ký số trên mạng MANET

Hệ mã khóa công khai RSA [70] (còn gọi là mã hóa bất đối xứng) được công bố

vào năm 1976 bởi tác giả Ron Rivest, Adi Shamir và Len Adleman tại học viện MIT.

RSA có thể xem là một bước đột phá quan trọng trong lĩnh vực mã hóa, là nền tảng

cho chữ ký số được ứng dụng rộng rãi. Trên mạng MANET, chữ ký số là một thông

tin gửi kèm theo gói tin nhằm mục đích xác định chính xác nút nguồn đã gửi gói tin.

Mỗi nút mạng sử dụng một cặp khóa công khai và bí mật (KU , KR). Khóa công khai

được công bố rộng rãi gắn liền với mỗi nút, khóa bí mật của mỗi nút phải được giữ

kín. Quá trình tạo khóa [68] trong hệ mã RSA được thực hiện theo các bước sau:

Bước 1: Chọn 2 số nguyên tố p và q và tính N = p × q. Cần chọn p và q sao

cho M < 2i−1 < N < 2i; i được gọi là kích thước khóa.

Bước 2: Tính Φ = (p− 1)× (q − 1);

Bước 3: Tìm một số e là nguyên tố cùng nhau với Φ (e < Φ);

Bước 4: Tìm một số d, sao cho e× d = 1 mod Φ (d là nghịch đảo của e trong

phép modulo Φ);

Bước 5: Hủy giá trị Φ, p và q, chọn khóa công khai KU là (e,N), khóa bí mật

KR là (d,N).

a) Mã hóa và giải mã: Việc mã hóa gói tin (M) trong quá trình định tuyến có

thể thực hiện theo hai hướng là (1) mã hóa bảo mật và (2) mã hóa xác thực. Nếu

nút nguồn muốn bảo mật thông tin của gói thì sử dụng khóa công khai (KU) để mã

hóa, ngược lại khi sử dụng khóa bí mật (KR) để mã hóa thì nút nguồn đang sử dụng

phương pháp mã hóa xác thực.

– Mã hóa bảo mật: C = En(M,KU) = M e mod N

– Mã hóa xác thực: C = En(M,KR) = Md mod N

Tương ứng với mỗi phương án mã hóa ta có phương án giải mã phù hợp. Nếu

nút nguồn mã hóa bảo mật thông tin thì phải sử dụng khóa bí mật để giải mã, ngược

49

Page 65: NGHIŒNCÙUM¸TS¨GI…IPH†P …

lại phải sử dụng khóa công khai (KU) để giải mã.

– Giải mã bảo mật: M = De(C,KR) = Cd mod N

– Giải mã xác thực: M = De(C,KU) = Ce mod N

b) Ký và xác thực chữ ký: Nút nguồn (NS) sử dụng khóa bí mật để ký gói tin

trước khi gửi đến đích (ND) nhằm mục đích an ninh. Nút đích kiểm tra chữ ký của nút

nguồn bằng cách sử dụng khóa công khai tương ứng. Tuy nhiên, tốc độ mã hoá của hệ

mã khoá công khai là rất chậm, nên việc ký trên gói tin là khó khăn và làm tăng dung

lượng của gói khi đính kèm chữ ký. Vì vậy, chữ ký số được tạo ra bằng cách sử dụng

khóa bí mật để mã hóa giá trị băm của gói tin, hàm băm được sử dụng là MDx [69]

hoặc SHAx [60]. Hàm băm nhận giá trị vào là nội dung của gói tin và kết quả là một

dãy có độ dài xác định gọi là mã băm. Một tính chất rất quan trọng của hàm băm là

rất “nhạy” đối với các thay đổi của gói tin. Vì vậy, mã băm có tính đặc trưng rất cao,

được xem là đặc trưng của gói tin. Hai gói tin khác nhau ở một điểm rất nhỏ cũng sẽ

cho ra mã băm khác nhau. Ngoài ra, hàm băm có tính một chiều, nghĩa là không thể

tạo ra nội dung của gói tin từ mã băm, do đó không thể tạo ra một gói tin giả từ mã

băm. Đặc điểm này cho phép nút đích kiểm tra tính toàn vẹn của gói tin, gói tin nhận

được là toàn vẹn khi mã băm của thông điệp không bị thay đổi.

Gói tin P

DS Mã hóa

M

Băm M HM1

M DS

Gói tin P kèm chữ ký

KRs

(a) Nút nguồn NS ký gói tin trước khi gửi

DS Giải mã M

Băm M HM2

DS

Gói tin P kèm chữ ký KUs

HM1

Chữ ký đúng

Chữ ký sai yes

no

HM1=HM2

(b) Nút đích ND xác thực chữ ký

Hình 2.6. Sơ đồ mô tả quá trình nút nguồn ký và nút đích xác thực chữ ký

Hình 2.6(a) mô tả quá trình nút nguồn ký gói tin P trước khi gửi. Đầu tiên, NS

băm thông tin (M) của gói P thành mã băm là HM1; Tiếp theo, NS sử dụng khoá bí

50

Page 66: NGHIŒNCÙUM¸TS¨GI…IPH†P …

mật (KRS) để mã hoá giá trị băm HM1. Kết quả sau khi mã hóa là chữ ký số (DS)

của nút nguồn trên gói tin P. Chữ ký số được đính kèm vào gói P trước khi gửi đến

nút đích (ND). Hình 2.6(b) mô tả quá trình nút đích kiểm tra chữ ký số khi nhận được

gói P từ nút nguồn. Đầu tiên, ND băm thông tin M của gói P thành mã băm là HM2;

Tiếp theo, ND sử dụng khoá công khai của nút nguồn (KUS) để giải mã chữ ký số DS

thu được giá trị HM1. Nếu kết quả sau khi giải mã trùng khớp với giá trị băm của gói

tin (HM1 = HM2) thì chứng tỏ rằng gói tin P nhận được chính xác là do nút nguồn

NS ký và thông tin của gói không bị thay đổi.

2.3.2 Ba bước xác thực an ninh của MLA

Giải pháp MLA cho phép mỗi nút kiểm tra nút liền trước mỗi khi nhận được gói

tin điều khiển với 3 bước: (1) Xác thực toàn vẹn gói tin (PI); (2) Xác thực chứng chỉ

thành viên (MC) và (3) Kiểm tra láng giềng thật sự (AN).

a) Xác thực toàn vẹn gói tin: Nút độc hại tấn công lỗ sâu ở chế độ tham gia sẽ

xử lý gói tin điều khiển như các nút bình thường. Do vậy, nó có thể thay đổi thông tin

của gói điều khiển tuyến để phục vụ mục đích tấn công mạng. Cơ chế xác thực toàn

vẹn gói tin cho phép một nút phát hiện sự thay đổi trong gói tin nhận được từ nút liền

trước, nhờ vậy mà MLA có thể phát hiện tấn công lỗ sâu ở chế độ tham gia. Đầu tiên,

nút Nj sử dụng hàm H để băm thông tin của gói P. Kết quả băm được mã hóa bằng

khóa bí mật (kNj−) của Nj như Công thức (2.5). Kết quả sau mã hóa được lưu vào

trường CV của gói P trước khi gửi đến nút láng giềng Ni.

P.CV = En(H(P.AllF ields \ {CV }), kNj−) (2.5)

Tiếp theo, khi nhận được gói tin điều khiển tuyến P từ nút liền trước Nj, nút

trung gian Ni sử dụng khóa công khai của nút Nj được gửi kèm theo để giải mã giá

trị của trường CV trong gói P. Kết quả giải mã được so sánh với giá trị băm của gói

P, nếu hai giá trị này bằng nhau thì gói tin được toàn vẹn; ngược lại, gói P đã bị thay

đổi thông tin. Hàm sau cho phép kiểm tra toàn vẹn gói tin P nhận được từ Nj, kết

quả trả về True nếu P toàn vẹn, ngược lại trả về False.

Bool IsPacketIntegrity(Packet P, Public_Key kNj+){

val1 ← De(P.CV, kNj+);

val2 ← H(P.AllF ields\{CV });return (val1 == val2);

}

b) Xác thực nút thành viên: Điểm yếu của cơ chế xác thực toàn vẹn gói tin là

nút trung gian không có cơ sở để xác thực tính hợp lệ của khóa công khai trong gói

tin P đến từ nút liền trước. Một nút độc hại có thể tham gia vào quá trình khám phá

tuyến bằng cách sử dụng bộ khóa không hợp lệ để mã hóa giá trị băm của gói P trước

khi gửi. Để khắc phục được điểm yếu này, mỗi nút phải cung cấp chứng chỉ thành viên

51

Page 67: NGHIŒNCÙUM¸TS¨GI…IPH†P …

để xác thực mỗi khi gửi hoặc chuyển tiếp gói tin điều khiển. MC được cấp từ một nút

mạng tin cậy, chi tiết được trình bày trong mục 2.3.4.

Định nghĩa 2.1 (Chứng chỉ thành viên). Chứng chỉ thành viên của một nút được sử

dụng để xác thực trong quá trình khám phá tuyến. MC của nút Nδ được tính bằng cách

mã hóa giá trị băm của địa chỉ IP và khóa công khai của nút Nδ lần lượt với khóa bí

mật của Ncenter và Nδ như Công thức (2.6).

MCNδ = En(En(H(IPNδ , kNδ+), kNcenter−), kNδ−) (2.6)

Chứng chỉ thành viên được gửi kèm với gói tin điều khiển P trong quá trình

khám phá tuyến. Khi nhận được gói P từ nút liền trước Nδ, nút trung gian giải mã giá

trị MC bằng cách lần lượt sử dụng khóa công khai của Nδ và Ncenter. Kết quả được so

sánh với giá trị băm của địa chỉ IP và khóa công khai của nút Nδ. Nếu hai giá trị này

giống nhau thì MC là hợp lệ; ngược lại, MC của nút liền trước là không hợp lệ. Hàm

sau cho phép kiểm tra MC khi nhận gói tin P từ Nδ, kết quả trả về True nếu MC hợp

lệ, ngược lại trả về False.

Bool IsValidMC(Packet P, Public_Key kNδ+){

if (!IsPacketIntegrity(P, kNδ+)) return False;

val1 ← De(De(P.MC, kNδ+), kNcenter+);

val2 ← H(IPNδ , kNδ+);

return (val1 == val2);

}

c) Kiểm tra láng giềng thật sự: Nút độc hại tấn công lỗ sâu ở chế độ ẩn chỉ đơn

giản là chuyển tiếp gói tin mà không thay đổi thông tin. Vì vậy, hai cơ chế xác thực

toàn vẹn gói tin và nút thành viên thất bại trước hình thức tấn công này. Dựa trên ý

tưởng rằng hai nút không thể giao tiếp với nhau nếu chúng nằm ngoài vùng phát sóng

của nhau. Luận án đề xuất cơ chế kiểm tra láng giềng thật sự nhằm phát hiện nút liền

trước đã chuyển tiếp gói tin, từ đó phát hiện tấn công lỗ sâu chế độ ẩn. Hàm sau cho

phép kiểm tra láng giềng thật sự khi nhận gói P từ Nj, GPS và R của Nj được lưu

vào P trước khi gửi. Kết quả là False nếu khoảng cách giữa Ni và Nj lớn hơn R, Nj

không phải láng giềng thật sự của Ni vì đã chuyển tiếp gói tin; ngược lại trả về True.

Bool IsActualNeighbor(Packet P, Public_Key kNj+){

if (!IsPacketIntegrity(P, kNj+)) then return False;

g ← getGPS(); //Vị trí của nút Ni

dis← Distance(P.GPS, g);

return (dis 6Min(P.R,RNi));

}

52

Page 68: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Ví dụ 2.2: Hình 2.7 là ví dụ mô tả nút N2 phát hiện nút độc hại M thực hiện

hành vi tấn công lỗ sâu ở chế độ ẩn. Trường hợp a, nút N2 nhận được gói P từ nút N1,

do khoảng cách từ N1 đến N2 nhỏ hơn (hoặc bằng) R nên N2 xác định nút liền trước

N1 là nút bình thường. Trường hợp b, khi nhận được gói yêu cầu tuyến P đến từ N1,

nút độc hại M chuyển tiếp gói P đến nút N2. Khoảng cách (d) từ N1 đến N2 lớn hơn

R nên N2 phát hiện nút độc hại M đã chuyển tiếp gói tin.

d(N1, N2) d(N1, N2)

N1

RN1

N2

RN2

Khoảng cách Bán kính phát sóng

a) Bình thường b) Tấn công lỗ sâu chế độ ẩn

N1

RN1

N2

RN2

M

Nút độc hại

Hình 2.7. Mô tả phát hiện tấn công lỗ sâu ở chế độ ẩn

2.3.3 Giao thức an ninh MLAMAN

Luận án đề xuất giao thức MLAMAN cải tiến từ AODV sử dụng giải pháp MLA.

Thuật toán khám phá tuyến của MLAMAN sử dụng hai gói SecRREQ và SecRREP,

cấu trúc gói được mô tả như Hình 2.8. Cả hai được bổ sung thêm 5 trường mới (5NF)

là: GPS (2 x 4bytes) để lưu vị trí, R (1byte) lưu bán kính phát sóng tối đa, KEY

(4bytes) lưu khóa công khai. Hai trường MC và CV được thiết kế như SAODV để lưu

MC và kiểm tra toàn vẹn gói tin, độ lớn của mỗi trường là 128bytes. [15]

RREQ

GPS (x , y)Radio range (R)

Member Certification (MC)Public Key (KEY)

Checking Value (CV)

(a) SecRREQ

RREP

GPS (x , y)Radio range (R)

Member Certification (MC)Public Key (KEY)

Checking Value (CV)

(b) SecRREP

Hình 2.8. Cấu trúc gói tin điều khiển của giao thức MLAMAN

53

Page 69: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Quá trình khám phá tuyến của giao thức MLAMAN được thực hiện qua 2 giai

đoạn: (1) Yêu cầu tuyến bằng cách quảng bá gói SecRREQ như lưu đồ thuật toán tại

Hình 2.9 và (2) Trả lời tuyến bằng cách gửi đơn hướng gói SecRREP như lưu đồ thuật

toán tại Hình 2.10.

MLA

Nút nguồn NS

Núttrunggian/đíchNi

Cập nhật lại giá trị của 5NF

trong gói SecRREQ sử dụng

thông tin của nút hiện tại

vàSecRREQ.HC++;

Quảng bá gói SecRREQ;

no Có tuyến

đủ tươi

đến đích

noĐây là

nút đích

ghi nhận đã xử lý gói SecRREQ;

nếu tuyến có chi phí tốt hơn và

Thêm tuyến về NS hoặc cập nhật

Là láng giềng

thật sự

no

yes

Xuất hiện tấn công HM;

Hủy gói SecRREQ;

Đây là

thành viên

yes

no

yesGóiSecRREQ là

toàn vẹn

Nút trung gian (Ni)

nhận gói SecRREQ

MC không hợp lệ;

Hủy gói SecRREQ;

Xuất hiện tấn công PM;

Hủy gói SecRREQ;

no

Khởi tạo và gửi gói SecRREP

để trả lời tuyến về nguồn

yesyes

Khởi tạo và thiết lập 5NF cho gói SecRREQ

sử dụng thông tin của nguồn;

Quảng bá gói SecRREQ;

Bắt đầu

Kết thúc

Hình 2.9. Sơ đồ thuật toán quảng bá gói yêu cầu tuyến của giao thức MLAMAN

a) Yêu cầu tuyến: Khi nút nguồn (NS) muốn gửi thông điệp đến nút đích (ND)

mà không có tuyến trong bảng định tuyến, NS tiến hành khám phá tuyến bằng cách

phát quảng bá gói SecRREQ như mô tả trong (2.7), trong đó RREQ* là gói yêu cầu

tuyến của giao thức gốc, 5NF là các trường mới nhằm mục đích kiểm tra an ninh được

thiết lập như sau: SecRREQ.GPS = Vị trí của NS; SecRREQ.R = getRadioRange();

SecRREQ.MC = MCNS ; SecRREQ.KEY = Khóa công khai kNS+; SecRREQ.CV =

Mã hóa giá trị băm của (SecRREQ.fields \ {CV}) sử dụng khóa bí mật kNS−.

NSbrdcast : SecRREQ← {RREQ∗ ⊕ 5NF} (2.7)

54

Page 70: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Khi nhận được gói yêu cầu tuyến, nút trung gian Ni hủy gói SecRREQ nếu nó

chưa được cấp MC hoặc gói SecRREQ đã được xử lý rồi; ngược lại, Ni sử dụng MLA

để kiểm tra nút liền trước dựa vào thông tin của gói SecRREQ như sau:

• Nếu gói SecRREQ không toàn vẹn thông tin thì Ni hủy gói SecRREQ bởi vì

tuyến đường vừa khám phá xuất hiện nút độc hại thực hiện tấn công lỗ sâu ở

chế độ tham gia, kết thúc thuật toán;

• Nếu chứng chỉ thành viên của nút liền trước là không hợp lệ thì Ni hủy gói

SecRREQ, kết thúc thuật toán;

• Nếu nút liền trước không là láng giềng thật sự thì Ni hủy gói SecRREQ bởi vì

tuyến đường vừa khám phá xuất hiện nút độc hại thực hiện tấn công lỗ sâu ở

chế độ ẩn, kết thúc thuật toán;

Nếu nút liền trước thỏa tất cả các điều kiện thì Ni chấp nhận gói SecRREQ

để thiết lập tuyến ngược về nguồn NS, ghi nhận đã xử lý gói SecRREQ vào bộ nhớ

bằng cách lưu giá trị broadcast_id và src_add. Đồng thời, trước khi tiếp tục quảng

bá gói SecRREQ, Ni cập nhật lại thông tin của 5NF như sau: SecRREQ.GPS = Vị

trí của Ni; SecRREQ.R = getRadioRange(); SecRREQ.MC = MCNi ; SecRREQ.KEY

=Khóa công khai của kNi+; SecRREQ.CV = Mã hóa giá trị băm của (SecRREQ.fields

\ {CV}) sử dụng khóa bí mật kNi−.

Độ phức tạp: Thuật toán quảng bá gói yêu cầu tuyến của giao thức MLAMAN

hoàn toàn tương tự với giao thức AODV ngoại trừ việc sử dụng MLA để kiểm tra an

ninh. Giải pháp MLA gọi 3 hàm để kiểm tra toàn vẹn gói tin, chứng chỉ thành viên

và láng giềng thật sự, tất cả hoạt động độc lập nhau. Nếu cả 3 điều kiện kiểm tra là

hợp lệ thì thuật toán hoạt động tiếp tục như giao thức gốc. Để tính độ phức tạp thuật

toán quảng bá gói yêu cầu tuyến của giao thức MLAMAN, ta tính độ phức tạp của

giải pháp MLA như sau:

• Hàm băm SHA1 có độ phức tạp là O(d), d là số lần sử dụng các hàm logic trong

quá trình băm, tương ứng với tỉ số giữa kích thước dữ liệu (bit) và kích thước

mỗi khối (512bit). [23]

• Thuật toán mã hóa (hoặc giải mã) RSA có độ phức tạp là O(p3), p là độ lớn của

khóa. [68, 80]

• Khối xác thực toàn vẹn gói tin và khối kiểm tra MC có độ phức tạp giống nhau

là O(p3) +O(d), và khối kiểm tra láng giềng thật sự có độ phức tạp là O(1).

Như vậy, độ phức tạp của giải pháp MLA là 2O(p3)+2O(d)+O(1), loại bỏ hằng

số ta thu được độ phức tạp của MLA là O(p3) + O(d); Độ phức tạp của thuật toán

quảng bá gói yêu cầu tuyến của giao thức MLAMAN là O(p3) + O(d) + O(n), trong

đó O(n) là độ phức tạp của thuật toán gốc với n là số lượng nút mạng.

55

Page 71: NGHIŒNCÙUM¸TS¨GI…IPH†P …

MLA

Nút đích ND

Núttrunggian/nguồnNi

Cập nhật lại giá trị của 5NF

trong gói SecRREP sử dụng

thông tin của nút hiện tại;

vàSecRREP.HC++;

Gửi gói SecRREP;

found Tìm thông tin

định tuyến về

nút nguồn

no Đây là

nút nguồn

có chi phí tốt hơn

hoặc cập nhật nếu tuyến

Thêm tuyến đến đích

Là láng giềng

thật sự

no

yes

Xuất hiện tấn công HM;

Hủy gói SecRREP;

Đây là

thành viên

yes

no

yesGói

SecRREP là

toàn vẹn

Nút trung gian (Ni)

nhận gói SecRREP

MC không hợp lệ;

Hủy gói SecRREP;

Xuất hiện tấn công PM;

Hủy gói SecRREP;

no

Hủy gói SecRREP Gửi gói dữ liệu từ hàng đợi

yesnot found

Khởi tạo và thiết lập 5NF cho gói SecRREP

sử dụng thông tin của nút đích;

Gửi gói SecRREP về nguồn;

Bắt đầu

Kết thúc

Hình 2.10. Sơ đồ thuật toán trả lời tuyến của giao thức MLAMAN

b) Trả lời tuyến: Quá trình trả lời tuyến được thực hiện khi một nút trung gian

(Ni) có tuyến đủ tươi đến đích hoặc nút đích nhận được gói yêu cầu tuyến. Để trả lời

tuyến, nút đích ND gửi gói SecRREP về nguồn qua chặng kế tiếp trong bảng định tuyến

như mô tả trong (2.8), trong đó RREP* là gói trả lời tuyến của giao thức gốc, 5NF là

các trường mới nhằm mục đích kiểm tra an ninh được thiết lập như sau: SecRREP.GPS

= Vị trí của nút đích ND hoặc nút trung gian Ni; SecRREP.R = getRadioRange();

SecRREP.MC = MCND hoặc MCNi ; SecRREP.KEY = Khóa công khai kND+ hoặc

kNi+; SecRREP.CV = Mã hóa giá trị băm của (SecRREP.fields \ {CV}) sử dụng khóa

bí mật của nút đích kND− hoặc nút trung gian kNi−.

ND(orNi)unicasts : SecRREP ← {RREP ∗ ⊕ 5NF} (2.8)

56

Page 72: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Khi nhận được gói trả lời tuyến, nút trung gian Ni hủy gói SecRREP nếu nó

chưa được cấp chứng chỉ thành viên; ngược lại, Ni sử dụng MLA để kiểm tra nút liền

trước dựa vào thông tin của gói SecRREP như sau:

• Nếu gói SecRREP không toàn vẹn thông tin thì Ni hủy gói SecRREP bởi vì tuyến

đường vừa khám phá xuất hiện nút độc hại thực hiện tấn công lỗ sâu ở chế độ

tham gia, kết thúc thuật toán;

• Nếu chứng chỉ thành viên của nút liền trước là không hợp lệ thì Ni hủy gói

SecRREP, kết thúc thuật toán;

• Nếu nút liền trước không là láng giềng thật sự thì Ni hủy gói SecRREP bởi vì

tuyến đường vừa khám phá xuất hiện nút độc hại thực hiện tấn công lỗ sâu ở

chế độ ẩn, kết thúc thuật toán;

Nếu nút liền trước thỏa tất cả các điều kiện thì Ni chấp nhận gói SecRREP để

thiết lập tuyến đến ND. Đồng thời, trước khi tiếp tục chuyển tiếp gói SecRREP về

nguồn, Ni cập nhật lại thông tin của 5NF của gói như sau: SecRREP.GPS = Vị trí

của Ni; SecRREP.R = getRadioRange(); SecRREP.MC = Chứng chỉ thành viên của

Ni; SecRREP.KEY = Khóa công khai của Ni; SecRREP.CV = Mã hóa giá trị băm của

(SecRREP.fields \ {CV}) sử dụng khóa bí mật kNi−.

Độ phức tạp: Thuật toán trả lời tuyến của giao thức MLAMAN hoàn toàn

tương tự với giao thức AODV ngoại trừ việc sử dụng MLA để kiểm tra an ninh. Ta

có độ phức tạp của giải pháp MLA là O(p3) + O(d). Như vậy, độ phức tạp của thuật

toán trả lời tuyến của giao thức MLAMAN là O(p3) +O(d) +O(n), trong đó O(n) là

độ phức tạp của thuật toán gốc với n là số lượng nút mạng.

2.3.4 Cấp chứng chỉ thành viên

Tiến trình cấp MC cho nút Nδ được mô tả như Hình 2.11. Đầu tiên, quản trị

viên cập nhật tất cả các khóa của nút thành viên vào cơ sở dữ liệu khóa công khai

(PKDB) lưu tại nút Ncenter. Sau khoảng thời gian TMC , Ncenter kiểm tra nếu tồn tại

nút chưa được cấp MC thì Ncenter sẽ phát quảng bá gói MCP để cấp MC. Khi nhận

gói MCP, Nδ sẽ phát gói trả lời MCACK về Ncenter để khẳng định rằng đã nhận thành

công MC. Khi nhận được MCACK , Ncenter ghi nhận lại việc cấp MC thành công cho

Nδ vào PKDB.

Chứng chỉ thành viên được cấp cho mỗi nút trước khi chúng tham gia vào quá

trình khám phá tuyến nhằmmục đích kiểm tra an ninh. Do đặc điểm của mạng MANET

là phi cấu trúc, tự trị và truyền thông không dây. Vì vậy, giải pháp cấp MC phải phù

hợp với đặc điểm của mạng và đảm bảo an ninh, cụ thể là: (1) Tin tặc không thể giả

mạo nút Ncenter hoặc Nδ để gửi gói MCP hoặc MCACK giả mạo; (2) Thông tin của

gói MCP và MCACK không thể bị thay đổi trong quá trình truyền thông.

57

Page 73: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Khi nhận gói MCACK , Ncenter kiểm tra: Nếu MCACK do Nδ gửi thìNcenter lưu cấp MC thành công cho Nδ; ngược lại, tiến trình thất bại.

4

MCACK

Khi nhận MCP, nút Nδ kiểm tra: Nếu MCP không phải của Ncenter

thì hủy MCP. Ngược lại, MC được khởi tạo và lưu vào Cache; Nδ gửigói MCACK về nút Ncenter để khẳng định là đã nhận MC.

3

MCP

Sau khoảng thời gian TMC : Nếu Nδ chưa được cấp MC, thì Ncenter

quảng bá gói MCP để cấp MC cho Nδ.2

1 Quản trị viên cập nhật khóa công khai của thành viên vào PKDBNcenter

Ncenter

Hình 2.11. Mô tả các bước cấp MC cho nút thành viên Nδ

2.3.4.1 Cơ sở dữ liệu khóa công khai

Cơ sở dữ liệu khóa công khai (PKDB) lưu trữ thông tin các nút đã được cấp

MC. Chỉ quản trị viên được phép cập nhật thông tin vào PKDB, mục đích là đảm bảo

chỉ có nút “thân thiện” mới được cấp MC. Một nút mạng tin cậy tên là Ncenter được

sử dụng để lưu trữ PKDB và cấp MC cho thành viên, cấu trúc như Bảng 2.1. Mỗi

dòng của PKDB gồm ba trường: Địa chỉ của nút (Nodes); Khóa công khai (Key+); và

Completed là trường để nghi nhận xem nút được cấp MC thành công hoặc chưa. Hai

trường Nodes và Key+ được quản lý bởi quản trị viên. MLA yêu cầu điều kiện rằng

thông tin trong PKDB tại Ncenter phải đảm bảo an toàn.

Bảng 2.1. Cơ sở dữ liệu khóa công khai

Nodes Key+ Completed

IPN1 kN1+ yes

IPN2 kN2+ yes

IPN3 kN3+ no

IPN4 kN4+ no

... ... ...

IPNn kNn+ yes

2.3.4.2 Quá trình cấp MC của giao thức MLAMAN

Quá trình cấp MC của giao thức MLAMAN được thực hiện qua 2 giai đoạn: (1)

Quảng bá gói MCP và (2) nhận phản hồi thông qua gói MCACK như sau:

a) Quảng bá gói MCP và lưu MC: Nút Ncenter cung cấp MC cho nút thành viên

Nδ bằng cách phát quảng bá gói MCP. Thuật toán quảng bá gói MCP tương tự quảng

58

Page 74: NGHIŒNCÙUM¸TS¨GI…IPH†P …

bá gói RREQ của giao thức AODV. Vì vậy, cấu trúc gói MCP tương tự gói RREQ và

được bổ sung thêm 2 trường mới (2NF) là: CER (128bytes) để lưu MC và CV(128bytes)

để lưu giá trị kiểm tra toàn vẹn gói tin, như mô tả trong Hình 2.12.

RREQ

Certification (CER)

Checking Value (CV)

(a) MCP

RREP

Acknowledge (ACK)

Public Key (KEY)

Checking Value (CV)

(b) MCACK

Hình 2.12. Cấu trúc gói tin điều khiển cho việc cấp chứng chỉ thành viên

– Khởi tạo gói MCP: Sau khoảng thời gian TMC , Ncenter kiểm tra nếu tồn tại

nút chưa được cấp MC thì Ncenter sẽ phát quảng bá gói MCP để cấp MC như mô tả

trong (2.9). Trong đó RREQ* là gói RREQ của giao thức gốc, 2NF là các trường mới

gồm: CER được tính theo Công thức (2.10) và CV được tính bằng cách mã hóa giá trị

băm của gói MCP sử dụng khóa bí mật kNcenter−.

Ncenterbrdcast : MCP ← {RREQ∗ ⊕ 2NF} (2.9)

CER = En(En(H(IPNδ , kNδ+), kNcenter−), kNδ+) (2.10)

Nhận xét: Giá trị của trường CER trong gói MCP chỉ có thể được giải mã bằng

cách sử dụng khóa công khai của nút Ncenter và khóa bí mật của nút được cấp MC là

Nδ. Điều này có nghĩa là: (1) Tin tặc cũng không thể giả mạo nút Ncenter để cấp MC

bởi vì không có khóa bí mật của Ncenter; (2) Một nút thành viên khác không thể biết

được MC của Nδ vì phải cần khóa bí mật của Nδ; (3) Thông tin của gói MCP không

thể bị thay đổi trong quá trình chuyển tiếp từ Ncenter đến Nδ nhờ vào cơ chế kiểm tra

toàn vẹn gói tin.

– Xử lý gói MCP: Khi nhận được gói MCP, nút trung gian kiểm tra để đảm bảo

toàn vẹn gói tin MCP dựa vào khóa công khai của Ncenter. Nếu thỏa điều kiện thì nút

trung gian tiếp tục quảng bá gói MCP ; ngược lại, gói MCP bị hủy. Khi Nδ nhận được

gói MCP, nút Nδ kiểm tra để đảm bảo rằng gói MCP nhận được gửi từ Ncenter, và gói

này để cấp MC cho Nδ bằng việc lần lượt sử dụng khóa bí mật kNδ− và khóa công

khai kNcenter+ để giải mã giá trị của trường CER. Nếu điều kiện thỏa mãn, Nδ lưu MC

vào bộ nhớ và gửi trả lời gói MCACK về cho nút Ncenter; ngược lại, gói MCP bị hủy.

Hàm sau mô tả chi tiết việc kiểm tra và lưu MC khi nhận được gói MCP, kết quả trả

về True nếu lưu MC thành công; ngược lại, trả về False.

59

Page 75: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Bool TestAndSaveMC(MCP P){

if (!IsPacketIntegrity(P, kNcenter+)) {

Dispose(P) and return False;

} else {

val1← De(P.CER, kNδ−); //val1 = En(H(IPNδ , kNδ+), kNcenter−)

val2← De(val1, kNcenter+);

if (val2 6= H(IPNδ , kNδ+)) {

Dispose(P) and return False;

} else {

MC ← En(val1, kNδ−); //MC đã được tính như Công thức (2.6)

SaveToCache(MC);

CreateAndSend(MCACK , Ncenter);

return True;

}

}

}

b) Trả lời gói MCACK: Để đảm bảo độ tin cậy của cơ chế cấp chứng chỉ thành

viên, việc gửi xác nhận về Ncenter là bắt buộc mỗi khi một nút thành viên nhận được

MC. Cấu trúc góiMCACK như Hình 2.12(b), tương tự gói RREP, được bổ sung thêm 3

trường mới (3NF) là: ACK (128bytes) để lưu giá trị phản hồi, KEY (4bytes) lưu khóa

công khai của Nδ và CV (128bytes) lưu giá trị kiểm tra toàn vẹn gói tin.

– Khởi tạo gói MCACK: Sau khi lưu MC thành công, nút Nδ gửi gói MCACKngược về Ncenter để thông báo rằng Nδ đã nhận được MC như mô tả trong (2.11).

Trong đó RREP* là gói RREP của giao thức gốc, 3NF là các trường mới gồm ACK

được tính theo Công thức (2.12), KEY là khóa công khai của nút Nδ và CV được tính

bằng cách mã hóa giá trị băm của gói MCACK sử dụng khóa bí mật kNδ−.

Nδunicasts : MCACK ← {RREP ∗ ⊕ 3NF} (2.11)

ACK = En(En(H(IPNcenter), kNδ−), kNcenter+) (2.12)

Nhận xét: Giá trị của trường ACK trong gói MCACK chỉ có thể được giải mã

bằng cách sử dụng khóa công khai của nút được cấp MC là Nδ và khóa bí mật của

nút Ncenter. Điều này có nghĩa là: (1) Tin tặc cũng không thể giả mạo nút Nδ để gửi

gói MCACK giả mạo vì không có khóa bí mật của Nδ; (2) Thông tin của gói MCACKkhông thể bị thay đổi trong quá trình chuyển tiếp từ Nδ về Ncenter nhờ vào cơ chế kiểm

tra toàn vẹn gói tin.

– Xử lý gói MCACK: Khi nhận được gói MCACK , nút trung gian kiểm tra để

đảm bảo toàn vẹn gói tin dựa vào khóa công khai của Nδ được gửi kèm theo. Nếu thỏa

điều kiện thì nút trung gian tiếp tục chuyển tiếp gói MCACK về nguồn dựa vào thông

60

Page 76: NGHIŒNCÙUM¸TS¨GI…IPH†P …

tin trong bảng định tuyến; ngược lại, gói MCACK bị hủy. Gói MCACK được kiểm tra

và chuyển tiếp tại các nút trung gian khác trước khi về Ncenter. Nút Ncenter kiểm tra

để đảm bảo rằng gói MCACK nhận được gửi từ Nδ, và gói này gửi trả lời cho Ncenter

bằng việc lần lượt sử dụng khóa bí mật kNcenter− và khóa công khai kNδ+ để giải mã

trường ACK. Nếu điều kiện thỏa mãn, Ncenter cập nhật vào PKDB rằng việc cấp MC

cho nút thành viên Nδ là thành công (Completed=Yes); ngược lại gói MCACK bị hủy.

Hàm sau mô tả chi tiết việc kiểm tra và cập nhật PKDB khi nhận được gói MCACK ,

kết quả trả về True nếu MC đã được cấp thành công; ngược lại, trả về False.

Bool TestAndUpdatePKDB(MCACK P){

if (!IsPacketIntegrity(P, P.KEY)) {

Dispose(P) and return False;

} else {

val1← De(P.ACK, kNcenter−); //val1 = En(H(IPcenter), kNδ−)

val2← De(val1, P.KEY );

if (val2 6= H(IPNcenter)) {Dispose(P) and return False;}

else {

if (IPNδ exists in PKDB) {

PKDB.Rows[IPNδ ].Completed ← Yes;

return True;

} else { Dispose(P) and return False; }

}

}

}

2.3.5 Đánh giá hiệu năng của giao thức MLAMAN

Trong chương 1, luận án đã đánh giá tác hại của tấn công lỗ sâu đến hiệu năng

giao thức AODV. Giao thức MLAMAN được cải tiến từ giao thức AODV bằng cách

sử dụng cơ chế an ninh MLA. Vì vậy, để thấy được hiệu quả an ninh, luận án sử dụng

cùng thông số như đã đánh giá trên giao thức AODV tại mục 1.5.1. Hai nút độc hại

đứng yên tại vị trí trung tâm và kết nối với nhau qua một đường hầm có chiều dài

lần lượt là 1, 2, 3, 4 và 5 chặng (250m/chặng) như Hình 1.18. Ngoài ra, luận án bổ

sung thêm tham số liên quan đến vận tốc di động, tất cả các nút mạng di chuyển ngẫu

nhiên với vận tốc tối đa lần lượt là 10, 20, 30 và 40m/s.

a) Tỷ lệ phát hiện nút độc hại thành công: Đầu tiên, luận án đánh giá hiệu quả

phát hiện nút độc hại của giải pháp MLA và so sánh với giải pháp EEP. Kết quả thống

kê sau khi thực hiện 200 lần mô phỏng với các tham số đầu vào khác nhau (Hình 2.13)

cho thấy giải pháp EEP có tỷ lệ phát hiện tuyến chứa đường hầm thành công tối đa

là 94.31%, độ lệch chuẩn là 0.25%. Tỷ lệ phát hiện tuyến chứa đường hầm thành công

của EEP phụ thuộc chiều dài đường hầm, thấp nhất khi TL=3.

61

Page 77: NGHIŒNCÙUM¸TS¨GI…IPH†P …

86

87

88

89

90

91

92

93

94

95

1 2 3 4 5

Tỷ

lệ p

hát h

iện

thàn

h cô

ng (

%)

Chiều dài đường hầm (hop)

MS=10m/s,HM MS=20m/s,HM

MS=30m/s,HM MS=40m/s,HM

MS=10m/s,PM MS=20m/s,PM

MS=30m/s,PM MS=40m/s,PM

Hình 2.13. Hiệu quả an ninh của EEP dựa trên vận tốc và chiều dài đường hầm

Hiệu quả an ninh của MLA phụ thuộc vào 3 cơ chế: Xác thực toàn vẹn gói tin,

thành viên và láng giềng thật sự. Hai cơ chế xác thực toàn vẹn gói tin và thành viên

không phụ thuộc vào vị trí. Tuy nhiên, cơ chế xác thực láng giềng thật sự lại phụ thuộc

nhiều vào vị trí của nút thông qua tín hiệu GPS. Vì vậy, MLA có thể bị sai lầm khi

các nút mạng di động. MLA có 2 trường hợp dẫn đến sai lầm. Thứ nhất, nút N2 nhận

được gói P từ nút bình thường N1, do phải xử lý nhiều gói tin nên N2 đưa gói P vào

hàng đợi chờ đến lượt xử lý. Tại thời điểm xử lý gói P được lấy ra từ hàng đợi, vị trí

của N2 đã thay đổi và do sai số GPS, dẫn đến khoảng cách giữa hai nút N1 và N2 lớn

hơn R. Kết quả là gói P bị hủy và nút liền trước được xác định là độc hại (hủy sai).

Thứ hai, nút N2 nhận được gói P được chuyển tiếp từ một nút độc hại M, do phải xử

lý nhiều gói tin nênP được thêm vào hàng đợi trước khi xử lý. Tại thời điểm xử lý P

từ hàng đợi, vị trí của N2 đã thay đổi và do sai số GPS, dẫn đến khoảng cách giữa N2

và M nhỏ hơn (hoặc bằng) bán kính phát sóng. Kết quả là gói P được chấp nhận, nút

M được xác định là bình thường (chấp nhận sai).

99.5

99.6

99.7

99.8

99.9

100

1 2 3 4 5

Tỷ

lệ p

hát h

iện

thàn

h cô

ng (

%)

Chiều dài đường hầm (hop)

MS=10m/s,HM MS=20m/s,HM

MS=30m/s,HM MS=40m/s,HM

MS=10m/s,PM MS=20m/s,PM

MS=30m/s,PM MS=40m/s,PM

Hình 2.14. Hiệu quả an ninh của MLA dựa trên vận tốc và chiều dài đường hầm

62

Page 78: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Kết quả thống kê sau khi thực hiện 200 lần mô phỏng với các tham số đầu vào

khác nhau (Hình 2.14) cho thấy MLA phát hiện nút độc hại ở chế độ PM tốt hơn chế

độ HM. Kết quả mô phỏng dựa trên vận tốc di động và độ dài đường hầm khác nhau

cho thấy MLA phát hiện nút độc hại thành công tối đa 99.98% ở chế độ PM, độ lệch

chuẩn là 0.003%. Ở chế độ HM, MLA phát hiện nút độc hại thành công tối đa 99.87%,

độ lệch chuẩn là 0.018%. Kết quả này cho thấy giải pháp MLA có hiệu quả an ninh

tốt hơn giải pháp EEP [72].

b) Hao phí truyền thông để cấp MC: Tiếp theo, luận án đánh giá số lượng gói tin

điều khiển (MCP và MCACK) hao phí cần phải xử lý để cấp MC cho tất cả nút thành

viên trong các môi trường mạng với vận tốc di động khác nhau. Kịch bản 1 (100-nodes)

gồm 100 nút mạng sử dụng giao thức MLAMAN, tất cả các nút được thêm vào PKDB;

Kịch bản 2 (80-nodes) có 80 nút, được cài đặt vào PKDB; Kịch bản 3 (80-20-nodes) có

80 nút, được cài đặt vào PKDB và 20 nút còn lại được thêm vào PKDB tại giây 200.

0

10000

20000

30000

40000

50000

60000

0 50 100 150 200 250

Số

ợn

g g

ói

tin

hao

ph

í (p

kt)

Thời gian để hoàn thành cấp MC (sec)

100nodes 80nodes 80-20nodes

(a) Đứng yên

0

10000

20000

30000

40000

50000

60000

0 50 100 150 200 250 300

Số

ợn

g g

ói

tin

hao

ph

í (p

kt)

Thời gian để hoàn thành cấp MC (sec)

100nodes 80nodes 80-20nodes

(b) 1-10 (m/s)

0

10000

20000

30000

40000

50000

60000

0 50 100 150 200 250 300

Số

ợn

g g

ói

tin

hao

ph

í (p

kt)

Thời gian để hoàn thành cấp MC (sec)

100nodes 80nodes 80-20nodes

(c) 1-20 (m/s)

0

10000

20000

30000

40000

50000

60000

0 50 100 150 200 250 300

Số

ợn

g g

ói

tin

hao

ph

í (p

kt)

Thời gian để hoàn thành cấp MC (sec)

100nodes 80nodes 80-20nodes

(d) 1-30 (m/s)

Hình 2.15. Số lượng gói tin hao phí phải xử lý để cấp MC của MLAMAN

Kết quả mô phỏng trong môi trường mạng đứng yên (Hình 2.15(a)) cho thấy

MLAMAN cần 30s và phải xử lý 20,830pkt để hoàn thành cấp MC cho 100 nút thành

viên. Khi PKDB có 80 nút thì MLAMAN cần 25s và phải xử lý 12,718pkt để hoàn

63

Page 79: NGHIŒNCÙUM¸TS¨GI…IPH†P …

thành cấp MC cho 80 nút thành viên. Khi thêm 20 nút còn lại vào PKDB, số lượng gói

điều khiển bắt đầu tăng tại giây 200 để cấp MC và hoàn thành sau 210s và phải xử lý

14,925pkt. Hình 2.15(d) trình bày kết quả mô phỏng trong môi trường mạng di động

với vận tốc tố đa 30m/s. MLAMAN cần 190s và phải xử lý 57,534pkt để hoàn thành

cấp MC cho 100 nút thành viên. Khi PKDB có 80 nút trong PKDB thì MLAMAN cần

130s và phải xử lý 39,698pkt để hoàn thành cấp MC cho 80 nút thành viên. Khi thêm

20 nút còn lại vào PKDB, số lượng gói điều khiển bắt đầu tăng tại giây 200 để cấp

MC và hoàn thành sau 300s và phải xử lý 47,657pkt. Như vậy, kết quả mô phỏng cho

thấy rằng số lượng gói tin hao phí để cấp MC tăng dần theo vận tốc di động.

c) Ảnh hưởng của cơ chế cấp MC đến MLAMAN: Ngoài ra, luận án đánh giá

ảnh hưởng của cơ chế cấp MC đến hiệu năng của MLAMAN. Kịch bản 1 gồm 100 nút

sử dụng giao thức AODV; Kịch bản 2 (100-nodes) gồm 100 nút mạng sử dụng giao

thức MLAMAN, tất cả các nút được thêm vào PKDB; Kịch bản 3 (80-nodes) có 80

nút, được cài đặt vào PKDB; Kịch bản 4 (80-20-nodes) có 80 nút, được cài đặt vào

PKDB và 20 nút còn lại được thêm vào PKDB tại giây 200. Hình 2.16 là kết quả thống

kê sau khi thực hiện 20 lần mô phỏng với các tham số đầu vào khác nhau, vận tốc

di động tối đa 30m/s. Kết quả cho thấy tỷ lệ gửi gói tin thành công của giao thức

MLAMAN thấp hơn AODV. Kết thúc 1000s mô phỏng, giao thức AODV có tỷ lệ gửi

gói tin thành công là 76.07% với độ lệch chuẩn là 2.45%. Giao thức MLAMAN-100 có

tỷ lệ gửi gói tin thành công là 69.48% với độ lệch chuẩn là 3.26%, thấp hơn 6.59% so

với AODV. Nguyên nhân là do các nút thành viên không tham gia vào mạng nếu chưa

nhận được MC và MLAMAN cần 90s để hoàn thành việc cấp MC cho 100 nút thành

viên. Hơn nữa, cơ chế an ninh đã ảnh hưởng đến hiệu quả định tuyến dữ liệu của giao

thức MLAMAN so với AODV.

Hình 2.16. Ảnh hưởng của cơ chế cấp MC đến tỷ lệ gửi gói thành công của MLAMAN

64

Page 80: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Luận án đã sử dụng tổng cộng 20 nguồn phát dữ liệu đến 20 nút đích khác

nhau, mỗi nguồn phát cách nhau 5s. Trong 45s đầu, tỷ lệ gửi gói tin thành công của

MLAMAN-80 tăng dần, nguyên nhân là do gói tin của 10 nguồn phát dữ liệu đầu tiên

được định tuyến thành công đến đích. Sau giây thứ 45, 10 nguồn phát dữ liệu còn lại

bắt đầu truyền gói tin, nhưng các nút trung gian không thể định tuyến được đến đích.

Nguyên nhân là do có 50% nút đích chưa được cấp MC. Vì vậy, tỷ lệ gửi gói tin thành

công của giao thức MLAMAN-80 giảm từ giây 50 do xuất hiện mất gói tin, đạt 34.66%

khi kết thúc mô phỏng, độ lệch chuẩn là 2.87%. Tại giây 200, 20 nút thành viên còn

lại được cấp MC nên tỷ lệ gửi gói thành công của MLAMAN-80-20 bắt đầu phục hồi

và đạt 64.43% khi kết thúc mô phỏng, độ lệch chuẩn là 3.39%.

d) Hiệu năng của MLAMAN: Cuối cùng, luận án đánh giá hiệu quả an ninh của

MLAMAN trong môi trường mạng bị tấn công lỗ sâu (TL=3), 20 nguồn phát CBR,

vận tốc di động là 30m/s. Kết quả tại Hình 2.17(a) cho thấy rằng tỷ lệ gửi gói tin

thành công giao thức AODV giảm từ 76.07% xuốn còn 40.11% khi bị tấn công lỗ sâu.

Giao thức MLAMAN có tỷ lệ gửi gói thành công và ổn định trong môi trường mạng

bị tấn công lỗ sâu. Trong môi trường bình thường, tỷ lệ gửi gói tin thành công của

MLAMAN đạt 69.48%, độ lệch chuẩn là 3.26%. Khi bị tấn công lỗ sâu tỷ lệ gửi gói

tin thành công của MLAMAN giảm 0.23% (đạt 69.48%), độ lệch chuẩn là 3.26%. Như

vậy, giải pháp MLA hoạt động hiệu quả trong môi trường mạng có nút độc hại. Kết

quả mô phỏng tại Hình 2.17(b) cho thấy rằng cơ chế an ninh và cơ chế cấp MC đã

ảnh hưởng đến thời gian trễ trung bình của giao thức MLAMAN. Kết thúc 1000s mô

phỏng, MLAMAN có thời gian trễ trung bình để định tuyến thành công một gói dữ

liệu đến đích là 1.517s (độ lệch chuẩn là 0.327s), cao hơn so với giao thức AODV là

0.934s (độ lệch chuẩn là 0.081s). Nguyên nhân là do để đảm bảo an ninh, mỗi nút xác

thực từng chặng nút liền trước với 3 cơ chế kiểm tra gồm: xác thực toàn vẹn gói tin,

xác thực thành viên và xác thực láng giềng thật sự.

0

10

20

30

40

50

60

70

80

90

400 600 800 1000

Tỷ

lệ gử

i gó

i th

ành

công

(%

)

Thời gian mô phỏng (sec)

AODV-Normal AODV-TL=3 MLAMAN-Normal MLAMAN-TL=3

(a) Tỷ lệ gửi gói thành công

0

0.5

1

1.5

2

2.5

400 600 800 1000

Thờ

i gi

an t

rễ t

rung

bìn

h (s

ec)

Thời gian mô phỏng (sec)

AODV-Normal AODV-TL=3 MLAMAN-Normal MLAMAN-TL=3

(b) Thời gian trễ trung bình

Hình 2.17. Hiệu quả an ninh của giao thức MLAMAN khi bị tấn công lỗ sâu

65

Page 81: NGHIŒNCÙUM¸TS¨GI…IPH†P …

2.4 So sánh các giải pháp an ninh chống tấn công lỗ sâu

Luận án tổng hợp các giải pháp đã công bố trong thời gian qua trong Bảng 2.2.

Giải pháp MLA dựa vào vị trí để phát hiện nút độc hại tương tự giải pháp EEP, trong

khi các giải pháp khác dựa trên thời gian. Phương pháp kiểm tra đầu-cuối được tất cả

các giải pháp đã công bố sử dụng, chỉ có nút đích hoặc nguồn tham gia kiểm tra nên

hiệu quả an ninh bị hạn chế. Nút nguồn hoặc đích chỉ phát hiện được tuyến chứa nút

độc hại, không biết chính xác địa chỉ của nút độc hại.

Bảng 2.2. Đặc điểm các giải pháp phát hiện tấn công lỗ sâu

Đặc điểmGiải pháp

DelPHI TTHCA WADT EEP MLA

1. Kỹ thuật sử dụng Thời gian Thời gian Thời gian Vị trí Vị trí2. Phương pháp kiểm tra EE EE EE EE HbH3. Nút tham gia kiểm tra Nguồn Nguồn Nguồn Đích Tất cả4. Mô-đun mở rộng No No GPS GPS GPS5. Gói tin điều khiển tuyến Nguyên Thêm Đổi Đổi Thêm6. Xác định chính xác địachỉ nút độc hại

No Yes No No Yes

7. Thay đổi cơ chế khámphá tuyến

Yes Yes Yes No No

8. Kích thước tăng thêmcủa gói tin điều khiển

0byte 4bytes 8bytes 12bytes 273bytes

9. Ngăn chặn nút độc hạithay đổi gói điều khiển

No No No No Yes

10. Mô phỏng kết quả NS2 NS2 NS2 NS2 NS211. Độ phức tạp thuật toán O(n2) O(n) O(n) O(n) O(p3) + O(d)

Giải pháp đề xuất MLA sử dụng phương pháp xác thực từng chặng, tất cả các

nút tham gia kiểm tra nút liền trước dựa vào vị trí nên hiệu quả phát hiện nút độc hại

tốt hơn các giải pháp đã công bố. Riêng giải pháp TTHCA có thể nhận biết nút độc

hại, nhưng phải sử dụng gói tin hệ thống mới làm tăng hao phí truyền thông và kém

an toàn do tin tặc có thể lợi dụng gói này để gây hại cho hệ thống. Tương tự giải pháp

WADT và EEP, MLA yêu cầu mô-đun mở rộng là GPS trong quá trình sử dụng. Ngoài

ra, MLA cần gói tin điều khiển mới tương tự TTHCA để cấp MC nên làm tăng hao

phí truyền thông. Các giải pháp trước đây đã làm thay đổi cơ chế khám phá tuyến của

giao thức gốc, MLA và EEP không làm thay đổi cơ chế khám phá tuyến nên hiệu quả

khám phá tuyến không bị ảnh hưởng. Ngoại trừ MLA, tất cả các giải pháp đã công bố

không thể ngăn chặn nút độc hại thay đổi dữ liệu của gói tin. Tuy nhiên, hạn chế của

giải pháp MLA là kích thước của gói tin điều khiển và độ phức tạp của MLA lớn hơn

nhiều so với giao thức gốc.

66

Page 82: NGHIŒNCÙUM¸TS¨GI…IPH†P …

2.5 Tiểu kết Chương 2

Chương này của luận án đã phân tích chi tiết và chỉ ra một số tồn tại của các

giải pháp phát hiện và ngăn chặn tấn công lỗ sâu, tiêu biểu như: DelPHI, WADT,

TTHCA và EEP. Trên cơ sở ưu điểm và tồn tại của các giải pháp đã công bố, luận án

đã đề xuất giải pháp an ninh tên là MLA [CT1] với những ưu điểm sau:

(1) MLA có tỷ lệ phát hiện nút độc hại thành công tốt hơn nhiều so với EEP ở cả

hai chế độ ẩn và tham gia.

(2) Nhờ vào cơ chế kiểm tra toàn vẹn gói tin, MLA có thể ngăn chặn nút độc hại tấn

công bằng cách thay đổi các trường trên gói tin điều khiển tuyến.

(3) Nhờ vào cơ chế quản lý và cấp MC nên MLA có thể phát hiện nút độc hại tấn

công bằng cách sử dụng khóa giả mạo.

Tuy nhiên, hạn chế của MLA là tín hiệu GPS có thể bị sai số do nhiễu hoặc môi

trường di động cao nên ảnh hưởng đến hiệu quả phát hiện nút độc hại. Kết quả mô

phỏng trong môi trường di động cao (144km/h) đã cho thấy MLA có tỷ lệ phát hiện

nút độc hại sai lầm dưới 1% ở cả hai chế độ PM và HM. Tương tự SAODV và ARAN,

do sử dụng chữ ký số nên MLAMAN có độ phức tạp và kích thước gói điều khiển tuyến

lớn hơn nhiều so với giao thức gốc. Ngoài ra, MLAMAN chưa hỗ trợ cơ chế quản lý,

thu hồi MC của thành viên, hạn chế này sẽ được khắc phục trong giao thức TAMAN

được trình bày tại Chương 4 của luận án.

67

Page 83: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Chương 3

GIẢI PHÁP PHÁT HIỆN VÀ NGĂN CHẶN

TẤN CÔNG NGẬP LỤT

Chương này phân tích chi tiết một số giải pháp phát hiện và ngăn chặn tấn công

ngập lụt đã được công bố. Qua đó, luận án chỉ ra một số tồn tại trong các giải pháp

dựa trên giá trị ngưỡng và đề xuất giải pháp phát hiện, ngăn chặn tấn công ngập lụt

tên là FADA. Đồng thời, luận án đã tích hợp vào giao thức AODV tạo giao thức cải

tiến FAPRP có thể phát hiện và ngăn chặn tấn công ngập lụt hiệu quả.

3.1 Giới thiệu

Điểm hạn chế của các giao thức định tuyến theo yêu cầu là các gói điều khiển

tuyến không được thiết kế nhằm mục đích an ninh. Vì vậy, nút độc hại có thể tấn công

mạng bằng cách phát liên tục gói tin với tần suất cao, được gọi là tấn công ngập lụt.

Tin tặc có thể sử dụng gói RREQ, HELLO và gói DATA để tấn công, trong đó tấn

công ngập lụt gói RREQ là gây hại nặng nhất do tạo ra bão quảng bá gói tin trên

mạng, gây lãng phí tài nguyên và tăng hao phí truyền thông. Hình 3.1 mô tả hai nút

độc hại M1 và M2 thực hiện tấn công ngập lụt gói RREQ, các nút còn lại là nút bình

thường nên chúng khám phá tuyến thấp hơn rất nhiều so với hai nút M1 và M2.

M1 M2

A

B

C

D

E

F

G

Hình 3.1. Mô tả nút độc hại tấn công ngập lụt gói RREQ [24]

68

Page 84: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Các nghiên cứu gần đây tập trung vào giải pháp phát hiện hình thức tấn công

ngập lụt gói RREQ [27]. Nguyên nhân là do tấn công ngập lụt gói RREQ là nguy hại

nhất vì nó dễ dàng tạo ra bão quảng bá. Chương này đề xuất giải pháp FADA dựa trên

lịch sử khám phá tuyến và thuật toán kNN để phát hiện, ngăn chặn tấn công ngập lụt.

3.2 Phân tích ưu và nhược điểm của một số giải pháp an ninh

trước tấn công ngập lụt

Các nghiên cứu gần đây tập trung vào giải pháp phát hiện hình thức tấn công

ngập lụt gói RREQ theo hai hướng tiếp cận là dựa trên ngưỡng và học máy như Hình

3.2. Giải pháp sử dụng ngưỡng [24, 67, 75] dựa vào số lượng gói RREQ mỗi giây. Điều

này dẫn đến một số nhược điểm: (1) Ngưỡng cố định sẽ thiếu tính mềm dẻo trong

thuật toán phát hiện tấn công. Nguyên nhân là giá trị ngưỡng tối ưu khác nhau trong

mỗi kịch bản; (2) Một nút bình thường có thể bị hiểu nhầm là độc hại nếu thực hiện

khám phá tuyến với tần suất cao tại một thời điểm bất kỳ; (3) Nút độc hại có thể qua

mặt cơ chế an ninh bằng cách phát gói RREQ với tần suất thấp hơn giá trị ngưỡng.

Để cải thiện hạn chế của các giải pháp dựa trên giá trị ngưỡng, hai giải pháp dựa trên

hướng tiếp cận học máy là SVMT [62] và kNNAODV [49]. Chúng sử dụng thuật toán

SVM và kNN để nhận biết nút độc hại hoặc bình thường. Tuy nhiên, thuộc tính của

các véc-tơ biểu diễn cho các nút vẫn còn dựa trên tần suất phát gói RREQ nên hiệu

quả còn hạn chế. Ngoài ra, kNNAODV được đề xuất để hoạt động trong mạng WSN

nên không phù hợp cho môi trường mạng di động MANET. Phương pháp xây dựng

tập dữ liệu huấn luyện của kNNAODV chưa được trình bày cụ thể. Phần này phân

tích ưu nhược điểm của các giải pháp liên quan để làm cơ sở cho đề xuất của luận án.

Flooding

FAP [67] EFS [75] BI [24] SVMT [62] kNNAODV [49]

Học máy Ngưỡng

FADA [CT2]

Hình 3.2. Một số giải pháp phát hiện và ngăn chặn tấn công ngập lụt đã công bố

3.2.1 Giải pháp FAP

Tác giả [67] và cộng sự đã trình bày giải pháp ngăn chặn tấn công ngập lụt (FAP)

sử dụng ngưỡng cố định (Th). FAP lưu số lần yêu cầu tuyến của mỗi nút vào bảng

Rate-RREQ, lưu danh sách nút độc hại vào BlackList. Cấu trúc của bảng Rate-RREQ

có hai trường gồm: Node-ID để lưu địa chỉ, RREQ-time để lưu số lần khám phá tuyến.

Trong giao thức AODV, tần suất phát gói RREQ của mỗi nút được qui định tối đa

là 10pkt/s trong tham số RREQ_RATELIMIT [63]. Dựa vào ý tưởng này, FAP thiết

69

Page 85: NGHIŒNCÙUM¸TS¨GI…IPH†P …

lập giá trị ngưỡng Th là 15. Một nút thực hiện yêu cầu tuyến quá 15pkt/s sẽ được xác

định là độc hại và được đưa vào BlackList như Thuật toán 3.1, độ phức tạp là O(n)

với n là số lượng nút mạng. Thuật toán vận hành định kỳ sau mỗi giây, nút độc hại

bị phát hiện sẽ được đưa vào BlackList. Khi nhận gói yêu cầu tuyến từ một nút thuộc

BlackList, nút trung gian sẽ hủy gói ngay lập tức; ngược lại, gói sẽ được chấp nhận.

Algorithm 3.1: Thuật toán phát hiện tấn công ngập lụt FAP [67]

Input: Bảng Rate-RREQ, ngưỡng Th

Output: Danh sách BlackList chứa các nút độc hại

1 Begin

2 for i = 0 to n - 1 do

3 if Rate-RREQ[i].RREQ-time > Th then

4 InsertToBlackList(Rate-RREQ[i].Node-ID);

5 Rate-RREQ[i].RREQ-time = 0;

6 End;

Nhận xét: FAP là giải pháp đơn giản nhất trong các giải pháp dựa trên giá trị

ngưỡng. FAP có thể giảm thiểu tác hại của tấn công ngập lụt. Tuy nhiên, FAP còn tồn

tại một số hạn chế là:

• Giá trị ngưỡng cố định làm cho thuật toán thiếu mềm dẻo và độ tin cậy. Nguyên

nhân là do ngưỡng tối ưu để phát hiện tấn công lệ thuộc vào tần suất tấn công

do tin tặc thiết lập; Đặc biệt, tin tặc có thể qua mặt giải pháp FAP bằng cách

thiết lập nút độc hại phát gói RREQ với tần suất thấp hơn 15pkt/s;

• Thuật toán kiểm tra thực hiện định kỳ sau mỗi giây đã làm hạn chế hiệu quả

phát hiện tấn công. Giả sử nút độc hại tấn công với tần suất là 100pkt/s, trường

hợp xấu nhất là giải pháp FAP chỉ phát hiện tấn công mạng sau khi nút độc hại

đã phát hết 100 gói vào mạng.

3.2.2 Giải pháp EFS

Dựa trên ý tưởng của giải pháp FAP, tác giả [75] và cộng sự đã đề xuất lược

đồ lọc hiệu quả (EFS) nhằm giảm thiểu tác hại của tấn công ngập lụt. Giải pháp

EFS theo dõi tần suất yêu cầu tuyến của mỗi nút bằng cách đếm số lượng gói RREQ

nhận được. Điểm khác biệt so với FAP là giải pháp EFS sử dụng hai giá trị ngưỡng là

RATE_LIMIT và BLACKLIST_LIMIT. Giá trị ngưỡng RATE_LIMIT được thiết lập

là 10 để phát hiện những nút nghi ngờ là độc hại. Giá trị ngưỡng BLACKLIST_LIMIT

được thiết lập là 15 (bằng với giá trị ngưỡng của giải pháp FAP) để phát hiện và loại

bỏ gói RREQ từ nút độc hại. Trong khi vận hành, một nút nguồn bất kỳ phát gói yêu

cầu tuyến với tần suất lớn hơn BLACKLIST_LIMIT sẽ được xác định là độc hại và

được đưa vào BlackList. Trong trường hợp nút nguồn phát gói yêu cầu tuyến với tần

70

Page 86: NGHIŒNCÙUM¸TS¨GI…IPH†P …

suất lớn hơn RATE_LIMIT sẽ bị nghi ngờ là nút độc hại và được đưa vào hàng đợi

để phục vụ sau. Thuật toán 3.2 trả về True nếu nút nguồn là bình thường; ngược lại,

trả về False, độ phức tạp của thuật toán là O(n), n là số lượng nút mạng.

Algorithm 3.2: Thuật toán phát hiện tấn công ngập lụt EFS [75]

Input: Gói RREQ, thời gian mô phỏng Tm, hai ngưỡng RATE_LIMIT và

BLACKLIST_LIMIT

Output: True nếu nút nguồn là bình thường, ngược lại False

1 Begin

2 id_src ← RREQ.src_add; //Địa chỉ nút nguồn đã gửi gói RREQ

3 RREQ_Counts[id_src]++;

4 rate ← RREQ_Counts[id_src] / Tm;

5 if rate > BLACKLIST_LIMIT then

6 InsertToBlackList(id_src);

7 return False;

8 if rate > RATE_LIMIT then

9 InsertPacketToQueue(RREQ);

10 return False;

11 return True;

12 End;

Nhận xét: Giải pháp EFS được cải tiến từ FAP nên có hiệu quả an ninh tốt

hơn nhờ vào việc kiểm tra ngay lập tức mỗi khi nhận được gói RREQ. Ngoài ra, việc

bổ sung giá trị ngưỡng BLACKLIST_LIMIT đã làm hạn chế khả năng tấn công của

nút độc hại. Tuy nhiên, tương tự giải pháp FAP, việc thiết lập giá trị ngưỡng cố định

là thiếu tính linh hoạt và dễ bị sai lầm. Ngoài ra, tin tặc có thể qua mặt cơ chế an

ninh bằng cách thiết lập nút độc hại tấn công với tần suất thấp hơn giá trị ngưỡng

RATE_LIMIT.

3.2.3 Giải pháp BI

Mặc dù giải pháp EFS tiến bộ hơn FAP, nhưng FES vẫn tồn tại nhược điểm là

giá trị ngưỡng cố định làm cho thuật toán không hiệu quả khi triển khai vào thực tế.

Để cải thiện hạn chế này, tác giả [24] và cộng sự đã đề xuất giải pháp sử dụng chỉ mục

cân bằng (BI) dựa trên thống kê làm ngưỡng phát hiện tấn công ngập lụt. Giao thức

an ninh BAODV được cải tiến từ giao thức AODV sử dụng giải pháp BI để phát hiện

và ngăn chặn tấn công ngập lụt. Mỗi khi nhận được gói RREQ từ nút nguồn bất kỳ

Ni, nút sẽ tính giá trị bi và so sánh với số lần khám phá tuyến của nút Ni. Nếu một

nút nguồn phát gói yêu cầu tuyến với số lượng (xi) lớn hơn giá trị ngưỡng bi sẽ được

xác định là nút độc hại, gói RREQ bị hủy. Thuật toán 3.3 cho phép thống kê tần suất

phát gói RREQ của tất cả nút nguồn và kiểm tra nút độc hại. Kết quả trả về True nếu

71

Page 87: NGHIŒNCÙUM¸TS¨GI…IPH†P …

nút nguồn là bình thường; ngược lại, trả về False. Độ phức tạp thuật toán là O(n), với

n là số lượng nút mạng.

Algorithm 3.3: Thuật toán phát hiện tấn công ngập lụt BI [24]

Input: Gói RREQ

Output: True nếu nút nguồn là bình thường, ngược lại False

1 Begin

2 i← RREQ.ID_SRC; //Địa chỉ nút nguồn đã gửi gói RREQ;

3 xi ← xi + 1; //Tăng số lượng gói RREQ của nút Ni;

4 x←∑n

i=1

xin; //Tính trung bình mẫu

5 sd←

√∑ni=1

(xi − x)2

(n− 1); // Tính độ lệch chuẩn

6 bi← 2 ∗ x ∗ x

sd+ 1; //Tính chỉ mục cân bằng, đây là giá trị ngưỡng

7 if xi > bi then

8 Hủy gói RREQ;

9 Nút Ni đã gửi gói RREQ là độc hại;

10 if xi > 4 ∗ x+ 1 then xi ← xi − 1;

11 return False;

12 return True;

13 End;

Nhận xét: Giải pháp BI có hiệu quả an ninh tốt hơn FAP và EFS nhờ vào việc

xây dựng giá trị ngưỡng động để phát hiện tấn công ngập lụt. Tuy nhiên, tương tự giải

pháp dựa trên giá trị ngưỡng, BI cũng tồn tại nhược điểm:

• BI có thể mắc sai lầm trong môi trường di động. Nguyên nhân là do chỉ mục cân

bằng bi được tính dựa trên thống kê số lần phát gói RREQ của tất cả các nút

trong mạng. Trong môi trường di động cao, các nút trung gian không ghi nhận

đầy đủ trạng thái khám phá tuyến của nút nguồn.

• Do sử dụng ngưỡng nên hiệu quả an ninh bị hạn chế. Nguyên nhân là do tin tặc

có thể qua mặt cơ chế an ninh bằng cách thiết lập nút độc hại tấn công với tần

suất thấp hơn ngưỡng bi.

3.3 Giải pháp an ninh sử dụng thuật toán phân lớp

Qua phân tích tại phần trên, luận án thấy rằng hạn chế của các giải pháp an

ninh sử dụng ngưỡng cố định [67, 75] là thiếu linh hoạt. Nguyên nhân là do ngưỡng

tối ưu trong các môi trường mạng khác nhau sẽ khác nhau. Giải pháp BI [24] đã khắc

phục được nhược điểm bằng giải pháp xây dựng ngưỡng động tùy thuộc vào trạng thái

hoạt động của mạng. Tuy nhiên, ngưỡng bi rất nhạy cảm với các sai lầm trong quá

72

Page 88: NGHIŒNCÙUM¸TS¨GI…IPH†P …

trình kiểm tra an ninh. Hai giải pháp dựa trên hướng tiếp cận học máy là SVMT [62]

và kNNAODV [49] đã cải thiện hạn chế của các giải pháp dựa trên giá trị ngưỡng. Tuy

nhiên, thuộc tính của các véc-tơ biểu diễn cho các nút vẫn còn dựa trên tần suất phát

gói RREQ nên hiệu quả còn hạn chế.

Trong mạng MANET sử dụng giao thức định tuyến theo yêu cầu, nút chỉ khám

phá tuyến đến đích khi cần thiết. Vì vậy, tần suất phát gói RREQ thấp nên khe thời

gian giữa các lần khám phá tuyến sẽ cao rất khác biệt. Tuy nhiên, nút độc hại có tần

suất khám phá tuyến dày đặc nên khe thời gian khám phá tuyến gần giống nhau và

nhỏ hơn khe thời gian khám phá tuyến của nút bình thường như mô tả tại Hình 3.3.

Biểu đồ cho thấy rằng hầu hết các khe thời gian khám phá tuyến của nút độc hại nhỏ

hơn khe thời gian khám phá tuyến của nút bình thường. Nguyên nhân là do nút độc

hại thực hiện quảng bá gói yêu cầu tuyến rất nhiều hơn so với nút bình thường.

Thời gian

tN1sN1 eN1

TN1tN2

sN2 eN2

TN2tN3

sN3 eN3

TN3tN4

sN4 eN4

TN4tNm

sNm eNm

TNm

(a) Nút bình thường (NN )

Thời gian

tM1sM1 eM1

TM1tM2

sM2 eM2

TM2tM3

sM3 eM3

TM3tM4

sM4 eM4

TM4tM5

sM5 eM5

TM5tM6

sM6 eM6

TM6tM7

sM7 eM7

TM7tM8

sM8 eM8

TM8tMm

sMm eMm

TMm

(b) Nút độc hại (NM )

Hình 3.3. Mô tả DRDTS của nút bình thường và độc hại được ghi nhận tại NA

Biểu đồ khe thời gian khám phá tuyến (DRDTS) của nút bình thường và độc

hại được ghi nhận tại nút NA được mô tả tại Hình 3.3. Trong đó, tji là thời gian khám

phá tuyến lần thứ i của nút nguồn Nj, tji được tính theo Công thức (3.1); T ji là khe

thời gian khám phá tuyến lần thứ i của nút nguồn Nj, được tính theo Công thức (3.2);

eji là thời điểm nhận trả lời tuyến thứ i của nguồn Nj; sji+1 thời điểm thực hiện khám

phá tuyến tiếp theo của nguồn Nj.

tji = eji − sji (3.1)

T ji = sji+1 − eji (3.2)

Thuật toán kNN là một trong những thuật toán phân lớp của lĩnh vực học máy,

sử dụng phương pháp học giám sát. Ý tưởng chính của thuật toán kNN là bầu chọn

theo số đông. Đây là thuật toán đơn giản và dễ cài đặt, nhưng vẫn cho kết quả phân

lớp tốt với độ chính xác cao [73]. Tác giả [49] đã ứng dụng thuật toán này vào lĩnh vực

an ninh trên mạng MANET và cho thấy hiệu quả tích cực. Vì vậy, trên cở sở này, luận

án đã ứng dụng thuật toán kNN để xây dựng giải pháp FADA. Giải pháp này dựa trên

lịch sử khám phá tuyến để phát hiện và ngăn chặn tấn công ngập lụt.

73

Page 89: NGHIŒNCÙUM¸TS¨GI…IPH†P …

3.3.1 Mô hình tổng quát của giải pháp FADA

Luận án đề xuất thuật toán phát hiện tấn công ngập lụt (FADA) và tích hợp vào

AODV để tạo giao thức ngăn chặn tấn công ngập lụt (FAPRP [CT2]). Mô hình tổng

quát của FADA như Hình 3.4. Đầu tiên, luận án biểu diễn lịch sử khám phá tuyến của

mỗi nút bằng một véc-tơ tần suất khám phá tuyến (VRDF). Tiếp theo, luận án mô tả

phương pháp xây dựng tập dữ liệu huấn luyện gồm hai lớp véc-tơ MVC và NVC. MVC

biểu diễn hành vi của các nút độc hại và NVC biểu diễn cho nút bình thường. Cuối

cùng, luận án xây dựng bộ phân lớp để nhận biết nút bình thường và nút độc hại dựa

trên véc-tơ tần suất khám phá tuyến của nút và hai lớp véc-tơ MVC và NVC. FADA

sử dụng thông tin lịch sử khám phá tuyến (RDH) để biểu diễn hành vi của nút độc

hại hoặc bình thường. Vì vậy, FADA có thể phát hiện nút độc hại với độ chính xác tốt

hơn một số giải pháp trước đây.

1. Huấn luyện (Offline)

Dữ liệu trạng thái khám phá tuyến

của nút bình thường và nút độc hại

sử dụng nhiều tần suất tấn công,

vận tốc di động khác nhau

Kết quả

Lớp véc-tơ NVC

Lớp véc-tơ MVC

INPUT

OUTPUT

2. Quyết định (Online)

Thu thập thông tin khe thời gian

khám phá tuyến của nút nguồn (NS)

Tạo véc-tơ tần suất khám phá tuyến

(VNs) của nút nguồn

Sử dụng kNN-Classifier

để phân lớp VNs

Bị tấn công Bình thường

Sử dụng thuật toán huấn luyện PROCESS

S

No Yes VNs NVC

Hình 3.4. Mô hình tổng quát của giải pháp FADA

3.3.2 Thuật toán phân lớp kNN

Thuật toán kNN dựa trên ý tưởng là bầu chọn theo số đông. Đây là một trong

những thuật toán phân lớp của lĩnh vực học máy, sử dụng phương pháp học giám sát.

Quyết định phân lớp một đối tượng dữ liệu mới được suy ra trực tiếp từ k đối tượng

dữ liệu gần nhất của các lớp trong tập dữ liệu huấn luyện. Đối tượng dữ liệu có thể

là các giá trị đơn trong không gian một chiều, khoảng cách giữa hai đối tượng dữ liệu

là trị tuyệt đối của hiệu hai giá trị. Tuy nhiên, trong không gian nhiều-chiều thì đối

tượng dữ liệu được biểu diễn bằng một véc-tơ, khoảng cách giữa hai đối tượng dữ liệu

được tính bằng khoảng cách giữa hai véc-tơ. Giá trị k ảnh hưởng rất lớn đến hiệu quả

phân lớp của thuật toán kNN. Chưa có cơ sở khẳng định chọn giá trị k là bao nhiêu

để thuật toán kNN đạt hiệu quả tốt nhất, k được chọn dựa vào kinh nghiệm.

Ví dụ 3.1: Hình 3.5 là một ví dụ mô tả hoạt động của thuật toán kNN. Mỗi

điểm dữ liệu được biểu diễn bằng một véc-tơ vì đây là không gian 2-chiều. Giả sử rằng

74

Page 90: NGHIŒNCÙUM¸TS¨GI…IPH†P …

lớp A có 13 véc-tơ được biểu diễn bằng các điểm màu đen, lớp B có 13 véc-tơ được

biểu diễn bằng các điểm màu trắng, dữ liệu mới được biểu diễn bằng điểm màu đỏ.

Khi k được thiết lập là 3 như Hình 3.5(a) thì có 2 véc-tơ thuộc lớp B và 1 véc-tơ thuộc

lớp A. Kết quả là điểm dữ liệu mới thuộc lớp B. Tuy nhiên, khi thiết lập k là 5 như

Hình 3.5(b), ta thấy rằng có 3 véc-tơ thuộc lớp A và 2 véc-tơ thuộc lớp B. Kết quả là

đối tượng dữ liệu mới thuộc lớp A.

Đặc trưng 2

Đặc

trư

ng

1

A

B

k=3

(a) k=3

Đặc trưng 2

Đặc

trư

ng

1

A

B

k=5

(b) k=5

Hình 3.5. Mô tả ảnh hưởng của giá trị k trong thuật toán kNN

Mỗi đối tượng dữ liệu trong Hình 3.5 được biểu diễn bởi 2 đặc trưng. Vấn đề

chính của giải pháp FADA là xác định các “đặc trưng” của véc-tơ để biểu diễn trạng

thái khám phá tuyến của mỗi nút. Đây là cơ sở quan trọng ảnh hưởng đến hiệu quả

phát hiện nút độc hại, được trình bày trong phần tiếp theo.

3.3.3 Véc-tơ tần suất khám phá tuyến

Luận án sử dụng lịch sử khám phá tuyến của mỗi nút và biểu diễn chúng dưới

dạng một véc-tơ được gọi là véc-tơ tần suất khám phá tuyến. Hành vi của nút bình

thường rất khác biệt so với nút độc hại nên lịch sử khám phá tuyến của chúng sẽ khác

nhau. Vì vậy, véc-tơ tần suất khám phá tuyến của nút bình thường rất khác biệt so

với nút độc hại. Gọi V jS [a0, a1, a2, a3, a4, a5, ..., am−1] là véc-tơ tần suất khám phá tuyến

của nút nguồn NS được ghi nhận tại nút Nj, m là kích thước của véc-tơ. V jS là véc-tơ

m-chiều, mỗi thành phần của véc-tơ là khe thời gian khám phá tuyến của nút nguồn,

ai là khe thời gian khám phá tuyến lần thứ i của nút nguồn NS (tương ứng T Si ).

Hình 3.6 là một ví dụ mô tả véc-tơ tần suất khám phá tuyến của 5 nút bình

thường từ N1 đến N5 và nút độc hại từ M1 đến M5. Nút độc hại thực hiện tấn công

ngập lụt với tần suất lần lượt là 2, 5, 10, 50 và 100 gói mỗi giây. Ta thấy rằng khe thời

gian khám phá tuyến của nút bình thường lớn hơn 2s, trong khi giá trị này của nút độc

hại là nhỏ hơn 2s. Tuy nhiên, có xuất hiện nhiễu giữa các véc-tơ bình thường và độc

75

Page 91: NGHIŒNCÙUM¸TS¨GI…IPH†P …

hại. Nguyên nhân là do trong môi trường di chuyển ngẫu nhiên, nút giám sát có thể

không nhận được gói RREQ của nút độc hại cho đến khi trạng thái kết nối được thiết

lập. Ngoài ra, gói RREQ có thể chờ lâu trong hàng đợi trước khi tiếp tục được chuyển

tiếp đã làm tăng khe thời gian khám phá tuyến. Điều này dẫn đến sai lầm trong thuật

toán FADA và đã được chứng minh thông qua kết quả mô phỏng tại mục 3.3.7.

0

5

10

15

20

0 5 10 15 20 25 30 35 40

Khe

thời

gia

n kh

ám p

há tu

yến

(sec

)

Kích thước của véc-tơ (m)

N1N2

N3N4

N5M1

M2M3

M4M5

Hình 3.6. Mô tả RDFV của 5 nút bình thường và 5 nút độc hại

3.3.4 Xây dựng tập dữ liệu huấn luyện

Luận án sử dụng hệ mô phỏng NS2.35 để tạo tập dữ liệu huấn luyện gồm hai

lớp véc-tơ MVC và NVC. Tô-pô mạng có 100 nút mạng di chuyển ngẫu nhiên theo mô

hình RWP [90], thời gian mô phỏng là 1000s, phạm vi mô phỏng 2000m x 2000m. Mỗi

kịch bản có p nguồn phát (50 nguồn) dữ liệu CBR, nguồn phát đầu tiên bắt đầu tại

giây thứ 0, các nguồn còn lại cách nhau 5s. Một nút độc hại (NM) được thiết lập tại vị

trí trung tâm (1000m, 1000m) như Hình 3.7. Kết quả huấn luyện ảnh hưởng đến hiệu

quả phát hiện nút độc hại của giải pháp FADA. Đầu tiên luận án xác định giá trị của

2 tham số ảnh hưởng đến kết quả huấn luyện là: Vận tốc di động và tần suất tấn công

của nút độc hại.

a) Vận tốc di động: Các nút trong mạng có thể đứng yên hoặc di động với vận

tốc tối đa trong thực tế là 40m/s. Vì vậy, luận án sử dụng các kịch bản mô phỏng với

vận tốc tối đa lần lượt là 0m/s, 10m/s, 20m/s, 30m/s và 40m/s.

b) Tần suất tấn công: Các nghiên cứu đã công bố trong thời gian gần đây [27,

49, 67] cho thấy rằng tần suất tối đa của nút độc hại là 100pkt/s. Việc thiết lập tần

suất lớn hơn sẽ khó thực hiện do khả năng xử lý của các thiết bị di động hiện tại.

Ngoài ra, công trình [CT5] của luận án đã cho thấy rằng tấn công ngập lụt rất ít ảnh

76

Page 92: NGHIŒNCÙUM¸TS¨GI…IPH†P …

hưởng đến hiệu năng mạng nếu nút độc hại tấn công với tần suất thấp hơn 1pkt/s. Vì

vậy, luận án thiết lập nút độc hại tấn công ngập lụt với tần suất lần lượt là 2, 5, 10,

50 và 100pkt/s trong giai đoạn huấn luyện.

Hình 3.7. Giao diện của tô-pô mạng trong giai đoạn huấn luyện của giải pháp FADA

Quá trình mô phỏng xây dựng tập dữ liệu huấn luyện được thực hiện thông qua

5 bước. Chi tiết các bước theo mô tả như sau:

Bước 1: Xác định kích thước (m) của mỗi véc-tơ cần tạo;

Bước 2: Thiết lập tần suất tấn công (f) của nút độc hại (NM) là 2 gói mỗi giây;

Bước 3: Tiến hành mô phỏng với tô-pô mạng di động lần lượt là 0m/s, 10m/s,

20m/s, 30m/s và 40m/s. Trong quá trình mô phỏng, mỗi nút (Nj,∀j = 1..100) ghi

nhận khe thời gian khám phá tuyến của tất cả nút nguồn (Ns, ∀s = 1..p). T si được

thêm vào véc-tơ tần suất khám phá tuyến của nút nguồn (V js ). Một khi véc-tơ V j

s đầy

thì tất cả các phần tử của véc-tơ được tịnh tiến về trước 1 phần tử và T si được thêm

vào vị trí cuối. Kết thúc thời gian mô phỏng, nếu nút nguồn là nút độc hại thì V js

được thêm vào lớp MVC; ngược lại, V js được thêm vào lớp NVC. Với mỗi tô-pô mạng

di động thu được kết quả gồm:

– 100 véc-tơ độc hại: V jM(TM1 , TM2 , TM3 , ..., TMm );∀j = 1..100

– 100 véc-tơ bình thường: V j

(∑pi=1 T

i1

p,

∑pi=1 T

i2

p, ...,

∑pi=1 T

in

p

); ∀j = 1..100

77

Page 93: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Bước 4: Bằng cách tính véc-tơ trung bình sau khi thực hiện 5 tô-pô mạng di

động, ta thu được 100 véc-tơ độc hại và 100 bình thường;

Bước 5: Tiếp tục thực hiện từ bước 2 đến bước 4 bằng cách thiết lập nút độc

hại tấn công với tần suất lần lượt là f = 5, 10, 50 và 100. Kết quả của mỗi lần huấn

luyện được 100 véc-tơ độc hại của lớp MVC và 100 bình thường của lớp NVC.

Trong giao thức AODV, gói RREQ được truyền dưới hình thức quảng bá, trong

khi gói RREP được truyền dưới hình thức đơn hướng. Một nút trung gian (Ni) có thể

nhận gói RREQ từ nút nguồn (NS), nhưng có thể không nhận gói RREP tương ứng

từ nút đích (ND). Điều này dẫn đến Ni ghi nhận được thời điểm khám phá tuyến của

NS, nhưng không thể biết được thời điểm NS nhận gói trả lời tuyến. Để giải quyết

trường hợp này, giải pháp của bài báo là ghi nhận thời điểm nhận gói RREP trùng với

thời điểm nhận gói RREQ (tương ứng ti = 0) như mô tả trong (3.3). Nguyên nhân là

do các giao thức định tuyến theo yêu cầu chỉ thực hiện khám phá tuyến khi cần thiết

nên giá trị của ti rất nhỏ hơn so với giá trị Ti. Vì vậy, việc ghi nhận thời điểm nhận

gói RREP trùng với thời điểm nhận gói RREQ sẽ ảnh hưởng rất ít đến hiệu quả phát

hiện nút độc hại.

ti =

{0 nếu Ni không nhận được gói RREP

ei − si ngược lại(3.3)

Ví dụ 3.2: Hình 3.8 mô tả nút trung gian (Ni) xử lý mỗi khi nhận được gói

RREQ và RREP. Đầu tiên, khi nhận được gói RREQ tại thời điểm p1, Ni ghi nhận

s1 = e1 = p1. Tiếp theo, khi nhận gói RREP tại thời điểm p2, Ni cập nhật e1 = p2.

Tiếp theo, Ni nhận được gói RREQ tại thời điểm p3, Ni ghi nhận s2 = e2 = p3. Tương

tự, khi nhận gói RREQ tại thời điểm p4, Ni ghi nhận s3 = e3 = p4. Cuối cùng, khi

nhận gói RREP tại thời điểm p5, Ni cập nhật e3 = p5.

(s1 e1) (s2,e2) (s3 e3)

T1>0 T2>0 Thời gian

t1>0 t2=0

p1 p2 p3 p4 p5

t3>0

Hình 3.8. Mô tả nút trung gian xử lý mỗi khi nhận được gói RREQ và RREP

Sau 1000s mô phỏng, kết quả thu được 500 véc-tơ của NVC và 500 véc-tơ của

lớp MVC được biểu diễn như Hình 3.9. Ta thấy rằng lớp véc-tơ NVC gồm các véc-tơ

có khe thời gian khám phá tuyến lớn hơn 4s, trong khi khe thời gian khám phá tuyến

của các véc-tơ thuộc lớp MVC là nhỏ hơn 1s. Có xuất hiện nhiễu trong đoạn từ 1s đến

4s giữa các véc-tơ bình thường và độc hại.

78

Page 94: NGHIŒNCÙUM¸TS¨GI…IPH†P …

0

1

2

3

4

5

6

7

8

1 2 3 4 5 6 7 8 9 101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960

Khe

thời

gia

n kh

ám p

há tu

yến

(sec

)

Kích thước của véc-tơ (m)

Hình 3.9. Tập dữ liệu huấn luyện MVC (4) và NVC (+), kích thước của véc-tơ là 60

3.3.5 Bộ phân lớp kNN

Tương tự tác giả [49], luận án thiết kế bộ phân lớp kNN (kNN-Classifier) dựa

trên thuật toán phân lớp kNN [73]. kNN-Classifier cho phép phân lớp véc-tơ tần suất

khám phá tuyến (VNS) của nút nguồn NS dựa vào hai tập dữ liệu là MVC và NVC.

Để xác định VNS thuộc lớp MVC hay NVC, kNN dựa vào k láng giềng gần nhất của

VNS trong hai lớp véc-tơ MVC và NVC. Nếu số lượng véc-tơ tần suất khám phá tuyến

trong k láng giềng gần nhất thuộc lớp MVC nhiều hơn NVC thì VNS thuộc lớp MVC;

ngược lại, VNS thuộc lớp NVC. Giá trị k trong thuật toán kNN ảnh hưởng rất lớn đến

hiệu quả phân lớp. Việc chọn giá trị k sao cho phù hợp là dựa vào kinh nghiệm, chưa

có cơ sở khẳng định giá trị k để thuật toán kNN đạt hiệu quả tốt nhất. Luận án đã

mô phỏng với nhiều giá trị k khác nhau và kích thước m của véc-tơ khác nhau. Mục

đích là tìm giá trị k và m phù hợp để hiệu quả phát hiện nút độc hại đạt cao nhất.

d (V1, V2) =

√√√√ m∑i=1

(V1[i]− V2[i])2 (3.4)

Khoảng cách giữa hai véc-tơ là yếu tố rất quan trọng để xác định véc-tơ VNS“gần” với lớp MVC hay NVC. Có nhiều phương pháp tính khoảng cách giữa hai véc-tơ

[81], luận án đã sử dụng khoảng cách Euclid như Công thức (3.4). Hàm sau cho phép

xác định véc-tơ V thuộc lớp MVC hoặc NVC sử dụng thuật toán phân lớp kNN. Độ

phức tạp thuật toán của bộ phân lớp phụ thuộc vào hàm sắp xếp được sử dụng. Luận

án sử dụng thuật toán nổi bọt (Bubble Sort) nên hàm phân lớp có độ phức tạp là

O(g + m) + O(g2) + O(k). Giá trị k là rất nhỏ hơn so với g, giá trị m rất nhỏ hơn so

với g. Vì vậy, bộ phân lớp kNN có độ phức tạp là O(g2), với g là số lượng véc-tơ của

mỗi lớp trong tập dữ liệu huấn luyện.

79

Page 95: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Bool kNNClassfication(Vector V, int k, int m){

float disMVC [MAX_VECTOR];

float disNVC [MAX_VECTOR];

for (vt = 0; vt <= MAX_VECTOR - 1; vt++){

disMVC[vt] ← Euclid (V, MVC[vt], m);

disNVC[vt] ← Euclid (V, NVC[vt], m);

}

Sort (disMVC, ASC); // Sắp xếp mảng tăng dần

Sort (disNVC, ASC); // Sắp xếp mảng tăng dần

k1← k2← 0;

while ((k1 + k2) < k){

if (disNVC[k1] < disMVC[k2]) k1++;

else k2++;

}

return (k1 > k2);

}

3.3.6 Giao thức an ninh FAPRP

Luận án đề xuất giao thức FAPRP bằng cách tích hợp FADA vào thuật toán

yêu cầu tuyến của AODV. Chi tiết thuật toán được trình bày trong Hình 3.10. Cấu

trúc gói tin RCP không thay đổi so với giao thức AODV. Tương tự giao thức AODV,

FAPRP là giao thức định tuyến đơn hướng. Để khám phá tuyến đến nút đích ND, nút

nguồn (NS) quảng bá gói RREQ đến tất cả láng giềng của nó, gói RREQ được xử lý

tại nhiều nút trung gian trước khi đến đích. Mỗi khi nhận gói RREQ từ nút liền trước

(Nj), nút trung gian (Ni) xử lý gói RREQ theo các bước sau:

– Đầu tiên là loại bỏ gói RREQ trùng lặp. Nút trung gian (Ni) có thể nhận nhiều

gói RREQ đến từ các nút láng giềng của nó, nhưng Ni chỉ xử lý gói RREQ đầu tiên

nhận được. Sử dụng hai thông số là broadcast_id và src_add (địa chỉ nguồn) trong

gói RREQ, Ni có thể xác định gói RREQ đã được xử lý hoặc chưa. Nếu gói RREQ đầu

tiên nhận được (tương ứng gói chưa được xử lý) thì Ni chấp nhận gói RREQ; ngược

lại, Ni hủy gói RREQ vì gói đã được xử lý rồi.

– Tiếp theo là thêm thông tin vào lịch sử khám phá tuyến của nút nguồn. Mỗi

nút trung gian lưu bộ đếm số lần khám phá tuyến của tất cả nút nguồn. Counters[src]

= x, có nghĩa là nút src đã thực hiện khám phá tuyến x lần. Ban đầu, nút trung gian

thiết lập Counters[i]=0, ∀i = 1..n., n là số lượng nút mạng. Mỗi khi nhận được gói

RREQ đến từ nút nguồn NS, nút Ni tăng giá trị Counters[NS] lên 1 và ghi nhận thời

điểm khám phá tuyến của NS (si) và thời điểm trả lời tuyến (ei), với i=Counters[NS].

Nếu lịch sử khám phá tuyến của nút nguồn đầy (Counters[NS]>m) thì loại bỏ phần tử

đầu tiên, tịnh tiến m-1 phần tử lên 1 vị trí, thông tin mới được thêm vào RDH vị trí

cuối cùng.

80

Page 96: NGHIŒNCÙUM¸TS¨GI…IPH†P …

– Cuối cùng, Ni kiểm tra an ninh nếu nó là láng giềng của nguồn. FAPRP là

giao thức định tuyến đa chặng, nút nguồn sẽ bị cô lập nếu tất cả các nút láng giềng

không định tuyến gói tin nhận được [67]. Vì vậy, FAPRP chỉ thực hiện kiểm tra tấn

công ngập lụt tại các nút láng giềng của nguồn tương tự giải pháp FAP. Nếu Ni là láng

giềng của nguồn NS thì Ni sử dụng FADA để kiểm tra an ninh như Bước 1; ngược lại,

Ni không kiểm tra an ninh và thực hiện các lệnh như AODV tại Bước 2.

Bước 1: Trong trường hợp Ni là láng giềng của nút nguồn, Ni sử dụng FADA

để kiểm tra an ninh như sau:

• Nút trung gian Ni sử dụng thông tin lịch sử khám phá tuyến để tính VNS của NS

gồm tất cả khe thời gian khám phá tuyến T Si , ∀i = 1..m.

• Nếu VNS chưa đủ thông tin (chưa đầy) thì Ni chấp nhận gói RREQ, bỏ qua kiểm

tra an ninh và đến Bước 2 để thực hiện các lệnh tương tự AODV.

• Ngược lại, Ni sử dụng bộ phân lớp kNN để nhận biết NS là độc hại hoặc bình

thường.

– Nếu VNS thuộc lớp NVC thì nút nguồn là bình thường, Ni chấp nhận gói

RREQ và đến Bước 2 để thực hiện các lệnh tương tự AODV.

– Ngược lại, nút nguồn là độc hại đã thực hiện hành vi tấn công ngập lụt, gói

RREQ bị hủy, thuật toán kết thúc.

Bước 2: Trong trường hợp Ni không là láng giềng của nguồn hoặc VNS chưa đủ

thông tin hoặc nút nguồn được xác định là bình thường, Ni thực hiện các lệnh tương

tự AODV, bao gồm:

• Nút trung gian Ni lưu tuyến ngược về nguồn và ghi nhận đã xử lý gói RREQ vào

bộ nhớ bằng cách ghi nhận giá trị broadcast_id và src_add.

• Nếu Ni là nút đích hoặc nó có tuyến hợp lệ đến đích thì Ni gửi gói RREP về

nguồn để trả lời tuyến thông qua nút Nj, thuật toán kết thúc; Ngược lại, Ni tăng

chi phí định tuyến lên 1 và tiếp tục quảng bá gói RREQ, thuật toán kết thúc.

Khi nhận được gói RREQ, nút đích cập nhật lại thời điểm trả lời tuyến (ei) vào

lịch sử khám phá tuyến của nút nguồn và gửi gói RREP về nguồn để trả lời tuyến.

Không có thông tin thứ tự trả lời tuyến trong gói RREP của giao thức AODV. Ni

giả định rằng gói RREP nhận được là gói trả lời tuyến cho lần khám phá tuyến cuối

cùng. Vì vậy, mỗi khi nhận gói RREP, nút trung gian cập nhật tại thời điểm trả lời

tuyến (ei), với i=Counters[NS]. Tiếp tục, Ni tăng giá trị của trường HC lên 1 trước

khi chuyển tiếp gói RREP về nguồn.

81

Page 97: NGHIŒNCÙUM¸TS¨GI…IPH†P …

FADA

Quảng bá gói RREQ để khám phá tuyến

Phân lớp VNs sử dụng kNN-Classifier; VNs đầy

t n

gu

ồn

(N

s)

t tr

un

g g

ian

/ đ

ích

(N

i)

no

Tính tất cả Ti của VNs sử dụng RDH của nút nguồn;

yes

Xuất hiện tấn công; Hủy gói RREQ;

Nút Ns bình thường; Chấp nhận RREQ;

Counters[NS]++; i = Counters[NS]; si = ei = CURRENT_TIME;

Thêm si và ei vào RDH của NS;

Tạo và gửi gói RREP về nguồn;

VNs MVC

Là láng giềng của nút nguồn

Ni nhận gói RREQ từ nút liền trước (Nj);

yes

Ni là nút đích

Có tuyến đến nút đích

yes

no

yes

Quảng bá RREQ;

no

Đã xử lý gói RREQ

yes

Hủy gói RREQ;

no

Thêm broadcast_id và src_add vào Cache; Thêm tuyến ngược về nguồn vào bảng định tuyến;

no

yes

no

(2)

(1)

(3)

(4) (5)

(6)

(8)

(7)

Kết thúc

Bắt đầu

Hình 3.10. Sơ đồ thuật toán quảng bá gói yêu cầu tuyến của giao thức FAPRP

82

Page 98: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Độ phức tạp: Điểm cải tiến của giao thức FAPRP so với thuật toán AODV

nằm ở các khối lệnh (1), (2), (3), (4), (5), (6), (7) và (8). Khối lệnh (2) cho phép thêm

một thông tin lần khám phá tuyến cuối cùng của nút nguồn. Nếu khối lệnh (1) cho kết

quả là False thì FAPRP hoạt động bình thường như giao thức gốc. Ngược lại, khối lệnh

(3) hoạt động để tính tất cả các khe thời gian khám phá tuyến của VNS . Khối lệnh (4)

hoạt động cho phép kiểm tra VNS đã đủ thông thông tin hoặc chưa. Trong trường hợp

VNS chưa đủ thông tin thì thuật toán thực hiện tiếp tục như giao thức gốc. Ngược lại,

khối lệnh (5) và (6) thực hiện để kiểm tra VNS thuộc MVC hoặc NVC. Nếu VNS thuộc

MVC thì nút nguồn là độc hại, khối lệnh (8) thực hiện để hủy gói RREQ, thuật toán

kết thúc; ngược lại, khối lệnh (7) thực hiện và thuật toán tiếp tục như giao thức gốc.

Khối lệnh (1), (4), (6), (7) và (8) có độ phức tạp là O(1). Khối lệnh (2) cho phép thêm

thông tin vào RDH có độ phức tạp O(m). Khối lệnh (3) có độ phức tạp là O(m), khối

lệnh (5) sử dụng thuật toán phân lớp kNN nên độ phức tạp là O(g2). Ngoài ra, FADA

cần khởi tạo bộ đếm số lần khám phá tuyến của tất cả các nút trong mạng trước khi

hoạt động với độ phức tạp là O(n).

Kết quả là giải pháp FADA có độ phức tạp là O(n) + O(g2) + O(m + m), g là

số lượng véc-tơ trong tập dữ liệu huấn luyện, m là độ lớn véc-tơ tần suất khám phá

tuyến và n là số lượng nút mạng. Vì hai giá trị m và g là hằng số nên giải pháp FADA

có độ phức tạp là O(n).

Giao thức FAPRP được phát triển từ giao thức AODV sử dụng giải pháp FADA.

Độ phức tạp thuật toán của giao thức FAPRP là O(n + n), gồm tổng độ phức tạp

thuật toán của giao thức AODV và độ phức tạp thuật toán của giải pháp FADA. Như

vậy, giao thức FAPRP có độ phức tạp thuật toán là O(n), n là số lượng nút mạng.

Ví dụ 3.3: Sử dụng tô-pô mạng có n nút, giả sử rằng NS đã thực hiện 7 lần

khám phá tuyến đến 3 nút đích gồm ND1, ND2 và ND3. Do môi trường di động và

nhiễu nên 3 gói RREQ bị thất lạc, Ni chỉ nhận được 4 gói RREQ tại các thời điểm

lần lượt là p1, p2, p3 và p4. Giá trị Counters[NS] tại Ni là 4, điều này có nghĩa là Ni ghi

nhận NS đã thực hiện khám tuyến 4 lần. Kết quả là lịch sử khám phá tuyến của nút

nguồn NS được ghi nhận tại Ni như Hình 3.11a. Tiếp theo, Ni nhận thêm 2 gói trả lời

tuyến RREP về nguồn tại hai thời điểm khác nhau là p5 và p6. Khi nhận RREP tại

thời điểm p5, Ni cập nhật lại giá trị e4 = p5, Ni tiếp tục cập nhật e4 = p6 khi nhận gói

RREP tại thời điểm p6. Hình 3.11b mô tả lịch sử khám phá tuyến của nút nguồn NS

sau khi nhận thêm hai gói RREP. Cuối cùng, Ni nhận được 1 gói RREQ từ NS tại thời

điểm p7 và 1 gói RREP tại thời điểm p8. Khi nhận gói RREQ, Ni tăng Counters[NS]

lên 1 (Counters[NS]=5) và gán s5 = e5 = p7, tiếp tục cập nhật e5 = p8 khi nhận gói

RREP. Hình 3.11c mô tả lịch sử khám phá tuyến của nút nguồn NS khi nhận thêm 1

gói RREQ và 1 gói RREP. Như vậy, dựa vào lịch sử khám phá tuyến của nút nguồn,

Ni có thể tính tất cả Ti trong VNS và sử dụng bộ phân lớp kNN để xác định nút nguồn

là bình thường hoặc độc hại. Ngoài ra, tất cả Ti đều mang giá trị dương và không phụ

thuộc vào thứ tự phát gói RREQ và số lượng nút đích.

83

Page 99: NGHIŒNCÙUM¸TS¨GI…IPH†P …

a) Ni nhận 4 gói RREQ

b) Ni nhận thêm 2 gói RREP

c) Ni tiếp tục nhận 1 gói RREQ và 1 gói RREP

(s1,e1) (s2,e2)

Thời gian

t1=0 t2=0

p1 p2 p3 p4

(s3,e3) (s4,e4)

t3=0 t4=0

T1>0 T2>0 T3>0

RREQ RREQ RREQ RREQ

(s1,e1) (s2,e2)

Thời gian

t1=0 t2=0

p1 p2 p3 p4 p5 p6

(s3,e3) (s4 e4)

t3=0 t4>0

T1>0 T2>0 T3>0

RREQ RREQ RREQ RREQ RREP RREP

(s1,e1) (s2,e2)

Thời gian

t1=0 t2=0

p1 p2 p3 p4 p5 p6 p7 p8

(s3,e3) (s4 e4)

t3=0 t4>0

T1>0 T2>0 T3>0 T4>0

(s5,e5)

t5>0

RREQ RREQ RREQ RREQ RREP RREP RREQ RREP

Hình 3.11. Mô tả lịch sử khám phá tuyến của nút nguồn được nghi nhận tại Ni

3.3.7 Đánh giá hiệu năng của giao thức FAPRP

Trong chương 1, luận án đã đánh giá tác hại của tấn công ngập lụt đến hiệu

năng giao thức AODV. Giao thức FAPRP và BAODV được cải tiến từ giao thức AODV

bằng cách sử dụng cơ chế an ninh FADA và BI. Vì vậy, để thấy được hiệu quả an ninh,

luận án sử dụng cùng thông số như đã đánh giá trên giao thức AODV tại mục 1.5.2.

Nút độc hại đứng yên tại vị trí trung tâm như Hình 1.20.

97

97.5

98

98.5

99

99.5

100

10 15 20 25 30 35 40 60

Tỷ

lệ p

hát h

iện

nút đ

ộc h

ại (

%)

Kích thước của véc-tơ (m)

k=10 k=15 k=20 k=25 k=30 k=35 k=40 k=45 k=50

Hình 3.12. Hiệu quả phát hiện nút độc hại của giải pháp FADA

84

Page 100: NGHIŒNCÙUM¸TS¨GI…IPH†P …

a) Xác định tham số k và m: Hiệu quả an ninh của giải pháp FADA phụ thuộc

vào hệ số k và độ lớn véc-tơ (m). Vì vậy, luận án mô phỏng với m lần lượt là 10, 15,

20, 25, 30, 35, 40 và 60; giá trị k lần lượt là 10, 15, 20, 25, 30, 35, 40, 45 và 50; vận tốc

di động lần lượt là 10m/s, 20m/s và 30m/s. Mục đích là xác định giá trị k và m phù

hợp để đạt hiệu quả phát hiện nút độc hại cao nhất. Mỗi tô-pô mạng có hai nút độc

hại được bố trí như Hình 1.20(b) và thực hiện hành vi tấn công với tần suất 20pkt/s

ngay khi bắt đầu mô phỏng. Kết quả thống kê sau khi thực hiện 216 lần mô phỏng với

các tham số đầu vào khác nhau như Hình 3.12. Kết quả cho thấy FADA phát hiện nút

độc hại thành công trên 99% khi m lớn hơn (hoặc bằng) 25. Tỷ lệ phát hiện nút độc

hại thành công cao nhất của FADA là 99.77% khi k = 25 và m = 60, tương ứng với tỷ

lệ phát hiện sai là 0.23%.

b) So sánh hiệu năng của FAPRP và BAODV: Tiếp theo, luận án thiết lập giá

trị k = 25 và m = 60 để đánh giá hiệu quả an ninh và hiệu năng của giao thức FAPRP

và BAODV trong môi trường bị tấn công ngập lụt, nút độc hại tấn công với tần suất

10pkt/s và 20pkt/s được bố trí như Hình 1.20, vận tốc di động lần lượt là 10m/s,

20m/s và 30m/s.

90

92

94

96

98

100

v1-10 v1-20 v1-30

Tỷ

lệ p

hát h

iện

thàn

h cô

ng (

%)

Vận tốc di động

BI-1MN-10pkt/sBI-1MN-20pkt/s

BI-2MN-10pkt/sBI-2MN-20pkt/s

FADA-1MN-10pkt/sFADA-1MN-20pkt/s

FADA-2MN-10pkt/sFADA-2MN-20pkt/s

Hình 3.13. Tỷ lệ phát hiện nút độc hại thành công của FADA và BI

– Tỷ lệ phát hiện nút độc hại: Luận án đã thực hiện 120 lần mô phỏng với các

tham số đầu vào khác nhau. Sau 500s mô phỏng, kết quả tại Hình 3.13 cho thấy giải

pháp FADA có hiệu quả phát hiện nút độc hại ổn định và lệ thuộc rất ít vào vận tốc

di động và số lượng nút độc hại. Với cùng kịch bản thì tỷ lệ phát hiện nút độc hại

thành công của giải pháp BI giảm dần theo vận tốc di động và số lượng nút độc hại.

Ngoài ra, khi nút độc hại thể hiện hành vi tấn công với tần suất thấp thì giải pháp BI

bộc lộ nhược điểm với tỷ lệ sai lầm cao. Cụ thể là tỷ lệ phát hiện nút độc hại thành

công của giải pháp BI cao nhất là 98.36% và thấp nhất là 93.22%, độ lệch chuẩn tối

đa là 2.59%. Tỷ lệ phát hiện nút độc hại thành công của giải pháp FADA cao nhất là

99.94% và thấp nhất là 99.83% (độ lệch chuẩn là 0.05%), tương ứng với tỷ lệ phát hiện

sai thấp nhất là 0.06% và cao nhất là 0.17%. Như vậy, giải pháp FADA có tỷ lệ phát

85

Page 101: NGHIŒNCÙUM¸TS¨GI…IPH†P …

hiện nút độc hại thành công cao và ổn định hơn giải pháp BI. Nguyên nhân là do giải

pháp FADA dựa vào lịch sử khám phá tuyến của mỗi nút, ngược lại giải pháp BI dựa

trên giá trị ngưỡng nên tỷ lệ sai lầm cao dẫn đến giảm hiệu quả định tuyến.

50

60

70

80

90

100

v1-10 v1-20 v1-30

Tỷ

lệ gửi

gói

thàn

h cô

ng (

%)

Vận tốc di động (m/s)

AODV-Normal FAPRP-10pkt/s FAPRP-20pkt/s BAODV-10pkt/s BAODV-20pkt/s

(a) Tỷ lệ gửi gói tin thành công

0

1

2

3

4

5

6

v1-10 v1-20 v1-30

Phụ

tải địn

h tu

yến

(pkt

)

Vận tốc di động (m/s)

AODV-Normal BAODV-10pkt/s BAODV-20pkt/s FAPRP-10pkt/s FAPRP-20pkt/s

(b) Phụ tải định tuyến

0

0.2

0.4

0.6

0.8

1

1.2

1.4

v1-10 v1-20 v1-30

Thờ

i gia

n trễ

trun

g bì

nh (

sec)

Vận tốc di động (m/s)

AODV-Normal FAPRP-10pkt/s FAPRP-20pkt/s BAODV-10pkt/s BAODV-20pkt/s

(c) Thời gian trễ trung bình

Hình 3.14. Hiệu năng của BAODV và FAPRP khi bị tấn công ngập lụt

86

Page 102: NGHIŒNCÙUM¸TS¨GI…IPH†P …

– Tỷ lệ gửi gói thành công: Luận án đã thực hiện 90 lần mô phỏng với các tham

số đầu vào khác nhau. Kết quả trong biểu đồ Hình 3.14(a) cho thấy giao thức FAPRP

có tỷ lệ gửi gói tin thành công cao hơn BAODV. Tỷ lệ gửi gói tin thành công của AODV

đạt 95.80%, 93.92% và 93.52% trong môi trường mạng di động tối đa 10m/s, 20m/s và

30m/s. Khi bị hai nút độc hại tấn công với tần suất là 10pkt/s và 20pkt/s, giao thức

BAODV có tỷ lệ gửi gói thành công tối đa là 80.79% (độ lệch chuẩn là 4.04%), thấp

hơn rất nhiều so với AODV trong môi trường bình thường. Giao thức FAPRP có tỷ lệ

gửi gói thành công cao và ổn định hơn rất nhiều so với BAODV, nguyên nhân là do

hiệu quả phát hiện nút độc hại của giải pháp FADA tốt hơn giải pháp BI. Kết thúc

500s mô phỏng, giao thức FAPRP có tỷ lệ gửi gói thành công tối đa là 95.27% (độ lệch

chuẩn là 1.73%). Ngoài ra, trong môi trường mạng bình thường thì giao thức FAPRP

có tỷ lệ gửi thành công giảm nhẹ so với AODV, điều này cho thấy rằng cơ chế an ninh

FADA ảnh hưởng rất ít đến hiệu năng của giao thức gốc.

– Phụ tải định tuyến: Hình 3.14(b) cho thấy tấn công ngập lụt đã làm tăng rất

lớn phụ tải định tuyến của hai giao thức BAODV và FAPRP so với giao thức gốc.

Trong kịch bản di động với vận tốc tối đa là 30m/s, phụ tải định tuyến của BAODV là

5.61pkt và FAPRP là 6.22pkt khi bị hai nút độc hại tấn công với tần suất là 20pkt/s,

độ lệch chuẩn lần lượt là 0.55pkt và 0.72pkt. Phụ tải định tuyến của BAODV thấp

hơn FAPRP do giải pháp BI có tỷ lệ phát hiện nút độc hại sai lầm cao hơn giải pháp

FADA. Vì vậy, một lượng lớn gói RREQ bị hủy đã làm giảm phụ tải định tuyến của

giao thức BAODV. Đây cũng là nguyên nhân dẫn đến giao thức BAODV có tỷ lệ gửi

gói tin thành công của thấp hơn giao thức FAPRP.

– Thời gian trễ trung bình: Hình 3.14(c) cho thấy tấn công ngập lụt đã làm tăng

thời gian trễ trung bình của giao thức BAODV và FAPRP so với giao thức gốc. Trong

môi trường bị tấn công mạng, giao thức FAPRP có thời gian trễ trung bình thấp hơn

so với giao thức BAODV ở tất cả kịch bản mô phỏng. Nguyên nhân là do hiệu quả

phát hiện nút độc hại của FADA tốt đã làm tăng hiệu quả khám phá tuyến và giảm

thời gian xử lý tại các nút trung gian. Ngược lại, giải pháp BI thường xuyên bị sai

lầm nên gói tin bị hủy, buộc nút khám phá tuyến lại đã làm tăng thời gian xử lý tại

mỗi nút, dẫn đến tăng thời gian trễ trung bình. Kết thúc 500s mô phỏng, thời gian

trễ trung bình cao nhất của BAODV là 0.959s, độ lệch chuẩn là 0.282s. Thời gian trễ

trung bình cao nhất của FAPRP là 0.244s, độ lệch chuẩn là 0.045s. Như vậy, giao thức

FAPRP hoặc động tốt và ổn định hơn giao thức BAODV do độ lệch chuẩn thấp hơn

rất nhiều.

3.4 So sánh các giải pháp an ninh chống tấn công ngập lụt

Luận án tổng hợp một số đặc điểm của các giải pháp đã công bố trong thời gian

qua trong Bảng 3.1. Tất cả các giải pháp đã công bố sử dụng cơ chế kiểm tra an ninh

dựa trên ngưỡng nên hiệu quả an ninh còn hạn chế. Hai giải pháp FAP và EFS sử

dụng ngưỡng cố định, BI sử dụng ngưỡng động và được cập nhật theo điều kiện mạng.

Vì vậy, giải pháp BI hiệu quả hơn hai giải pháp FAP và EFS. Giải pháp FADA sử

87

Page 103: NGHIŒNCÙUM¸TS¨GI…IPH†P …

dụng hướng tiếp cận khác biệt so với các nghiên cứu trước đó. FADA dựa trên lịch sử

khám phá tuyến của mỗi nút được biểu diễn bằng RDFV để xác định độc hại hoặc

bình thường. Vì vậy, FADA cải thiện được hạn chế của các giải pháp dựa trên ngưỡng.

Tất cả giải pháp đều xác định được địa chỉ nút độc hại. Tương tự giải pháp FAP, nút

tham gia kiểm tra của giải pháp FADA là láng giềng của nút độc hại nhằm giảm quá

trình xử lý không cần thiết tại các nút.

Bảng 3.1. So sánh đặc điểm các giải pháp phát hiện tấn công ngập lụt

Đặc điểmGiải pháp

FAP EFS BI FADA1. Phát hiện dựa vào Ngưỡng Hai ngưỡng Ngưỡng RDFV2. Giá trị ngưỡng Cố định Cố định Động *3. Xác định nút độc hại Yes Yes Yes Yes4. Nút kiểm tra Láng giềng Tất cả Tất cả Láng giềng5. Mô phỏng kết quả NS2 NS2 NS2 NS26. Độ phức tạp thuật toán O(n) O(n) O(n) O(n)

* Không sử dụng ngưỡng

3.5 Tiểu kết Chương 3

Chương này của luận án đã phân tích chi tiết và chỉ ra một số tồn tại của các

giải pháp phát hiện và ngăn chặn tấn công ngập lụt, tiêu biểu như FAP, EFS và BI.

Trên cơ sở ưu điểm và tồn tại của các giải pháp đã công bố, luận án đề xuất giải pháp

an ninh tên là FADA [CT2] với những ưu điểm sau:

(1) Giải pháp FADA dựa trên lịch sử khám phá tuyến của nút để nhận biết một nút

là độc hại hoặc bình thường. Dữ liệu huấn luyện cài đặt vào mỗi nút trước khi

vận hành nên nút có thể phát hiện tấn công mạng ngay khi bắt đầu hoạt động.

Kết quả mô phỏng cho thấy FADA có tỷ lệ phát hiện nút độc hại thành công

trên 99% khi m lớn hơn (hoặc bằng) 25, tốt hơn giải pháp BI.

(2) Hiệu năng của giao thức FAPRP được cải thiện rất nhiều trong môi trường bị tấn

công ngập lụt. Đặc biệt, tỷ lệ gửi gói thành công của giao thức cải tiến FAPRP

thấp hơn một ít so với giao thức AODV trong môi trường mạng bình thường.

Điều này cho thấy giải pháp an ninh FADA ít ảnh hưởng đến hiệu năng của giao

thức gốc.

Tuy nhiên, hạn chế của giao thức cải tiến FAPRP là phụ tải định tuyến cao hơn

so với giao thức AODV. Ngoài ra, do cơ chế an ninh nên thời gian trễ trung bình của

FAPRP bị ảnh hưởng và tăng nhẹ giao thức gốc.

88

Page 104: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Chương 4

GIẢI PHÁP BẢO MẬT ĐỊNH TUYẾN

TRÊN MẠNG MANET

Chương này phân tích những hạn chế của hai giải pháp bảo mật định tuyến

dựa trên chữ ký số là SAODV và ARAN. Để khắc phục tồn tại của hai giải pháp này,

luận án đề xuất cơ chế xác thực tin cậy (TAM [CT4]) và cơ chế quản lý chứng thư số

(DCMM [CT3]) theo chuẩn X.509. Đồng thời, luận án tích hợp hai giải pháp đề xuất

vào thuật toán khám phá tuyến của AODV để tạo giao thức an ninh TAMAN.

4.1 Giới thiệu

Các giải pháp phát hiện và ngăn chặn tấn công mạng chỉ hiệu quả riêng lẻ trước

mỗi hình thức tấn công và có thể bị sai lầm nên hiệu quả an ninh hạn chế. Trong thời

gian qua, đã có một số nghiên cứu công bố theo hướng bảo mật định tuyến. Ý tưởng

là dựa vào mật khẩu sử dụng một lần (OTP [20]) hoặc chữ ký số để kiểm tra an ninh,

tiêu biểu là: H(AODV) [48], OTP_AODV [21], SAODV [91] và ARAN [74]. Ưu điểm

của các giải pháp theo hướng tiếp cận này là phát hiện hầu hết các hình thức tấn công

hiện tại. Tuy nhiên, hạn chế của H(AODV) và OTP_AODV là không hỗ trợ kiểm tra

toàn vẹn gói tin nên không thể phát hiện gói tin bị thay đổi. SAODV không hỗ trợ cơ

chế quản lý khóa nên nút độc hại có thể tấn công bằng cách sử dụng khóa giả mạo.

ARAN cải thiện được hạn chế này, nhưng ARAN không hỗ trợ cơ chế xác định chi phí

định tuyến. Đặc biệt, SAODV và ARAN không thể phát hiện và ngăn chặn tấn công

lỗ sâu ở chế độ ẩn [15, 45]. Chương này của luận án sẽ giải quyết hạn chế của SAODV

và ARAN bằng cơ chế xác thực tin cậy (TAM) dựa trên chứng thư số (DC) theo chuẩn

X509 [58] và cơ chế DCMM để quản lý, cung cấp và thu hồi DC cho nút thành viên.

4.2 Phân tích ưu và nhược điểm của một số giải pháp bảo mật

định tuyến

Một số giải pháp bảo mật định tuyến đã công bố trong thời gian qua được thống

kê trong Hình 4.1. Phần này phân tích ưu và nhược điểm của các giải pháp an ninh

trên nền tảng chữ ký số để làm cơ sở cho những đề xuất của luận án.

89

Page 105: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Bảo mật định tuyến

SAODV [91] ARAN [74] H(AODV) [48] OTP_AODV [21]

Chữ ký số OTP

TAM [CT3], DCMM [CT4]

Hình 4.1. Một số giao thức định tuyến an ninh đã công bố

4.2.1 Giao thức SAODV

Giao thức SAODV được cải tiến từ AODV nhằm mục đích an ninh. 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 (RREQ hoặc RREP) nếu chữ ký số của

nguồn là 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 4.2, chức năng của các trường được

mô tả cụ thể trong [91].

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Type Length Hash Function Max HC| | |

RA| Reserved |Prefix Sz

Top Hash

Signature

Signature for RREP

Hash

(a) RREQ

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Type Length Hash Function Max HC| | |

Top Hash

Signature

Old Lifetime

Signature of the new Lifetime

Hash

(b) RREP

Hình 4.2. Cấu trúc gói tin điều khiển tuyến của giao thức SAODV [91]

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 (NS)

băm thông tin 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 (4.1), đây là chữ ký số của nguồn. Một số trường của gói RREQ có

thông tin bị thay đổi mỗi khi chuyển tiếp qua nút trung gian, vì vậy nút nguồn chỉ băm

những trường không thay đổi trước khi ký. Chữ ký số được lưu vào trường signature

trước khi quảng bá gói RREQ để yêu cầu tuyến.

RREQ.Signature = En(H(RREQ.Fields), kNS−) (4.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 (4.2). Kết quả giải

90

Page 106: NGHIŒNCÙUM¸TS¨GI…IPH†P …

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 (như lúc nút nguồn ký). 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.Signature, kNS+) (4.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 (4.3). Kết quả sau khi ký được lưu vào trường Signature của gói RREP.

RREP.Signature = En(H(RREP.F ields), kND−) (4.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.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 trung gian chấp nhận gói RREP và tiếp

tục chuyển tiếp gói RREP cho đến khi về đến nguồn.

value_de = De(RREP.Signature, kND+) (4.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

tấn công bằng cách giảm giá trị của trường HC. Vì vậy, SAODV sử dụng giải pháp

chuỗi băm để bảo vệ trường HC. Một nút nguồn (hoặc đích) khởi tạo gói khám phá

tuyến RREQ (hoặc gói RREP), để bảo vệ trường HC, nút thực hiện 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. Thiết lập vào trường Hash_Function tên hàm băm đã sử dụng.

• 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 (4.5), kết quả băm được lưu vào trường Top_Hash.

Top_Hash = HMAX_HOP_COUNT (seed) (4.5)

Khi một 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 chi phí định tuyến lưu trong 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

(MAX_HOP_COUNT - HC) lần giá trị của biến ngẫu nhiên được lưu trong

trường Hash như Công thức (4.6).

value_hash = HMAX_HOP_COUNT−HC(Hash) (4.6)

91

Page 107: NGHIŒNCÙUM¸TS¨GI…IPH†P …

• Tiếp theo, nút kiểm tra nếu giá trị băm value_hash 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 do nút độc hạ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 (4.7).

Hash = H(Hash) (4.7)

Ví dụ 4.1: Hình 4.3 là một ví dụ mô tả quá trình xác thực gói RREQ của giao

thức SAODV. Nút nguồn NS khám phá tuyến bằng cách ký lên gói RREQ trước khi

quảng bá. Nút trung gian N1 xác thực chữ ký của NS và kiểm ra HC khi nhận gói

RREQ. Nếu cả 2 điều kiện hợp lệ, N1 tiếp tục quảng bá gói RREQ. Tương tự, N2 xác

thực chữ ký của NS và kiểm ra HC khi nhận gói RREQ. Nếu cả 2 điều kiện hợp lệ, N2

tiếp tục quảng bá gói RREQ. Khi nhận gói RREQ, nút đích ND xác thực chữ ký của

NS và kiểm ra HC. Nếu cả 2 điều kiện hợp lệ, ND chấp nhận gói RREQ.

NS ND N1 N2

Ký và gửi RREQ Xác thực chữ ký NS

và kiểm tra HC;

OK: gửi RREQ

Else, huỷ RREQ

Xác thực chữ ký NS

và kiểm tra HC;

OK: gửi RREQ

Else, huỷ RREQ

Xác thực chữ ký NS và

kiểm tra HC;

OK: chấp nhận RREQ

Else, huỷ RREQ

RREQ RREQ

RREQ

Hình 4.3. Mô tả quá trình ký và xác thực của giao thức SAODV

Cơ chế khám phá tuyến của SAODV cho 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. Ý 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 4.4. 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.

92

Page 108: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Bảng định tuyến

Node NH HC SN Chữ ký KhóaN5 N5 1 15 SigN5 kN5+

N1 N2 3 13 SigN1 kN1+

N7 N8 5 14 SigN7 kN7+

N6 N5 4 18 SigN6 kN6+

Hình 4.4. Mô tả cấu trúc bảng định tuyến của giao thức SAODV

Nhận xét: Giao thức SAODV có thể phát hiện và ngăn chặn 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:

• Cơ chế an ninh của SAODV chỉ bảo vệ các trường không thay đổi của gói điều

khiển tuyến. Nút độc hại có thể cập nhật thông tin của các trường không được

bảo vệ để tấn công mạng.

• SAODV chỉ hỗ trợ cơ chế xác thực đầu-cuối nên nút trung gian không thể xác

thực nút liền trước (xem thêm trong [89], trang 478). Vì vậy, SAODV không thể

phát hiện tấn công lỗ sâu ở chế độ ẩn. Do nút độc hại có thể chuyển tiếp gói tin

đến chặng kế tiếp và không làm tăng chi phí định tuyến. [57]

• SAODV không hỗ trợ cơ chế quản lý khóa công khai. Một nút độc hại có thể tấn

công bằng việc sử dụng bộ khóa giả mạo. Để thực hiện tấn công ngập lụt trên

giao thức này, nút độc hại sử dụng bộ khóa giả mạo để ký trên giá trị băm của

gói RREQ, khởi tạo chuỗi băm và phát liên tục vào mạng.

4.2.2 Giao thức ARAN

Giao thức ARAN [74] 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

thư số của nút; (2) ARAN sử dụng phương pháp xác thực tại mỗi chặng, điều này cho

phép nút xác thực được nút liền trước khi nhận gói điều khiển tuyến. Hai gói tin RDP

và REP được ký tại nút nguồn và đích trước khi gửi đi. Thông tin của gói không thay

đổi khi chuyển tiếp qua các nút trung gian. 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.

Giao thức ARAN giả định rằng mỗi nút được cấp một chứng thư (Cert) trước

khi tham gia vào mạng. Chứng thư số bao gồm địa chỉ (IPA), khóa công khai (KA+),

thời gian chứng thư số được khởi tạo (t), thời gian chứng thư số hết hiệu lực (e) như

mô tả trong (4.8).

T → A : certA = [IPA, KA+, t, e]KT− (4.8)

93

Page 109: NGHIŒNCÙUM¸TS¨GI…IPH†P …

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 phát quảng bá gói khám phá tuyến (RDP) như mô

tả trong (4.9). Gồm địa chỉ nút đích (IPX), chứng thư 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ị IPXvà NA được nút sử dụng để loại bỏ các gói RDP đã xử lý rồi.

A→ brdcast : [RDP, IPX , certA, NA, t]KA− (4.9)

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 thư số certA để xác thực chữ ký và hiệu lực của chứng thư số. 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 thư số

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 liền trước. 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 (4.10).

B → brdcast : [[RDP, IPX , certA, NA, t]KA−]KB−, certB (4.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 liền

trước (KB+) trong chứng thư 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 thư số của B thành chứng thư số 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 (4.11).

C → brdcast : [[RDP, IPX , certA, NA, t]KA−]KC−, certC (4.11)

Sau khi được nút 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 nhận được. Mỗi nút xử lý gói RDP theo các bước tương

tự tại C gồm: xác thực chữ ký của nút liền trước, thay chứng thư số của nút liền trước

thành chứng thư số 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 REP để trả lời tuyến 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 (4.12). Gồm địa chỉ nút nguồn (IPA), chứng thư 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− (4.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 thư số (certD) vào gói REP trước

94

Page 110: NGHIŒNCÙUM¸TS¨GI…IPH†P …

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 (4.13).

D → C : [[REP, IPA, certX , NA, t]KX−]KD−, certD (4.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 thư số của nút liền trước thành chứng thư số 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 (4.14).

C → B : [[REP, IPA, certX , NA, t]KX−]KC−, certC (4.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:

xác thực chữ ký của nút liền trước, thay chứng thư số của nút liền trước thành chứng

thư số của nút hiện tại và ký nội dung của gói REP trước khi tiếp tục chuyển tiếp gói

REP về nguồn thông qua NH của entry trong bảng định tuyến. 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 liền trước và nút đích X trước khi thiết

lập tuyến đến đích.

NS ND N1 N2

Ký và gửi RDP

kèm theo CertNs

Xác thực chữ ký NS

OK: Ký và gửi RDP

kèm theo CertN1

Else, huỷ RDP

RDP RDP

RDP

Xác thực chữ ký N1

OK: Ký và gửi RDP

kèm theo CertN2

Else, huỷ RDP

Xác thực chữ ký N2 và

NS trong gói RDP

OK: chấp nhận RDP

Else, huỷ RDP

Hình 4.5. Mô tả quá trình ký và xác thực của giao thức ARAN

Ví dụ 4.2: Hình 4.5 là một ví dụ mô tả cơ chế xác thực của giao thức ARAN.

Nút nguồn NS khám phá tuyến bằng cách ký lên gói RDP trước khi quảng bá kèm

CertNS . Nút trung gian N1 xác thực chữ ký của NS. Nếu chữ ký hợp lệ, N1 tiếp tục

ký lên gói RDP trước tiếp tục quảng bá kèm với CertN1 . Tương tự, N2 xác thực chữ

ký của N1. Nếu chữ ký hợp lệ, N2 loại bỏ CertN1 và thay bằng CertN2 trước khi tiếp

tục quảng bá gói RDP. Khi nhận gói RDP, nút đích ND xác thực chữ ký của N2 và

của NS. Nếu cả 2 điều kiện hợp lệ, ND chấp nhận gói RDP.

Nhận xét: ARAN giả định rằng mỗi nút được cấp chứng thư số và sử dụng

phương pháp xác thực tại mỗi chặng. Nhờ vậy mà nút trung gian có thể xác thực nút

95

Page 111: NGHIŒNCÙUM¸TS¨GI…IPH†P …

liền trước 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:

• Nút nguồn không xác định được chi phí định tuyến đến đích do không hỗ trợ

trường HC trong gói tin điều khiển. Điều này ảnh hưởng đến hiệu quả định tuyến

do tuyến khám phá có thể không phải là ngắn nhất.

• Không cho phép nút trung gian trả lời tuyến về nguồn cho dù nó có tuyến hợp

lệ đến đích. Nguyên nhân là nút trung gian không có khóa bí mật của nút đích

để ký gói REP trước khi gửi về nguồn. Đây là nguyên nhân làm tăng hao phí

truyền thông do nút trung gian phải luôn quảng bá gói điều khiển tuyến.

• Tương tự SAODV, ARAN không thể phát hiện và ngăn chặn 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 chặng kế tiếp mà không thay đổi thông tin. [15, 57, 92]

4.2.3 Tác hại của tấn công lỗ sâu chế độ ẩn

Cơ chế xác thực chữ ký của giao thức SAODV và ARAN chỉ phát huy hiệu quả

nếu gói tin bị thay đổi thông tin khi chuyển tiếp qua nút độc hại. Trong tấn công lỗ

sâu ở chế độ ẩn, nút độc hại chỉ đơn giản là chuyển tiếp gói tin nhận được đến đích mà

không thay đổi thông tin. Vì vậy, cả hai giao thức SAODV và ARAN thất bại trước

hình thức tấn công này.

NS ND N1 N2

Ký và gửi P kèm

theo CertNs

P P

Xác thực chữ ký NS

OK: Ký và gửi P

kèm theo CertN1

Else, huỷ P

M1 M2

Xác thực chữ ký N1

OK: Ký và gửi P

kèm theo CertN2

Else, huỷ P

Xác thực chữ ký N2

và NS

Chấp nhận P

Hai nút M1 và M2 chuyển tiếp gói P

(không thay đổi nội dung của P)

Hình 4.6. Mô tả tấn công lỗ sâu chế độ ẩn gây hại đến SAODV và ARAN

Ví dụ 4.3: Hình 4.6 là một ví dụ mô tả tấn công lỗ sâu gây hại đến hai giao

thức SAODV và ARAN. Nút nguồn NS khám phá tuyến bằng cách ký lên gói P trước

96

Page 112: NGHIŒNCÙUM¸TS¨GI…IPH†P …

khi quảng bá kèm CertNS . Nút trung gian N1 xác thực chữ ký của NS. Nếu chữ ký

hợp lệ, N1 tiếp tục ký lên gói P trước tiếp tục quảng bá kèm với CertN1 . Khi nhận

được gói P, cả hai nút độc hại M1 và M2 chuyển tiếp gói P đến đích mà không thay

đổi thông tin. Khi nhận gói P, N2 xác thực chữ ký của N1. Nếu chữ ký hợp lệ, N2 loại

bỏ CertN1 và thay bằng CertN2 trước khi tiếp tục quảng bá gói P đến đích. Khi nhận

gói P, nút đích ND xác thực chữ ký của N2 và của NS. Nếu cả 2 điều kiện hợp lệ, ND

chấp nhận gói RDP. Vì N1 là nút bình thường và có chứng thư hợp lệ nên N2 chấp

nhận gói P. Kết quả là nút đích ND chấp nhận gói P mà không hề biết tuyến có chứa

đường hầm.

4.3 Cơ chế xác thực tin cậy

Giao thức MLAMAN [CT1] có thể phát hiện hiệu quả hình thức tấn công lỗ

sâu ở hai chế độ HM và PM. Tuy nhiên, điểm tồn tại của MLAMAN là cấu trúc của

chứng thư thành viên thiếu thông tin cần thiết khi sử dụng trong thực tế, tiêu biểu

như: Thời gian hiệu lực của chứng thư, nút cấp chứng thư. Để cải thiện điểm yếu này

và phát huy hơn nữa hiệu quả an ninh của MLAMAN trước một số hình thức tấn công

khác, luận án đề xuất cơ chế xác thực tin cậy (TAM [CT4]) và cơ chế quản lý chứng

thư số (DCMM [CT3]). Đồng thời, luận án cải tiến giao thức AODV thành giao thức

an ninh TAMAN sử dụng cơ chế TAM và DCMM. Điểm cải tiến của TAMAN so với

MLAMAN là:

(1) Mỗi nút được cấp một chứng thư số theo chuẩn X.509;

(2) Cơ chế TAM có thể phát hiện và ngăn chặn hầu hết các hình thức tấn công mạng

hiện tại (như liệt kê trong Bảng 1.4);

(3) Cơ chế DCMM cho phép lưu trữ, cấp phát và thu hồi chứng thư số an toàn trong

môi trường mạng di động và phi cấu trúc.

Tương tự MLAMAN, TAMAN giả định rằng: (1) Mỗi nút (Nδ) được thiết lập

một bộ khóa bí mật và công khai (kNδ -, kNδ+); (2) Tất cả các nút đều biết khóa công

khai của NCA. Giải pháp TAM không hỗ trợ chức năng cấp phát khóa bí mật và công

khai một cách tự động và an toàn cho tất cả các nút thành viên, vấn đề này sẽ được

trình bày trong các nghiên cứu tiếp theo.

4.3.1 Ba bước xác thực an ninh của TAM

Cơ chế TAM được phát triển dựa trên ý tưởng của MLA. Ba bước xác thực an

ninh trong cơ chế TAM được mô tả trong Hình 4.7. TAM cho phép một nút xác thực

nút liền trước mỗi khi nhận được gói yêu cầu tuyến và gói trả lời tuyến thông qua 3

bước gồm: (1) Xác thực chứng thư số; (2) Kiểm tra láng giềng thật sự và (3) Xác thực

toàn vẹn gói tin.

97

Page 113: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Nútliền

trước(N

j)

Núttrunggian(N

i)

Bắt đầu

Gửi/ chuyển tiếpGói RREQ hoặc RREP

DC hợp lệyes

no

Kết thúc

Phát hiện tấn công

Tiêu biểu như:- BH, SH, GH, FD

- Lỗ sâu ở chế độ tham gia

Láng giềngthật sự

Toàn vẹngói tin

Phát hiện tấn côngLỗ sâu ở chế độ ẩn

Hủy gói tinReturn False

yes

no

Phát hiện tấn công

Sử dụng khóa giả mạo

no

yes

Chấp nhận gói

RREQ/ RREP

Return True

Hình 4.7. Mô hình xác thực tin cậy

a) Xác thực chứng thư số: Mỗi nút trong mạng MANET được cấp một chứng

thư số (hay còn gọi là chứng minh thư điện tử) dựa trên chuẩn X.509 như Hình 4.8,

gồm thông tin định danh và khóa công khai của nút sở hữu. Chữ ký trong chứng thư

thuộc về nhà cung cấp chứng thư số (CA). Chữ ký trong chứng thư số đảm bảo mối

quan hệ của người ký về mối liên hệ giữa chìa khóa công khai và thực thể được CA

chứng nhận.

1. Version2. Serial Number

3. Signature Algorithm4. Issuer Name

5. Validity Period6. Subject Name7. Public Key

8. Certificate Signature (CS)

Hình 4.8. Cấu trúc chứng thư số theo chuẩn X.509 [58]

Trong các nghiên cứu gần đây [19, 61], CA tham gia vào quá trình xác thực DC

từ nút thành viên. Dẫn đến một số nhược điểm là: (1) Hao phí truyền thông tăng cao

do phải sử dụng gói tin điều khiển mới để gửi DC đến CA và nhận phản hồi từ CA;

(2) Do tính di động của mạng MANET, CA có thể bị cô lập với nút thành viên nên

quá trình xác thực DC có thể bị gián đoạn. Để cải thiện hạn chế này, cơ chế TAM cho

phép xác thức DC mà không cần CA. Khi nhận gói điều khiển tuyến SeRQ hoặc SeRP,

nút thành viên xác thực DC từ nút liền trước bằng cách sử dụng khóa công khai của

CA. Hàm sau cho phép kiểm tra DC của nút liền trước đã gửi gói tin P. Nút trung

gian giải mã giá trị trường CS của DC trong gói P với khóa công khai của NCA. Kết

98

Page 114: NGHIŒNCÙUM¸TS¨GI…IPH†P …

quả được so sánh với giá trị băm của DC trong gói P. Nếu hai giá trị này giống nhau

thì DC là hợp lệ; ngược lại, DC của nút liền trước là không hợp lệ. Hàm sau cho phép

kiểm tra chứng thư số khi nhận gói tin P từ nút liền trước, kết quả trả về True nếu

DC là hợp lệ; ngược lại, trả về False.

Bool IsValidDC(Packet P){

val1 ← De(P.DC.CS, kNCA+);

val2 ← H(P.DC.AllF ields\{CS});return (val1 == val2);

}

b) Xác thực láng giềng thật sự: Hai cơ chế xác thực chứng thư số và toàn vẹn

gói tin không thể phát hiện được tấn công lỗ sâu ở chế độ ẩn. Nguyên nhân là nút độc

hại chỉ đơn giản là chuyển tiếp gói yêu cầu tuyến đến nút láng giềng mà không thay

đổi thông tin. Vì vậy, TAM sử dụng cơ chế xác thực láng giềng thật sự để phát hiện

tấn công lỗ sâu ở chế độ ẩn. Nội dung cơ chế xác thực láng giềng thật sự tương tự giao

thức MLAMAN, được trình bày trong mục 2.3.2.

c) Xác thực toàn vẹn gói tin: Nút độc hại có thể thu thập DC hợp lệ của nút

khác trong mạng khi nhận gói yêu cầu tuyến. Nhờ vậy mà nút độc hại có thể vượt qua

cơ chế xác thực chứng thư số một cách dễ dàng. Ngoài ra, bằng cách thay đổi giá trị

của trường GPS của gói điều khiển tuyến, nút độc hại có thể vượt qua cơ chế xác thực

nút láng giềng thật sự. Để vượt qua cơ chế xác thực toàn vẹn gói tin, nút độc hại tiến

hành băm gói P và sử dụng khóa bí mật của riêng nó (gọi là khóa giả mạo) để mã

hóa giá trị băm rồi lưu vào trường CV trước khi gửi đến láng giềng. Khi nhận được

gói P, nút trung gian sử dụng khóa công khai của DC trong gói P để giải mã giá trị

của trường CV và so sánh với giá trị băm của P. Kết quả là nút trung gian phát hiện

gói P không toàn vẹn thông tin. Nguyên nhân là do khóa bí mật của nút độc hại và

nút thật sự sở hữu DC là khác nhau. Ngoài ra, nút độc hại không thể sử dụng khóa

công khai giả mạo vì khóa này thuộc DC đã được CA xác nhận. Cơ chế kiểm tra toàn

vẹn gói tin cho phép phát hiện nút độc hại sử dụng khóa giả mạo. Để thực hiện cơ chế

này, nút NS sử dụng hàm băm H để băm thông tin của gói khám phá tuyến P, kết

quả băm được mã hóa bằng khóa bí mật (kNS−) của NS như Công thức (4.15), kết

quả được lưu vào trường CV của gói P trước khi gửi đến nút láng giềng Ni.

P.CV ← En(H(P.AllF ields\{CV }), kNs−) (4.15)

Tiếp theo, khi nhận được gói tin điều khiển tuyến P từ nút liền trước NS, nút

trung gian Ni sử dụng khóa công khai trong trường DC để giải mã giá trị của trường

CV của gói P. Kết quả giải mã được so sánh với giá trị băm của gói P, nếu hai giá trị

này bằng nhau thì gói tin được toàn vẹn; ngược lại, gói P đã bị thay đổi thông tin.

Hàm sau cho phép kiểm tra toàn vẹn gói tin P từ nút liền trước, kết quả trả về True

nếu P là toàn vẹn; ngược lại, trả về False.

99

Page 115: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Bool IsPacketIntegrity(Packet P){

val1 ← De(P.CV,DCNS .PK);

val2 ← H(P.AllF ields\{CV });return (val1 == val2);

}

4.3.2 Giao thức an ninh TAMAN

Luận án đề xuất giao thức an ninh sử dụng giải pháp TAM cho mạng tùy biến di

động (TAMAN). Thuật toán khám phá tuyến của TAMAN được cải tiến từ thuật toán

khám phá tuyến của giao thức AODV như Hình 4.10. Để sử dụng cơ chế TAM, hai gói

tin điều khiển tuyến của TAMAN là SeRQ và SeRP được bổ sung thêm 4 trường mới

(4NF) gồm: Hai trường GPS và R để lưu vị trí và bán kín phát sóng sử dụng trong cơ

chế kiểm tra láng giềng thật sự, DC lưu chứng thư số và CV để kiểm tra toàn vẹn gói

tin (Hình 4.9).

RREQ

GPS (x , y)Radio range (R)

Digital Certification (DC)Checking Value (CV)

(a) SeRQ

RREP

GPS (x , y)Radio range (R)

Digital Certification (DC)Checking Value (CV)

(b) SeRP

Hình 4.9. Cấu trúc gói tin điều khiển tuyến của giao thức TAMAN

Quá trình khám phá tuyến của giao thức TAMAN được thực hiện qua 2 giai

đoạn: (1) Yêu cầu tuyến bằng cách quảng bá gói SeRQ và (2) Trả lời tuyến bằng cách

gửi đơn hướng gói SeRP, chi tiết như sau:

a) Yêu cầu tuyến: Khi nút nguồn NS muốn gửi thông tin đến nút đích ND mà

không có tuyến trong bảng định tuyến, NS tiến hành khám phá đường đi bằng cách

phát quảng bá gói yêu cầu tuyến SeRQ đến tất cả các nút láng giềng như mô tả trong

(4.16), trong đó RREQ* là gói yêu cầu tuyến của giao thức gốc, 5NF là các trường mới

nhằm mục đích kiểm tra an ninh được thiết lập như sau: SeRQ.GPS = Vị trí của NS;

SeRQ.R = getRadioRange(); SeRQ.DC = DCNS ; SeRQ.CV = Mã hóa giá trị băm của

(SeRQ.AllFields \ {CV}) sử dụng khóa bí mật kNS−.

NSbrdcast : SeRQ← {RREQ∗ ⊕ 4NF} (4.16)

100

Page 116: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Đã xử lý SeRQ

Bắt đầu

Kết thúc

Nút nguồn (NS)

Núttrunggian/đích(N

i)

Khởi tạo gói SeRQ;Thiết lập giá trị GPS, R, DC và CV;

Quảng bá gói SeRQ;

Ni sử dụng TAM để kiểm tra SeRQthông qua 3 bước: DC, AN and PI;Kiểm tra thời gian trong DC của gói;

Quảng bá SeRQHủy gói (SeRQ)

yes

no Điều kiệnhợp lệ

Thêm tuyến ngược về nguồn hoặc cậpnhật tuyến cũ nếu có chi phí tốt hơn

Cập nhật: GPS,R, DC và CV

Cótuyến đến

đích

Khởi tạo và gửigói SeRP về nguồn

Là nút đích

yes

no

Có DC vàDC hợp lệ

yes no

no

yes

yes

no

(a) Quảng bá gói yêu cầu tuyến SeRQ

Bắt đầu

Kết thúc

Nút đích (ND)

Núttrunggian/nguồn(N

i)

Khởi tạo gói SeRP;Thiết lập GPS, R, DC và CV;

Gửi gói SeRP;

Ni sử dụng TAM để kiểm tra SeRPthông qua 3 bước: DC, AN và PI;

Kiểm tra thời gian trong DC của gói;

Chuyển tiếpgói SeRP

Hủy gói (SeRP)

yesyes

no Điều kiệnhợp lệ

Thêm tuyến ngược về nguồn hoặc cậpnhật tuyến cũ nếu có chi phí tốt hơn

Cập nhật: GPSR, DC, CV

Tìm tuyếnvề nguồn

foundnot found

Gửi gói dữ liệutừ hàng đợi

no

Là nút nguồnyes

Có DC vàDC hợp lệ

no

yes

(b) Gửi gói trả lời tuyến SeRP

Hình 4.10. Sơ đồ thuật toán khám phá tuyến của giao thức TAMAN

Khi nhận được gói yêu cầu tuyến, nút trung gian Ni hủy gói SeRQ nếu nó chưa

được cấp chứng thư số; ngược lại, Ni sử dụng TAM để kiểm tra nút liền trước dựa vào

thông tin của gói SeRQ như sau:

• Nếu chứng thư số của nút liền trước là không hợp lệ thì xuất hiện tấn công mạng,

Ni hủy gói SeRQ, kết thúc thuật toán;

• Nếu nút liền trước không là láng giềng thật sự thì Ni hủy gói SeRQ bởi vì tuyến

đường vừa khám phá xuất hiện nút độc hại thực hiện tấn công lỗ sâu ở chế độ

ẩn, kết thúc thuật toán;

• Nếu gói SeRQ không toàn vẹn thông tin thì xuất hiện nút độc hại tấn công mạng

bằng cách sử dụng khóa giả mạo, Ni hủy gói SeRQ, kết thúc thuật toán;

101

Page 117: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Nếu TAM xác nhận nút liền trước thỏa tất cả các điều kiện thì Ni chấp nhận

gói SeRQ để thiết lập tuyến ngược về nguồn NS và ghi nhận đã xử lý gói SeRQ vào

bộ nhớ bằng cách lưu giá trị broadcast_id và src_add. Đồng thời, trước khi tiếp tục

quảng bá gói SeRQ, Ni cập nhật lại thông tin của 4NF như sau: SeRQ.GPS = Vị trí

của Ni; SeRQ.R = getRadioRange(); SeRQ.DC = DCNi ; SeRQ.CV = Mã hóa giá trị

băm của (SeRQ.fields \ {CV}) sử dụng khóa bí mật kNi−.

Độ phức tạp: Thuật toán yêu cầu tuyến của giao thức TAMAN hoàn toàn

tương tự với giao thức MLAMAN ngoại trừ việc sử dụng TAM thay cho MLA để kiểm

tra an ninh. Giải pháp TAM gọi 3 hàm để kiểm tra chứng thư số của nút liền trước,

láng giềng thật sự và toàn vẹn gói tin, tất cả hàm hoạt động độc lập nhau. Nếu cả

3 điều kiện kiểm tra là hợp lệ thì thuật toán hoạt động tiếp tục như giao thức gốc.

Tương tự giải pháp MLA, độ phức tạp của giải pháp TAM là O(p3)+O(d), thuật toán

yêu cầu tuyến giao thức TAMAN có độ phức tạp là O(p3) + O(d) + O(n), trong đó

O(n) là độ phức tạp của thuật toán gốc với n là số lượng nút mạng.

b) Trả lời tuyến: Tương tự AODV, quá trình trả lời tuyến được thực hiện khi

một nút trung gian (Ni) có tuyến đủ tươi đến đích hoặc nút đích nhận được gói yêu cầu

tuyến. Để trả lời tuyến, nút đích ND gửi gói SeRP về nguồn qua chặng kế tiếp trong

bảng định tuyến như mô tả trong (4.17), trong đó RREP* là gói trả lời tuyến của giao

thức gốc, 4NF là các trường mới nhằm mục đích kiểm tra an ninh được thiết lập như

sau: SeRP.GPS = Vị trí của ND hoặc nút trung gian Ni; SeRP.R = getRadioRange();

SeRP.DC = DCND hoặc DCNi ; SeRP.CV = Mã hóa giá trị băm của (SeRP.AllFields

\ {CV}) sử dụng khóa bí mật của nút đích kND− hoặc nút trung gian kNi−.

ND(orNi)unicasts : SeRP ← {RREP ∗ ⊕ 4NF} (4.17)

Khi nhận được gói trả lời tuyến, nút trung gian Ni hủy gói SeRP nếu nó chưa

được cấp chứng thư số; ngược lại, Ni sử dụng TAM để kiểm tra nút liền trước dựa vào

thông tin của gói SeRP như sau:

• Nếu chứng thư số của nút liền trước là không hợp lệ thì xuất hiện tấn công mạng,

Ni hủy gói SeRP, kết thúc thuật toán;

• Nếu nút liền trước không là láng giềng thật sự thì Ni hủy gói SeRP bởi vì tuyến

đường vừa khám phá xuất hiện nút độc hại thực hiện tấn công lỗ sâu ở chế độ

ẩn, kết thúc thuật toán;

• Nếu gói SeRP không toàn vẹn thông tin thì xuất hiện nút độc hại tấn công mạng

bằng cách sử dụng khóa giả mạo, Ni hủy gói SeRP, kết thúc thuật toán;

Nếu TAM xác nhận nút liền trước thỏa tất cả các điều kiện thì Ni chấp nhận

gói SeRP để thiết lập tuyến đến đích ND. Đồng thời, trước khi tiếp tục chuyển tiếp gói

SeRP về nguồn, Ni cập nhật lại thông tin của 4NF như sau: SeRP.GPS = Vị trí của

102

Page 118: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Ni; SeRP.R = getRadioRange(); SeRP.DC = DCNi ; SeRP.CV = Mã hóa giá trị băm

của (SeRP.fields \ {CV}) sử dụng khóa bí mật kNi−.

Độ phức tạp: Thuật toán trả lời tuyến của giao thức TAMAN hoàn toàn tương

tự với giao thức MLAMAN ngoại trừ việc sử dụng TAM thay cho MLA để kiểm tra

an ninh. Ta có độ phức tạp của giải pháp TAM là O(p3) +O(d). Như vậy, độ phức tạp

của thuật toán trả lời tuyến của giao thức TAMAN là O(p3) +O(d) +O(n), trong đó

O(n) là độ phức tạp của thuật toán gốc với n là số lượng nút mạng.

NS ND N1 N2

Thiết lập:

GPS, R và DC;

Ký và gửi SeRQ;

Xác thực: DC, AN và

PI của NS;

OK: Thiết lập lại

GPS, R và DC; Ký

và gửi SeRQ;

Else, huỷ SeRQ;

SeRQ SeRQ

SeRQ

Xác thực: DC, AN và

PI của N1;

OK: Thiết lập lại

GPS, R và DC; Ký

và gửi SeRQ;

Else, huỷ SeRQ;

Xác thực: DC, AN và

PI của N2;

OK: Thiết lập lại

GPS, R và DC; Ký

và gửi SeRQ;

Else, huỷ SeRQ;

Hình 4.11. Mô tả quá trình ký và xác thực của giao thức TAMAN

Ví dụ 4.4: Hình 4.11 là một ví dụ mô tả cơ chế xác thực của giao thức TAMAN.

Nút nguồn NS khám phá tuyến bằng cách khởi tạo gói SeRQ kèm GPS, R và DC. Gói

SeRQ được NS ký và gán vào CV trước khi quảng bá nhằm mục đích kiểm tra toàn

vẹn gói tin. Khi nhận được gói SeRQ, nút trung gian N1 xác thực DC của NS, AN và

PI. Nếu 3 điều kiện hợp lệ, N1 thiết lập lại giá trị GPS, R và DC của N1. Gói SeRQ

tiếp tục được N1 ký và gán vào CV trước khi quảng bá. Tương tự, nút trung gian N2

xác thực DC của N1, AN và PI khi nhận được gói SeRQ. Nếu 3 điều kiện hợp lệ, N2

thiết lập lại giá trị GPS, R và DC của N2. Gói SeRQ tiếp tục được N2 ký và gán vào

CV trước khi quảng bá. Khi nhận được gói SeRQ đến từ N2, nút đích ND xác thực DC

của N2, AN và PI. Nếu 3 điều kiện hợp lệ, ND chấp nhận gói SeRQ và trả lời tuyến

về nguồn bằng cách gửi gói SeRP. Quá trình kiểm tra an ninh mỗi khi nhận gói SeRP

được thực hiện tương tự gói SeRQ.

4.3.3 Cơ chế quản lý chứng thư số

Mạng MANET là phi cấu trúc, các nút trong mạng có thể gia nhập hoặc rời khỏi

mạng linh động. Vì vậy, việc cấp và thu hồi DC gặp khó khăn nếu thực hiện một cách

thủ công. Để giải quyết vấn đề này, luận án đề xuất cơ chế DCMM có các chức năng

chính là (1) Lưu trữ; (2) cung cấp; và (3) thu hồi chứng thư số. DCMM hoạt động tại

tầng mạng với các chức năng tương tự một PKI và đảm bảo an toàn trong môi trường

mạng di động.

103

Page 119: NGHIŒNCÙUM¸TS¨GI…IPH†P …

4.3.3.1 Lưu trữ chứng thư số

Cơ chế DCMM sử dụng một nút mạng tin cậy (NCA) đóng vai trò như là CA để

quản lý chứng thư số. Nút NCA lưu trữ một cơ sở dữ liệu chứng thư số (DCDB) có cấu

trúc như Bảng 4.1. Mỗi dòng của DCDB gồm các trường: Node lưu địa chỉ của nút sở

hữu chứng thư số; Prov lưu giá trị nhận biết chứng thư số được cấp cho nút thành viên

hoặc chưa; Revo lưu trạng thái của chứng thư số, nếu giá trị là 0 tương ứng chứng thư

số hợp lệ, giá trị 1 tương ứng chứng thư số cần được thu hồi và giá trị 2 là chứng thư

số đã được thu hồi thành công.

Bảng 4.1. Mô tả cơ sở dữ liệu chứng thư số

Node Prov Revo Ver S_Num S_Alg I_Nam V_Per S_Nam P_Key

IPN1 yes 0 1 CA001 1 IPNCA T1, T2 IPN1 kN1+

IPN2 no 1 1 CA002 1 IPNCA T1, T2 IPN2 kN2+

IPN3 yes 1 1 CA003 1 IPNCA T1, T2 IPN3 kN3+

IPN4 yes 2 1 CA004 1 IPNCA T1, T2 IPN4 kN4+

IPN5 yes 2 1 CA005 1 IPNCA T1, T2 IPN5 kN5+

... ...IPNn no 2 1 CA00n 1 IPNCA T1, T2 IPNn kNn+

Ngoài ra, các trường khác để lưu DC theo chuẩn X.509 là: Ver lưu phiên bản

của chứng thư số; S_Num lưu định danh của chứng thư số, được gán bởi CA; S_Alg

lưu hàm băm được sử dụng để CA ký chứng thư số, SHA1 nếu giá trị là 1 hoặc MD5

nếu giá trị là 2; I_Nam lưu tên tổ chức phát hành chứng thư số; V_Per lưu thời gian

hiệu lực của chứng thư số; S_Nam lưu tên đối tượng được cấp chứng thư số; P_Key

lưu khoá công khai của đối tượng được cấp chứng thư số.

CS = En(H(DC.AllF ields\{CS}), kNCA−) (4.18)

Đặc biệt, trường CS (Certificate Signature) lưu chữ ký số của CA trên chứng

thư số. CS được tính bằng cách sử dụng khóa bí mật của CA để mã hóa giá trị băm

thông tin trong chứng thư số như công thức (4.18). Trong DCDB tại NCA không lưu

trữ trường CS để đảm bảo an ninh. Giá trị của trường CS chỉ được tính ngay khi khởi

động việc cấp DC cho nút thành viên.

Về lý thuyết thì chứng thư số (DC) dùng theo X.509 có thể từ 2000 đến 8000

bit. Tuy nhiên, để tối ưu hóa kích thước gói tin điều khiển, luận án đã tổ chức trong

chứng thư số có điểm khác biệt. Thay vì lưu tên của nút CA hoặc tên nút sở hữu chứng

chỉ vào trường Iss_Nam hoặc Iss_Nam, luận án chỉ lưu ID của nút CA và nút sở hữu

chứng chỉ. Điều này đã giúp làm giảm đi kích thước của gói điều khiển. Trong giải

pháp TAM, DC có kích thước là 172 bytes, tương ứng 1376 bits, thấp hơn kích thước

DC theo lý thuyết.

104

Page 120: NGHIŒNCÙUM¸TS¨GI…IPH†P …

4.3.3.2 Cung cấp chứng thư số

Mạng MANET không có cơ sở hạ tầng riêng nên không hỗ trợ kênh truyền an

toàn cho việc cung cấp DC. Điều này đòi hỏi giải pháp cung cấp DC phải đảm bảo

an toàn và phù hợp với đặc đính của mạng MANET. Đầu tiên, thông tin định danh

chứng thư số của tất cả nút hợp lệ được quản trị viên cập nhật vào DCDB tại nút

NCA. Tiếp theo, sau khoảng thời gian TDC , hệ thống kiểm tra trong DCDB để tìm nút

thành viên chưa được cấp DC dựa vào giá trị tại trường (Prov = no). Nếu tồn tại nút

Nδ chưa được cấp DC, NCA cấp DC cho Nδ bằng cách quảng bá gói DCP và nhận gói

xác nhận DCACK như mô tả trong Hình 4.12.

DCDB NCA

N

DCP

DCP

DCP

DCP

DCP

DCP

DCP

DCP

DCP

DCP

DCP

DCACK

DCACK

DCACK

Hình 4.12. Mô tả quá trình cung cấp DC cho nút Nδ

Để cung cấp chứng thư số, DCMM sử dụng thêm hai gói tin điều khiển mới là

DCP và DCACK trong quá trình cung cấp DC , cấu trúc như mô tả trong Hình 4.13.

Cấu trúc các gói này được cải tiến từ gói RREQ và RREP bằng cách thêm một số

trường mới như: DC lưu thông tin chứng thư số cấp cho nút thành viên, CV (128bytes)

lưu thông tin để xác thực toàn vẹn gói tin, KEY (4bytes) lưu khóa công khai, ACK

(128bytes) lưu giá trị được dùng để xác thực nút gửi gói phản hồi.

RREQ

Digital Certificate (DC)Checking Value (CV)

(a) DCP

RREP

Acknowledge (ACK)Public Key (KEY)

Checking Value (CV)

(b) DCACK

Hình 4.13. Cấu trúc gói tin điều khiển để cung cấp chứng thư số

Lưu đồ thuật toán tại Hình 4.14 mô tả chi tiết quá trình cung cấp DC cho nút

thành viên Nδ. Quá trình này được thực hiện qua hai giai đoạn: (1) Gửi chứng thư số

105

Page 121: NGHIŒNCÙUM¸TS¨GI…IPH†P …

cho nút thành viên và (2) nhận phản hồi từ nút thành viên nếu cấp chứng thư số được

cấp thành công.

a) Gửi chứng thư số: Định kỳ, sau khoảng thời gian TDC , NCA duyệt qua DCDB.

Nếu tồn tại nút Nδ chưa được cấp DC (Prov = no), NCA tiến hành khởi tạo gói DCP

như mô tả trong (4.19). Trong đó RREQ∗ lưu thông tin tương tự như giao thức AODV,

DC lưu thông tin chứng thư số, giá trị của trường CS được tính như Công thức (4.20),

CV lưu kết quả mã hóa giá trị băm của gói DCP bằng cách sử dụng khóa bí mật của

NCA để kiểm tra toàn vẹn gói tin như mô tả tại mục 2.3.2.

NCAbrdcast : DCP ← {RREQ∗ ⊕DCNδ ⊕ CV } (4.19)

DCP.DC.CS ← En(En(H(DC.AllF ields\{CS}), kNCA−), kNδ+) (4.20)

Bắt đầu

Kết thúc

Nútcấp

chứngthưNCA

Núttrunggian/đích(N

i)

Tạo gói DCP ; Thiết lậpDCNδ và CV vào gói DCP ;

Quảng bá DCP ;

Ni nhận gói DCP ; Nó kiểm tra: DCP được gửitừ NCA và gói tin toàn vẹn;

Tiếp tục quảng

bá gói DCP

Hủy gói(DCP)

yes

no Tất cả điềukiện hợp lệ

Thêm tuyến về NCA hoặc cập nhậtnếu tuyến mới tốt hơn tuyến hiện có

Tạo và gửi gói

DCACK về CA

Đây là nút Nδno

yes

(a) Gửi chứng thư số cho nút thành viên

Bắt đầu

Kết thúc

Nút thành viên (Nδ)Núttrunggian/nguồn(N

i)

Tạo gói DCACK ; Thiết lậpgiá trị ACK, KEY và CV;

Gửi gói DCACK ;

Ni nhận gói DCACK ; Nó kiểm tra DCACKđược gửi từ Nδ và gói tin toàn vẹn;

Chuyển tiếpDCACK

Hủy gói(DCACK)

yesyes

no Tất cả điềukiện hợp lệ

Thêm tuyến về Nδ hoặc cập nhậtnếu tuyến mới tốt hơn tuyến hiện có

Tìm tuyếnvề nguồn

foundnot found

Cấp DC thành công,lưu vếch vào DCDB

no

Nút là NCAyes

(b) Nhận phản hồi từ nút thành viên

Hình 4.14. Sơ đồ thuật toán cung cấp chứng thư số của cơ chế DCMM

Khi nhận được gói DCP, nút trung gian kiểm tra để đảm bảo toàn vẹn gói tin

DCP dựa vào khóa công khai của NCA. Nếu thỏa điều kiện thì nút trung gian tiếp tục

quảng bá gói DCP ; ngược lại, gói DCP bị hủy. Sau quá trình chuyển tiếp tại một số

nút trung gian, nút Nδ cũng nhận được gói DCP. Nút Nδ kiểm tra để đảm bảo rằng gói

DCP được gửi từ NCA, và gói này để cấp DC cho Nδ bằng việc lần lượt sử dụng khóa

106

Page 122: NGHIŒNCÙUM¸TS¨GI…IPH†P …

bí mật kNδ− và khóa công khai kNCA+ để giải mã giá trị của trường CS trong chứng

thư số. Nếu điều kiện thỏa mãn, Nδ lưu DC vào bộ nhớ và gửi trả lời gói DCACK về

cho nút NCA; ngược lại, gói DCP bị hủy. Hàm sau cho phép kiểm tra và lưu DC khi

nhận gói DCP, kết quả trả về True nếu lưu DC thành công, ngược lại trả về False.

Bool TestAndSaveDC(DCP P){

if (!IsPacketIntegrity(P, kNCA+)) {

Dispose(P) and Return False;

} else {

val1 ← De(P.DC.CS, kNδ−);

if (IPNδ 6= P.DC.S_Nam) {

Dispose(P) and return False;

} else {

P.DC.CS ← val1;

SavetoCache(P.DC);

CreateAndSend(DCACK , NCA);

return True;

}

}

}

Độ phức tạp: Thuật toán gửi chứng thư số của DCMM được phát triển từ

thuật toán quảng bá gói yêu cầu tuyến của giao thức AODV. Mỗi khi nhận được gói

MCP, nút kiểm tra toàn vẹn gói tin và kiểm tra gói được gửi từ CA. Nếu cả 2 điều

kiện kiểm tra là hợp lệ thì thuật toán hoạt động tiếp tục như giao thức gốc. Giá trị

của trường CS trong DC chỉ có thể được giải mã bằng cách sử dụng khóa bí mật của

nút Nδ và khóa công khai của NCA. Điều này có nghĩa là: (1) Một nút thành viên khác

không thể biết được DC của Nδ vì phải cần khóa bí mật của Nδ để giải mã; (2) tin tặc

cũng không thể giả mạo nút NCA để cấp DC bởi vì không có khóa bí mật của NCA;

(3) Thông tin của gói DCP không thể bị thay đổi trong quá trình chuyển tiếp từ NCA

đến Nδ nhờ vào cơ chế kiểm tra toàn vẹn gói tin. Tương tự thuật toán yêu cầu tuyến,

thuật toán gửi chứng thư số có độ phức tạp là O(p3) +O(d) +O(n), trong đó O(n) là

độ phức tạp của thuật toán gốc với n là số lượng nút mạng.

b) Nhận phản hồi từ thành viên: Để đảm bảo độ tin cậy của cơ chế cấp chứng

thư số, việc gửi xác nhận về NCA là bắt buộc mỗi khi một nút thành viên nhận được

DC. Sau khi lưu thành công DC, nút Nδ gửi gói DCACK ngược về NCA để thông báo

rằng Nδ đã nhận được DC như mô tả trong (4.21). Trong đó RREP* là gói RREP của

giao thức gốc, ACK được tính theo Công thức (4.22), KEY là khóa công khai của nút

Nδ và CV là kết quả mã hóa giá trị băm của gói DCACK sử dụng khóa kNδ−.

Nδunicasts : DCACK ← {RREP ∗ ⊕ ACK ⊕KEY ⊕ CV } (4.21)

DCACK .ACK ← En(En(H(IPNCA), kNδ−), kNCA+)) (4.22)

107

Page 123: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Khi nhận được gói DCACK , nút trung gian kiểm tra để đảm bảo toàn vẹn gói

tin DCACK dựa vào khóa công khai của Nδ được gửi kèm theo. Nếu thỏa điều kiện

thì nút trung gian tiếp tục chuyển tiếp gói DCACK về nguồn dựa vào thông tin trong

bảng định tuyến của nó; ngược lại, gói DCACK bị hủy. Gói DCACK đến nút NCA sau

quá trình chuyển tiếp qua một số nút trung gian. NCA kiểm tra để đảm bảo rằng gói

DCACK được gửi từ Nδ, và gói này gửi trả lời cho NCA bằng việc lần lượt sử dụng khóa

bí mật kNCA− và khóa công khai kNδ+ để giải mã giá trị của trường ACK. Nếu kết

quả giải mã tương ứng với giá trị băm IPNCA thì NCA cập nhật vào DCDB rằng việc

cấp DC cho nút thành viên Nδ là thành công; ngược lại gói DCACK bị hủy. Hàm sau

mô tả chi tiết việc kiểm tra và cập nhật DCDB khi nhận được gói DCACK , kết quả trả

về True nếu DC được cấp thành công, ngược lại trả về False.

Bool TestAndUpdateDCDB(DCPACK P){

if (!IsPacketIntegrity(DCACK , DCACK .KEY )) {

Dispose(DCACK) and return False;

} else {

val1 ← De(DCACK .ACK, kNCA−);

val2 ← De(val1, DCACK .KEY );

if (val2 6= H(IPNCA)) {

Dispose(DCACK) and return False;

} else {

if (IPNδ exists in DCDB) {

DCDBRow row ← DCDB.Rows[IPNδ ];

row.Prov ← Yes;

return True;

} else {Dispose(DCACK) and return False;}

}

}

}

Độ phức tạp: Thuật toán phản hồi chứng thư số của DCMM được phát triển

từ thuật toán trả lời tuyến của giao thức AODV. Mỗi khi nhận được gói MCACK , nút

kiểm tra toàn vẹn gói tin và kiểm tra gói được gửi từ Nδ. Nếu cả 2 điều kiện kiểm tra

là hợp lệ thì thuật toán hoạt động tiếp tục như giao thức gốc. Giá trị của trường ACK

trong gói DCACK chỉ có thể được giải mã bằng cách sử dụng khóa công khai của nút

được cấp DC là Nδ và khóa bí mật của nút NCA. Điều này có nghĩa là: (1) tin tặc cũng

không thể giả mạo nút Nδ để gửi gói DCACK giả mạo vì không có khóa bí mật của Nδ;

(2) Thông tin của gói DCACK không thể bị thay đổi trong quá trình chuyển tiếp từ

Nδ về Nδ nhờ vào cơ chế kiểm tra toàn vẹn gói tin. Tương tự thuật toán trả lời tuyến,

thuật toán phản hồi chứng thư số có độ phức tạp là O(p3) + O(d) + O(n), trong đó

O(n) là độ phức tạp của thuật toán gốc với n là số lượng nút mạng.

108

Page 124: NGHIŒNCÙUM¸TS¨GI…IPH†P …

4.3.3.3 Thu hồi chứng thư số

Một khi CA cung cấp chứng thư số cho thành viên, chứng thư số này chỉ được sử

dụng giới hạn trong khoảng thời gian qui định trong trường V_Per. Chứng thư số sẽ

bị thu hồi nếu hết thời gian sử dụng hoặc ngay cả khi thời gian sử dụng còn hợp lệ do

những nguyên nhân khác. DCMM hỗ trợ cơ chế thu hồi DC bằng cách sử dụng hai gói

tin hệ thống mới là DCR và DCRACK . Cấu trúc hai gói như mô tả trong Hình 4.15.

Trường SeNu (10bytes) lưu số định danh chứng thư số bị thu hồi, KEY (4bytes) lưu

khóa công khai, ACK (128bytes) lưu giá trị được dùng để xác thực nút gửi gói phản

hồi và CV (128bytes) lưu thông tin để xác thực toàn vẹn gói tin.

RREQ

Serial Number (SeNu)Checking Value (CV)

(a) DCR

RREP

Acknowledge (ACK)Public Key (KEY)

Checking Value (CV)

(b) DCRACK

Hình 4.15. Cấu trúc gói tin điều khiển sử dụng trong DCMM

Sau khoảng thời gian TDC , hệ thống kiểm tra trong DCDB để tìm các chứng thư

số cần phải thu hồi. Nếu tồn tại chứng thư số cần thu hồi (Revo = 1 ) thì nút NCA

quảng bá gói DCR chứa số định danh của chứng thư số đến nút sở hữu nó là Nδ như

mô tả trong (4.23). Trong đó RREQ∗ lưu thông tin tương tự như giao thức AODV,

SeNu số định danh của chứng thư số, CV lưu kết quả mã hóa giá trị băm của gói DCR

bằng cách sử dụng khóa bí mật của NCA để kiểm tra toàn vẹn gói tin.

NCAbrdcast : DCR← {RREQ∗ ⊕ SeNu⊕ CV } (4.23)

Khi nhận được gói DCR, nút trung gian kiểm tra để đảm bảo toàn vẹn gói tin

DCR dựa vào khóa công khai của NCA. Nếu thỏa điều kiện thì nút trung gian tiếp tục

quảng bá gói DCR; ngược lại, gói DCR bị hủy. Sau quá trình chuyển tiếp qua một số

nút trung gian gói DCR đến nút Nδ. Nδ kiểm tra để đảm bảo rằng gói DCR được gửi

từ NCA bằng cách kiểm tra toàn vẹn gói tin DCR. Nếu điều kiện thỏa mãn, Nδ ghi

nhận việc chứng thư số bị thu hồi và gửi gói DCRACK để xác nhận về NCA như mô tả

trong (4.24). Trong đó RREP* là gói RREP của giao thức gốc, ACK được tính theo

Công thức (4.25), KEY là khóa công khai của nút Nδ và CV được tính bằng cách mã

hóa giá trị băm của gói DCRACK sử dụng khóa bí mật kNδ−.

Nδunicasts : DCRACK ← {RREP ∗ ⊕ ACK ⊕KEY ⊕ CV } (4.24)

DCRACK .ACK ← En(En(H(IPNCA), kNδ−), kNCA+)) (4.25)

109

Page 125: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Khi nhận được gói DCRACK , nút trung gian kiểm tra để đảm bảo toàn vẹn gói

tin DCRACK dựa vào khóa công khai của Nδ được gửi kèm theo. Nếu thỏa điều kiện

thì nút trung gian tiếp tục chuyển tiếp gói DCRACK về nguồn dựa vào thông tin trong

bảng định tuyến của nó; ngược lại, gói DCRACK bị hủy. Gói DCRACK đến nút NCA

sau quá trình chuyển tiếp qua một số nút trung gian. NCA kiểm tra để đảm bảo rằng

gói DCRACK nhận được gửi từ Nδ, và gói này gửi trả lời cho NCA bằng việc lần lượt sử

dụng khóa bí mật kNCA− và khóa công khai kNδ+ để giải mã giá trị của trường ACK.

Nếu kết quả giải mã tương ứng với giá trị băm IPNCA thì NCA cập nhật vào DCDB

giá trị trường “Revo” là 2 tại dòng có địa chỉ là IPNδ . Mục đích là để nhận biết việc

thu hồi DC của nút thành viên Nδ thành công; ngược lại, gói DCRACK bị hủy.

4.3.4 So sánh các giải pháp bảo mật định tuyến

Trong thời gian qua, đã có một số công bố trên nền tảng chữ ký số nhằm mục

đích an ninh trên mạng MANET, tiêu biểu là SAODV và ARAN. Phần này so sánh

TAMAN và một số nghiên cứu liên quan sử dụng hai tiêu chí là đặc điểm và hiệu quả

an ninh của mỗi giải pháp.

4.3.4.1 Đặc điểm

Giao thức TAMAN được cải tiến từ AODV tương tự SAODV và ARAN. Một số

đặc điểm của TAMAN so với hai giao thức liên quan được tổng hợp trong Bảng 4.2.

Khác với SAODV là hỗ trợ xác thực đầu-cuối, TAMAN hỗ trợ xác thực tại mỗi-chặng

tương tự giao thức ARAN. Giao thức ARAN cho phép nút trung gian loại bỏ chữ ký

của nút liền trước và thay thế bằng chữ ký riêng nó. Một nút độc hại có thể thấy được

khuyết điểm này để tấn công bằng cách chuyển tiếp gói tin mà không thay đổi chữ ký.

Vì vậy, nút nhận gói tin không thể phát hiện ra tấn công mạng bởi vì chữ ký trong gói

là hợp lệ. Giao thức TAMAN đã khắc phục được hạn chế này bằng cơ chế xác thực

nút láng giềng thật sự. Ngoài ra, TAMAN cho phép nút xác thực nút liền trước với 3

mức độ, trong khi giao thức ARAN xác thực nút liền trước thông qua chữ ký số. Giao

thức SAODV chỉ bảo vệ những trường không thay đổi của gói điều khiển tuyến, ARAN

loại bỏ HC vì trường này thay đổi khi chuyển tiếp qua mỗi nút, SAODV bảo vệ HC

bằng giải pháp chuỗi băm. TAMAN bảo vệ tất cả trường của gói điều khiển tuyến bao

gồm cả HC bằng cơ chế xác thực toàn vẹn gói tin. Giao thức TAMAN có thể trả lời

tuyến một khi nút trung gian có tuyến đủ tươi đến đích, giao thức ARAN loại bỏ cơ

chế này, giao thức SAODV hỗ trợ cơ chế này nhưng phải sử dụng chữ ký đôi. Đặc biệt,

TAMAN hỗ trợ cơ chế quản lý và cung cấp chứng thư số cho nút một cách an toàn,

phù hợp với môi trường mạng MANET mà không cần PKI. Giao thức SAODV cần bổ

sung 2 chữ ký số vào gói điều khiển khi sử dụng chữ ký đôi, ARAN bổ sung 1 chữ ký

số và 2 chứng thư nhằm mục đích kiểm tra từng–chặng và đầu–cuối, TAMAN bổ sung

trường lưu R và GPS, 1 chữ ký và 1 chứng thư nhằm mục đích kiểm tra an ninh. Như

vậy, gói RCP của giao thức TAMAN có kích thước lớn hơn SAODV, nhưng thấp hơn

ARAN. Tuy nhiên, TAMAN sử dụng thêm gói tin điều khiển tuyến mới để cấp DC,

110

Page 126: NGHIŒNCÙUM¸TS¨GI…IPH†P …

đây là nguyên nhân làm tăng hao phí truyền thông. Mặc dù giao thức TAMAN hỗ trợ

cả hai cơ chế TAM và DCMM, nhưng độ phức tạp bằng với cả hai giao thức SAODV

và ARAN.

Bảng 4.2. Đặc điểm của TAMAN và một số nghiên cứu liên quan

Đặc điểmGiao thức

SAODV ARAN TAMAN

1. Xác thực đầu-cuối • •2. Xác thực tại mỗi-chặng • •3. Xác thực nút liền trước • •4. Sử dụng HC để tính chi phí định tuyến • •5. Nút trung gian có thể trả lời tuyến • •6. Hỗ trợ quản lý khóa công khai • •7. Hỗ trợ cơ chế quản lý chứng thư •8. Bảo vệ toàn vẹn trường không thay đổi • • •9. Bảo vệ toàn vẹn gói tin • •10. Xác thực nút láng giềng thật sự •11. Sử dụng gói điều khiển tuyến mới •12. Thuộc tính cần thêm vào gói RCP 2DS DS, 2DC R, GPS, DS, DC13. Độ phức tạp thuật toán O(p3) + O(d) + O(n)

4.3.4.2 Hiệu quả an ninh

Khả năng an ninh của TAMAN và một số nghiên cứu liên quan được tổng hợp

trong Bảng 4.3. Cả hai giao thức SAODV và ARAN không thể phát hiện tấn công lỗ

sâu ở chế độ ẩn, SAODV không thể phát hiện nút độc hại sử dụng khóa giả mạo vì

thiếu cơ chế quản lý khóa công khai. TAMAN có thể phát hiện và ngăn chặn tất cả

các hình thức tấn công mạng bao gồm cả tấn công lỗ sâu ở chế độ ẩn.

Bảng 4.3. Hiệu quả an ninh của TAMAN và một số nghiên cứu liên quan

Phát hiện và ngăn chặnGiao thức

SAODV ARAN TAMAN

1. Tấn công lỗ đen/ lỗ chìm • • •2. Tấn công lỗ xám • • •3. Tấn công lỗ sâu:

- Chế độ ẩn •- Chế độ tham gia • • •

4. Tấn công ngập lụt • • •5. Nút độc hại sử dụng khóa giả mạo • •

a) Ngăn ngừa tấn công mạo danh: Điểm chung của các hình thức tấn công lỗ đen,

lỗ chìm và lỗ xám là nút độc hại sử dụng lỗ hổng trong cơ chế khám phá tuyến của giao

111

Page 127: NGHIŒNCÙUM¸TS¨GI…IPH†P …

thức AODV. Nút độc hại có thể gia nhập vào tuyến bằng cách tự quảng cáo cho nút

nguồn biết rằng nó có tuyến đến đích với chi phí tốt nhất mỗi khi nhận được gói yêu cầu

tuyến. Hình 4.16(a) mô tả nút nguồn N1 khám phá tuyến đến nút đích N5 bằng cách

quảng bá gói RREQ và nhận gói trả lời tuyến RREP từ nút đích. Kết quả là nút nguồn

khám phá tuyến đến đích có chi phí là 4 trên hướng {N1 → N2 → N3 → N4 → N5}.

Tuy nhiên, khi mạng xuất hiện nút độc hại M là láng giềng của N3, nút nguồn khám

phá tuyến đến đích trên hướng {N1 → N2 → N3 → M}. Nguyên nhân là do N3 cho

rằng M có tuyến đến đích với chi phí tốt nhất N4. Hình 4.16(b) mô tả khả năng ngăn

chặn tấn công mạo danh của TAMAN, khi nhận gói tin trả lời tuyến giả mạo (FSeRP)

từ nút độc hại, N3 loại bỏ gói tin này do DC không hợp lệ, N3 không thiết lập tuyến

qua nút độc hại. Kết quả là nút độc hại bị cô lập và không bao giờ xuất hiện trong

tuyến mà nút nguồn khám phá. Như vậy, mọi sự thay đổi trong gói tin điều khiển đều

bị phát hiện nên TAMAN có thể ngăn chặn tất cả các hình thức tấn công mạo danh.

N1

Nguồn

N2 N3 N4 N5

Đích

M

RREQRREPFRREP

(a) AODV

N1

Nguồn

N2 N3 N4 N5

Đích

M

SeRQSeRPFSeRP

(b) TAMAN

Hình 4.16. Minh họa khả năng ngăn chặn tấn công mạo danh của TAMAN

b) Ngăn ngừa tấn công lỗ sâu: Để tấn công lỗ sâu, hai nút độc hại kết nối với

nhau thông qua một kênh truyền riêng được gọi là đường hầm, độ dài đường hầm đủ

lớn (>R) để tuyến đến đích thông qua đường hầm sẽ có chi phí thấp hơn tuyến thực

tế. Mục đích là cho phép hai nút độc hại gia nhập vào tuyến mà nút nguồn khám phá.

Hình 4.17(a) mô tả hình thức tấn công lỗ sâu thông qua đường hầm với hai nút độc

hại là M1 và M2. Nút nguồn N1 khám phá tuyến đến đích N5 bằng cách quảng bá

gói yêu cầu tuyến RREQ thông qua hai hướng là {N1 → N2 → N3 → N4 → N5} và

{N1 →M1 →M2 → N5}. Nút đích chấp nhận gói RREQ trên tuyến chứa nút độc hại

do đến trước, đồng thời trả lời gói RREP trên tuyến này theo hướng ngược lại. Kết

quả là hai nút độc hại đã gia nhập thành công vào tuyến mà nút nguồn vừa khám phá.

Hình 4.17(b) mô tả khả năng phát hiện tấn công lỗ sâu sử dụng đường hầm ở

hai chế độ tham gia và ẩn. Ở chế độ tham gia, khi nhận được gói SeRQ từ nút độc hại

M2, nút N5 kiểm tra và phát hiện DC của M2 là không hợp lệ, gói SeRQ bị hủy. Nếu

ở chế độ ẩn, nút độc hại chỉ chuyển tiếp gói SeRQ đến đích nên TAMAN không thể

phát hiện bằng cơ chế xác thực DC. Tuy nhiên, do khoảng cách từ N1 đến N5 lớn hơn

bán kính phát sóng R nên N5 phát hiện ra nút độc hại đã chuyển tiếp gói tin bằng cơ

chế xác thực nút láng giềng thật sự, gói SeRQ đến từ M2 bị hủy. Nút đích chấp nhận

gói SeRQ đến từ nút N4 để trả lời tuyến. Kết quả là nút nguồn khám phá thành công

tuyến đến đích không chứa nút độc hại.

112

Page 128: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Nguồn ĐíchN1 N2 N3 N4 N5

M1 M2

RREQ RREP Tunnel

(a) AODV

Nguồn ĐíchN1 N2 N3 N4 N5

M1 M2

SeRQ SeRP Tunnel

(b) TAMAN

Hình 4.17. Minh họa khả năng ngăn chặn tấn công lỗ sâu của TAMAN

Ngoài ra, TAMAN có thể phát hiện và ngăn chặn tấn công lỗ sâu sử dụng cơ chế

đóng gói ở hai chế độ tham gia và ẩn. Xem lại Hình 1.13(b) tại Chương 1, ở chế độ

tham gia, khi nhận được gói SeRQ từ nút độc hại M1, nút N9 kiểm tra và phát hiện

DC của M1 là không hợp lệ, gói SeRQ bị hủy. Nếu ở chế độ ẩn, nút độc hại chỉ chuyển

tiếp gói SeRQ đến đích nên TAMAN không thể phát hiện bằng cơ chế xác thực DC.

Tuy nhiên, do khoảng cách từ N6 đến N9 lớn hơn bán kính phát sóng R nên N9 phát

hiện ra M1 đã chuyển tiếp gói tin bằng cơ chế xác thực nút láng giềng thật sự, gói

SeRQ đến từ M1 bị hủy. Tương tự, nút đích N8 cũng phát hiện ra nút độc hại M2 và

loại bỏ gói SeRQ đến từ nút M2. Kết quả là nút nguồn khám phá thành công tuyến

đến đích không chứa nút độc hại. Như vậy, TAMAN có thể phát hiện và ngăn chặn tấn

công lỗ sâu sử dụng đường hầm hoặc ơ chế đóng gói ở cả hai chế độ ẩn và tham gia.

c) Ngăn ngừa tấn công ngập lụt: Tấn công ngập lụt được thực hiện đơn giản

nhưng là thách thức trong mạng MANET. Hành vi của nút độc hại tương tự như nút

bình thường ngoài việc phát gói tin điều khiển tuyến với tần suất cao. Kết quả là tạo

ra bão quảng bá gói tin trên mạng gây hao phí truyền thông, và ảnh hưởng đến hiệu

quả định tuyến dữ liệu nếu tần suất tấn công đủ lớn. Hình 4.18(a) mô tả hình thức

tấn công ngập lụt gói RREQ đã ảnh hưởng đến tất cả các nút trong mạng do hình

thức truyền quảng bá. TAMAN có thể ngăn chặn tất cả hình thức tấn công này bởi

việc kiểm tra gói tin SeRQ. Khi nhận được gói SeRQ từ nút độc hại M, cả ba nút láng

giềng là N1, N3 và N5 đều loại bỏ gói này vì DC của M không hợp lệ.

N1

N2 N3 N4

N5M

RREQ

RREQ RREQ

RREQ

RREQ

(a) AODV

N1

N2 N3 N4

N5M

SeRQ

SeRQ

SeRQ

(b) TAMAN

Hình 4.18. Minh họa khả năng ngăn chặn tấn công ngập lụt của TAMAN

113

Page 129: NGHIŒNCÙUM¸TS¨GI…IPH†P …

d) Ngăn ngừa nút độc hại sử dụng khóa giả mạo: Nút độc hại có thể vượt qua

cơ chế xác thực chứng thư số bằng cách sử dụng DC hợp lệ của nút khác, vượt qua cơ

chế kiểm tra láng giềng thật sự bằng cách thay đổi giá trị trường GPS của gói điều

khiển. Để vượt qua cơ chế xác thực toàn vẹn gói tin, nút độc hại băm gói SeRQ và sử

dụng khóa bí mật của riêng nó (gọi là khóa giả mạo) để mã hóa giá trị băm. Kết quả

được lưu vào trường CV của gói tin trước khi gửi đến láng giềng. Khi nhận gói SeRQ,

nút trung gian sử dụng khóa công khai của DC trong gói SeRQ để giải mã giá trị của

trường CV và so sánh với giá trị băm của gói SeRQ. Vì khóa bí mật của nút độc hại

và nút sở hữu DC khác nhau nên gói SeRQ không toàn vẹn thông tin. Nhờ vào cơ chế

kiểm tra toàn vẹn gói tin, nút trung gian có thể phát hiện nút độc hại đã thực hiện

hành vi tấn công mạng.

4.4 Đánh giá hiệu năng của giao thức TAMAN

Trong chương 1, luận án đã đánh giá tác hại của tấn công lỗ sâu đến hiệu năng

giao thức AODV. Giao thức TAMAN được cải tiến từ giao thức AODV bằng cách bổ

sung cơ chế an ninh TAM. Vì vậy, để thấy được hiệu quả an ninh, luận án sử dụng

cùng thông số như đã đánh giá trên giao thức AODV tại mục 1.5.1. Hai nút độc hại

đứng yên tại vị trí trung tâm và kết nối với nhau qua một đường hầm có chiều dài lần

lượt là 1, 2, 3, 4 và 5 chặng (250m/chặng) như Hình 1.18. Tất cả các nút di chuyển

ngẫu nhiên với vận tốc từ 1 đến 30m/s (108km/h), thời gian mô phỏng là 1000s. Tiêu

chí đánh giá gồm: Ảnh hưởng của cơ chế an ninh DCMM đến hiệu năng của giao thức

TAMAN, hiệu quả an ninh trước hình thức tấn công lỗ đen.

4.4.1 Ảnh hưởng của DCMM đến hiệu năng của TAMAN

Đầu tiên, luận án đánh giá số lượng gói tin hao phí (gồm DCP , DCACK , DCR

và DCRACK) cần phải xử lý để cấp và thu hồi DC trong môi trường mạng với vận tốc

di động khác nhau. Kịch bản 1 (100-nodes) gồm 100 nút mạng, tất cả các nút được

thêm vào DCDB; Kịch bản 2(60-40-nodes) gồm 100 nút mạng, 60 nút được cài đặt vào

DCDB ngay khi bắt đầu mô phỏng và 40 nút còn lại được thêm vào DCDB tại giây

500; Kịch bản 3(100-20-nodes) gồm 100 nút mạng được cài đặt vào DCDB ngay khi

bắt đầu mô phỏng, 20 nút mạng bị thu hồi DC tại giây 700. Có 4 tô-pô mạng được sử

dụng gồm 1 tô-pô đứng yên và 3 tô-pô mạng có các nút di chuyển ngẫu nhiên với vận

tốc tối đa là 10m/s, 20m/s và 30m/s.

Kết quả mô phỏng tại Hình 4.19(a) cho thấy TAMAN cần 110s và phải xử lý

21,922pkt để hoàn thành cấp DC cho 100 nút thành viên trong môi trường mạng đứng

yên. Khi DCDB có 60 nút thì TAMAN cần 70s và phải xử lý 15,202pkt để hoàn thành

cấp DC cho 60 nút thành viên. Khi thêm 40 nút còn lại vào DCDB, số lượng gói điều

khiển bắt đầu tăng tại giây 500 để cấp DC và hoàn thành sau 560s và phải xử lý

20,928pkt. Kịch bản 100-20-nodes cho thấy TAMAN phải xử lý thêm 2,572pkt kể từ

giây 700 và kết thúc sau 40s.

114

Page 130: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Kết quả mô phỏng trong môi trường mạng di động với vận tốc tố đa 30m/s

(Hình 4.19(d)) cho thấy TAMAN cần 270s và phải xử lý 65,809pkt để hoàn thành cấp

DC cho 100 nút thành viên. Khi DCDB có 60 nút thì TAMAN cần 210s và phải xử lý

28,556pkt để hoàn thành cấp DC cho 60 nút thành viên. Khi thêm 40 nút còn lại vào

DCDB, số lượng gói điều khiển bắt đầu tăng tại giây 500 để cấp DC và hoàn thành

sau 700s và phải xử lý 39,473pkt. Kịch bản 100-20-nodes cho thấy TAMAN phải xử

lý thêm 5,148pkt kể từ giây 700 và kết thúc sau 160s. Như vậy, kết quả mô phỏng cho

thấy rằng số lượng gói tin hao phí để cấp DC tăng dần theo vận tốc di động.

0

10000

20000

30000

40000

50000

60000

70000

80000

0 100 200 300 400 500 600 700 800

Số l

ượ

ng g

ói

tin h

ao p

(pkt)

Thời gian cấp DC (sec)

100nodes 60-40nodes 100-20nodes

(a) Đứng yên

0

10000

20000

30000

40000

50000

60000

70000

80000

0 100 200 300 400 500 600 700 800

Số l

ượ

ng g

ói

tin h

ao p

(pkt)

Thời gian cấp DC (sec)

100nodes 60-40nodes 100-20nodes

(b) 1-10m/s

0

10000

20000

30000

40000

50000

60000

70000

80000

0 100 200 300 400 500 600 700 800

Số l

ượ

ng g

ói

tin h

ao p

(pkt)

Thời gian cấp DC (sec)

100nodes 60-40nodes 100-20nodes

(c) 1-20m/s

0

10000

20000

30000

40000

50000

60000

70000

80000

0 100 200 300 400 500 600 700 800 900

Số l

ượ

ng g

ói

tin h

ao p

(pkt)

Thời gian cấp DC (sec)

100nodes 60-40nodes 100-20nodes

(d) 1-30m/s

Hình 4.19. Số lượng gói tin hao phí để cấp DC của DCMM

Tiếp theo, luận án đánh giá ảnh hưởng của DCMM đến hiệu năng của TAMAN.

Tất cả các nút sử dụng giao thức TAMAN không tham gia vào quá trình định tuyến dữ

liệu nếu chưa được cấp DC từ NCA. Vì vậy, hiệu quả định tuyến của TAMAN bị ảnh

hưởng nếu tích hợp DCMM. Kết quả thống kê sau khi thực hiện 15 kịch bản mô phỏng

(Hình 4.20(a)) cho thấy DCMM đã ảnh hưởng đến hiệu năng của giao thức TAMAN.

Sau 1000s mô phỏng, tỷ lệ gửi gói tin thành công của AODV là 76.07%, TAMAN là

69.80% và TAMAN (DCMM) là 67.65%, độ lệch chuẩn lần lượt là 2.45%, 2.71% và

4.37%. Kết quả cho thấy tỷ lệ gửi gói tin thành công của TAMAN thấp hơn AODV

6.28%. Ngoài ra, tỷ lệ gửi gói tin thành công của TAMAN bị giảm 2.14% khi được tích

115

Page 131: NGHIŒNCÙUM¸TS¨GI…IPH†P …

hợp thêm DCMM. Nguyên nhân là do tất cả các nút không tham gia vào quá trình

khám phá tuyến nếu nút chưa nhận được DC từ NCA, DCMM cần thời gian để hoàn

thành cấp DC cho 100 nút.

40

50

60

70

80

90

200 400 600 800 1000

Tỷ

lệ g

ửi g

ói th

ành

công

(%

)

Thời gian mô phỏng (sec)

AODV TAMAN TAMAN (DCMM)

(a) Tỷ lệ gửi gói tin thành công

0

5

10

15

20

25

30

35

200 400 600 800 1000

Phụ

tải đ

ịnh

tuyế

n (p

kt)

Thời gian mô phỏng (sec)

AODV TAMAN TAMAN (DCMM)

(b) Phụ tải định tuyến

0

0.5

1

1.5

2

2.5

3

200 400 600 800 1000

Thờ

i gia

n tr

ễ tr

ung

bình

(se

c)

Thời gian mô phỏng (sec)

AODV TAMAN TAMAN (DCMM)

(c) Thời gian trễ trung bình

Hình 4.20. Ảnh hưởng của DCMM đến hiệu năng của TAMAN

116

Page 132: NGHIŒNCÙUM¸TS¨GI…IPH†P …

Kết quả mô phỏng tại Hình 4.20(b) cho thấy rằng sau 1000s mô phỏng, phụ

tải định tuyến của AODV là 13.90pkt, TAMAN là 15.26pkt và TAMAN (DCMM) là

17.13pkt, độ lệch chuẩn lần lượt là 1.82pkt, 2.05pkt và 2.02pkt. Phụ tải định tuyến của

TAMAN (DCMM) tăng 1.87pkt so với TAMAN và tăng 3.23pkt so với AODV. Như

vậy, cơ chế DCMM đã làm tăng phụ tải định tuyến của giao thức TAMAN. Tuy nhiên,

phụ tải định tuyến giảm dần theo thời gian. Nguyên nhân là do DCMM phải sử dụng

thêm nhiều gói tin hệ thống cho việc cấp và thu hồi DC. Hình 4.20(c) cho thấy sau

1000s mô phỏng, thời gian trễ trung bình của AODV là 0.934s, TAMAN là 1.545s và

TAMAN (DCMM) là 1.737s, độ lệch chuẩn lần lượt là 0.08s, 0.27s và 0.32s. Thời gian

trễ của TAMAN (DCMM) cao hơn TAMAN là 0.192s và cao hơn AODV là 0.803s.

Như vậy, thời gian trễ trung bình của TAMAN tăng khi được tích hợp thêm DCMM

và lớn hơn AODV. Nguyên nhân là do TAM sử dụng chữ ký số để xác thực đã làm

tăng thời gian xử lý tại mỗi nút.

4.4.2 Hiệu quả an ninh trước hình thức tấn công lỗ đen

Luận án tiếp tục mô phỏng giao thức TAMAN, SAODV và ARAN khi bị tấn

công lỗ đen. Một nút độc hại đứng yên tại vị trí trung tâm (1000m, 1000m) và thực

hiện hành vi tấn công lỗ đen từ giây thứ 500. Kết quả thống kê sau khi thực hiện 15

kịch bản mô phỏng (Hình 4.21(a)) cho thấy tấn công lỗ đen nhằm mục đích phá hoại

đã ảnh hưởng rất lớn đến hiệu quả định tuyến của SAODV. Tỷ lệ gửi gói tin thành

công của TAMAN và ARAN ổn định trong môi trường mạng bị nút độc hại tấn công.

Nhưng, tỷ lệ gửi gói tin thành công của SAODV bắt đầu giảm sau giây 500 khi bị nút

độc hại tấn công lỗ đen. Kết thúc 1000s mô phỏng, tỷ lệ gửi gói tin thành công của

TAMAN đạt 69.22%, ARAN đạt 62.28% và SAODV đạt 35%, độ lệch chuẩn lần lượt

là 2.79%, 2.99% và 2.46%. Tỷ lệ gửi gói tin thành công của hai giao thức TAMAN và

ARAN không bị ảnh hưởng nhiều trong môi trường mạng bị tấn công lỗ đen. Nguyên

nhân là do cả hai giao thức có thể ngăn chặn nút độc hại sử dụng khóa giả mạo. Tỷ lệ

gửi gói thành công của TAMAN cao hơn ARAN vì ARAN không đảm bảo khám phá

ra tuyến có chi phí thấp nhất và nút trung gian không trả lời tuyến. Cả hai giao thức

TAMAN và ARAN có tỷ lệ gửi gói thành công thấp hơn AODV do cơ chế an ninh.

Biểu đồ phụ tải định tuyến (Hình 4.21(b)) cho thấy phụ tải định tuyến của

TAMAN là 15.26pkt, ARAN là 16.67pkt và SAODV là 20.11pkt, độ lệch chuẩn lần

lượt là 2.36pkt, 1.81pkt và 2.86pkt. Như vậy, phụ tải định tuyến của TAMAN thấp

nhất so với hai giao thức an ninh SAODV và ARAN. Nguyên nhân là do tỷ lệ gửi gói

tin thành công của TAMAN cao hơn so với hai giao thức SAODV và ARAN, ngoài ra,

nút trung gian sử dụng giao thức ARAN luôn luôn quảng bá gói RREQ đến đích đã

làm tăng gói tin hao phí.

Biểu đồ thời gian trễ trung bình (Hình 4.21(c)) cho thấy rằng thời gian trễ trung

bình của tất cả giao thức an ninh đều lớn hơn giao thức gốc. Nguyên nhân là do chúng

phải sử dụng hàm băm và hệ mã RSA nhằm mục đích an ninh. Kết thúc 1000s mô

phỏng, thời gian trễ trung bình để định tuyến thành công 1 gói dữ liệu của giao thức

117

Page 133: NGHIŒNCÙUM¸TS¨GI…IPH†P …

AODV là 0.934s, ARAN là 1.541s và SAODV là 2.167s, độ lệch chuẩn lần lượt là 0.29s,

0.25s và 0.54s. Giao thức TAMAN có thời gian trễ cao hơn ARAN do mỗi nút sử dụng

TAM và xác thực nút liền trước nên tăng độ trễ xử lý.

30

40

50

60

70

80

90

200 400 600 800 1000

Tỷ

lệ g

ửi g

ói th

ành

công

(%

)

Thời gian mô phỏng (sec)

AODV-Normal TAMAN-BH ARAN-BH SAODV-BH

(a) Tỷ lệ gửi gói tin thành công

10

12

14

16

18

20

22

24

200 400 600 800 1000

Phụ

tải đ

ịnh

tuyế

n (p

kt)

Thời gian mô phỏng (sec)

AODV-Normal TAMAN-BH ARAN-BH SAODV-BH

(b) Phụ tải định tuyến

0

0.5

1

1.5

2

2.5

3

200 400 600 800 1000

Thờ

i gia

n tr

ễ tr

ung

bình

(se

c)

Thời gian mô phỏng (sec)

AODV-Normal TAMAN-BH ARAN-BH SAODV-BH

(c) Thời gian trễ trung bình

Hình 4.21. Hiệu năng của TAMAN, SAODV và ARAN khi bị tấn công lỗ đen

118

Page 134: NGHIŒNCÙUM¸TS¨GI…IPH†P …

4.5 Tiểu kết Chương 4

Chương này của luận án đã phân tích chi tiết hai giao thức an ninh SAODV và

ARAN. Trên cơ sở ưu điểm và tồn tại, luận án đề xuất cơ chế xác thực tin cậy TAM

[CT4] và cơ chế quản lý chứng thư số DCMM [CT3]. Đồng thời, luận án tích hợp TAM

và DCMM vào giao thức AODV tạo giao thức an ninh TAMAN có những ưu điểm sau:

(1) TAMAN có thể phát hiện và ngăn chặn hầu hết các hình thức tấn công hiện tại

như: Lỗ đen/ lỗ chìm, lỗ xám, lỗ sâu và ngập lụt. Ngoài ra, TAMAN có thể phát

hiện nút độc hại sử dụng khóa giả mạo, cải thiện tồn tại của SAODV. Đặc biệt,

TAMAN có thể phát hiện và ngăn chặn tấn công lỗ sâu ở chế độ ẩn, cải thiện

hạn chế của ARAN, SAODV, H(AODV) và OTP_AODV;

(2) Cơ chế DCMM của TAMAN có các chức năng như một PKI là: (1) Lưu trữ chứng

thư số; (2) cung cấp; và (3) thu hồi chứng thư. Kết quả này đã khắc phục hạn

chế của một số nghiên cứu đã công bố là yêu cầu điều kiện giả thuyết về hạ tầng

khóa công khai hỗ trợ để quản lý, cung cấp và thu hồi chứng thư số.

Tuy nhiên, do sử dụng chữ ký số nên kích thước gói tin điều khiển tuyến và độ

phức tạp thuật toán của TAMAN lớn hơn nhiều so với AODV. Hạn chế này là tương

tự với SAODV và ARAN.

119

Page 135: NGHIŒNCÙUM¸TS¨GI…IPH†P …

KẾT LUẬN

Vấn đề nâng cao an ninh trên mạng MANET là cần thiết và có ý nghĩa thực tế.

Qua thời gian nghiên cứu, luận án đã đạt được một số kết quả mới, nhưng cũng còn

một số hạn chế cần tiếp tục phát triển.

a) Kết quả đạt được:

Luận án đã nghiên cứu đặc điểm của các hình thức tấn công trên mạng MANET,

một số giải pháp an ninh liên quan và cài đặt đánh giá tác hại của các hình thức tấn

công này. Qua đó, luận án đã đề xuất một số giải pháp an ninh sử dụng công nghệ

GPS, chữ ký số và học máy. Kết quả nghiên cứu đã khắc phục được một số tồn tại

trong các giải pháp an ninh đã công bố trước đây, cụ thể là:

(1) Luận án đã đề xuất giải pháp xác thực đa mức (MLA) và cải tiến AODV thành

giao thức an ninh MLAMAN [CT1]. MLA có thể phát hiện và ngăn chặn tấn

công lỗ sâu ở chế độ ẩn nhờ sử dụng công nghệ GPS. Ngoài ra, nhờ vào cơ chế

kiểm tra toàn vẹn gói tin, MLA có thể ngăn chặn nút độc hại tấn công bằng cách

thay đổi các trường trên gói tin điều khiển tuyến khi ở chế độ tham gia.

(2) Luận án đã đề xuất giải pháp FADA theo hướng tiếp cận học máy và cải tiến

AODV thành giao thức an ninh FAPRP [CT2]. FADA dựa trên tập tính khám

phá tuyến của một nút để nhận biết là nút độc hại hoặc bình thường. Vì vậy,

FADA có thể phát hiện tấn công ngập lụt thành công trên 99% ngay cả khi nút

độc hại tấn công với tần suất thấp.

(3) Luận án đã đề xuất cơ chế xác thực tin cậy (TAM [CT4]) và cơ chế quản lý chứng

chỉ số (DCMM [CT3]) theo chuẩn X.509. Đồng thời, tích hợp TAM và DCMM

vào AODV tạo giao thức an ninh TAMAN. TAMAN có hiệu quả an ninh trước

hầu hết các hình thức tấn công hiện tại như lỗ đen, lỗ xám, lỗ sâu và ngập lụt.

Đặc biệt, TAMAN hỗ trợ cơ chế DCMM có chức năng như một PKI là: (1) Lưu

trữ chứng chỉ số; (2) cung cấp; và (3) thu hồi chứng chỉ.

b) Hạn chế và hướng phát triển:

Bên cạnh kết quả đạt được, luận án vẫn còn tồn tại một số hạn chế cần tiếp tục

nghiên cứu trong thời gian tới nhằm nâng cao hiệu quả an ninh của các giải pháp đề

xuất, cụ thể là:

(1) Tín hiệu GPS có thể bị sai số do nhiễu hoặc môi trường di động. Vì vậy, hiệu quả

an ninh của MLA bị ảnh hưởng trong môi trường di động cao. Ngoài ra, MLA

chưa hỗ trợ cơ chế quản lý và thu hồi MC của thành viên nên sẽ khó khăn khi

triển khai vào thực tế.

120

Page 136: NGHIŒNCÙUM¸TS¨GI…IPH†P …

(2) Giải pháp FADA sử dụng khoảng cách “Euclid” để tính khoảng cách giữa hai

véc-tơ. Vì vậy, cần tiếp tục mô phỏng FADA với nhiều độ đo khoảng cách khác

nhau để tìm độ đo phù hợp hơn nhằm nâng cao hiệu quả an ninh.

(3) Cơ chế DCMM phụ thuộc vào kích thước mạng, khi phạm vi mạng lớn hơn sẽ

làm giảm hiệu quả và tăng hao phí truyền thông. Vì vậy, cần tiếp tục cải tiến

DCMM hoạt động theo mô hình phân cấp nhằm nâng cao hiệu quả hoạt động

của giao thức TAMAN trong môi trường mạng có kích thước lớn.

(4) Ứng dụng logic mờ vào giải pháp an ninh đã công bố nhằm tăng độ mềm của

thuật toán phát hiện tấn công, ứng dụng thư viện TLS [95] để nâng cao hiệu quả

an ninh của giao thức TAMAN.

(5) Tương tự SAODV và ARAN, do sử dụng chữ ký số nên kích thước gói tin điều

khiển tuyến và độ phức tạp thuật toán của MLAMAN và TAMAN lớn hơn nhiều

so với giao thức gốc. Ngoài ra, vấn đề bảo vệ khóa bí mật tại mỗi nút và xác định

kích thước khóa phù hợp để vừa đảm bảo an ninh vừa đảm bảo hiệu quả định

tuyến cần được tiếp tục nghiên cứu.

121

Page 137: NGHIŒNCÙUM¸TS¨GI…IPH†P …

DANH MỤC CÔNG TRÌNH CỦA TÁC GIẢ

Tạp chí khoa học

[CT1] Tu T. Vo, Ngoc T. Luong, Doan Hoang (2019), “MLAMAN: A Novel Multi-

Level Authentication Model and Protocol for Preventing Wormhole Attack in

Mobile Ad hoc Network,” Wireless Networks (SCI, Q2, 2.405 IF, Springer),

vol. 25(7), pp. 4115–4132. doi: 10.1007/s11276-018-1734-z

[CT2] Ngoc T. Luong, Tu T. Vo, Doan Hoang (2019), “FAPRP: AMachine Learning

Approach to Flooding Attacks Prevention Routing Protocol in Mobile Ad Hoc

Networks,” Wireless Communications and Mobile Computing (SCIE, Q3, 1.396

IF, Wiley and Hindawi), vol. 2019, pp. 1–17. doi: 10.1155/2019/6869307

[CT3] Luong Thai Ngoc, Vo Thanh Tu (2018), “A Digital Certification Manage-

ment Mechanisms in Mobile Ad hoc Network,” Journal of Computer Science

and Cybernetics, vol. 34(3), pp. 199–217. doi: 10.15625/1813-9663/34/3/12259

[CT4] Luong Thai Ngoc, Vo Thanh Tu (2017), “A Novel Algorithm based on Trust

Authentication Mechanisms to detect and prevent malicious nodes in Mobile

Ad hoc Network,” Journal of Computer Science and Cybernetics, vol. 33(4),

pp. 357–378. doi: 10.15625/1813-9663/33/4/10759

[CT5] Lương Thái Ngọc, Võ Thanh Tú (2017), “Giải pháp cải tiến giao thức AODV

nhằm giảm thiểu tác hại của tấn công ngập lụt trên mạng MANET,” Tạp chí

Khoa học và Công nghệ, Trường Đại học Khoa học, Đại học Huế, Tập 11(1),

Trang 13–26.

[CT6] Lương Thái Ngọc, Võ Thanh Tú (2016), “Giải pháp nâng cao hiệu quả khám

phá tuyến của giao thức AODV trên mạng Tùy biến di động,” Tạp chí Khoa

học, Đại học Huế, Tập 121(7A), Trang 71–80.

Hội nghị khoa học

[CT7] Lương Thái Ngọc, Võ Thanh Tú (2016), “Giải pháp phát hiện tấn công ngập

lụt trên mạng MANET,” Toàn văn Hội nghị FAIR – 9, Trang 165–172. doi:

10.15625/vap.2016.00021

122

Page 138: NGHIŒNCÙUM¸TS¨GI…IPH†P …

TÀI LIỆU THAM KHẢO

Tiếng Việt

[1] Cung Trọng Cường (2015), “Luận án tiến sĩ Nghiên cứu nâng cao hiệu năng giao thứcđịnh tuyến cho mạng MANET,” Trường Đại học Bách khoa Hà Nội, 135 trang.

[2] Đỗ Đình Cường (2017), “Luận án tiến sĩ Nghiên cải tiến hiệu năng giao thức định tuyếnAODV và AOMDV trong mạng MANET,” Học viện Khoa học và Công nghệ, 127 trang.

[3] Nguyễn Kim Quốc (2015), “Luận án tiến sĩ Nghiên cứu cải tiến cơ chế điều khiển tạicác nút mạng,” Trường Đại học Khoa học, Đại học Huế, 157 trang.

[4] Nguyễn Hồng Quốc (2017), “Luận án tiến sĩ Nghiên cứu một số phương pháp lập lịchtrong mạng chuyển mạch chùm quang,” Trường Đại học Khoa học, Đại học Huế, 103trang.

Tiếng Anh

[5] Abramov R., Herzberg A. (2013), “TCP Ack storm DoS attacks,” Computers and Se-curity, vol. 33, pp. 12–27.

[6] Ahmad A., Naveed U. H. (2016), “Smart Grid as a Solution for Renewable and EfficientEnergy,” IGI Global, 362 pages.

[7] Alex A. H. (2003), A Study of Internet Connectivity for Mobile Ad Hoc Networks inNS2, Lund University, 64 pages.

[8] Ali H.A.B. (2009), “Security Management for Mobile Ad hoc Network of Networks(MANoN),” PhD Thesis of De Montfort University, 216 pages.

[9] Ali M., Abdallah B. (2015), “A survey of routing protocols based on link-stability inmobile ad hoc networks,” Journal of Network and Computer Applications, vol. 47, pp.1–10.

[10] Ansuman B., Koushik S. (2017), “An efficient protocol for load-balanced multipathrouting in mobile ad hoc networks,” Ad Hoc Networks, vol. 63, pp. 104–114.

[11] Aqeel-ur R., Sadiq U., RehmanHaris R. (2019), “Sinkhole Attacks in Wireless SensorNetworks: A Survey,” Wireless Personal Communications, vol. 106(4), pp. 2291–2313.

[12] Attia R., Rizk R., Ali H.A. (2015), “Internet connectivity for mobile ad hoc network: asurvey based study,” Wireless Networks, vol. 21(7), pp. 2369–2394.

[13] Basarkod P.I., Manvi S.S. (2015), “Mobility and QoS aware anycast routing in Mobilead hoc Networks,” Computers & Electrical Engineering, vol. 48, pp. 86–99.

123

Page 139: NGHIŒNCÙUM¸TS¨GI…IPH†P …

[14] Binh L.H., Tu V.T., Tam N.V. (2016), “Quality of transmission aware routing in Adhoc Networks based on Cross-Layer Model combined with the Static Agent,” Journalof Computer Science and Cybernetics, vol. 32(4), pp. 351–366.

[15] Celia L., Zhuang W., Cungang Y. (2010), “SEAODV: A Security Enhanced AODVRouting Protocol for Wireless Mesh Networks,” Transactions on Computational ScienceXI, vol. 6480, pp. 1–16.

[16] Chen M., Gonzalez S., Vasilakos A., Cao H, Leung V.C.M. (2011), “Body Area Net-works: A Survey,” Mobile Networks and Applications, vol. 16(2), pp. 171–193.

[17] Chiu H.S., Wong L.K.S. (2006), “DelPHI: Wormhole detection mechanism for Ad hocWireless Networks,” 1st International Symposium on Wireless Pervasive Computing,Phuket, Thailand, pp. 6–11.

[18] Dagon D., Martin T., Starner T. (2004), “Mobile phones as computing devices: Theviruses are coming!,” IEEE Pervasive Computing, vol. 3(4), pp. 11–15.

[19] Dong Y., Sui A.F., Yiu S., Li V.O., Hui L.C. (2007), “Providing distributed certificateauthority service in cluster-based mobile ad hoc networks,” Computer Communications,vol. 30. (11), pp. 2442–2452.

[20] Dongdong Z., Wenjian L. (2017), “One-time password authentication scheme based onthe negative database,” Engineering Applications of Artificial Intelligence, vol. 62, pp.396–404.

[21] Douss A.B.C., Abassi R., Fatmi S.G.E. (2014), “A Novel Secure Ad hoc Routing Pro-tocol Using One Time Password,” International Conference on Advanced Logistics andTransport, Hammamet, Tunisia, pp. 41–46.

[22] Eiman A., Biswanath M. (2012), “A survey on routing algorithms for Wireless Ad-Hocand Mesh Networks,” Computer Networks, vol. 56 (2), pp. 940–965.

[23] Elkeelany O., Matalgah M.M., Sheikh K.P., Thaker M., Chaudhry G., Mehi D., Qad-douri J. (2002), “Performance Analysis of IPSec Protocol: Encryption and Authentica-tion,” IEEE International Conference on Communications, New York: IEEE ComputerSociety, pp. 1164–1168.

[24] Faghihniya M. J., Hosseini S. M., Tahmasebi M. (2017), “Security upgrade againstRREQ flooding attack by using balance index on vehicular ad hoc network,” WirelessNetworks, vol. 23(6), pp. 1863–1874.

[25] GeethaEmail K., Sreenath N. (2016), “Detection of SYN Flooding Attack in Mobile Adhoc Networks with AODV Protocol,” Arabian Journal for Science and Engineering, vol41(3), pp. 1161–1172.

[26] Gurung S., Chauhan S. (2018), “A novel approach for mitigating gray hole attack inMANET,” Wireless Networks, vol. 24(2), pp. 565–579.

[27] Gurung S., Chauhan S. (2017), “A novel approach for mitigating route request floodingattack in MANET,” Wireless Networks, vol 24(8), pp. 2899–2914.

124

Page 140: NGHIŒNCÙUM¸TS¨GI…IPH†P …

[28] Gyanappa A.W., Rajashekar C.B. (2017), “A survey on hybrid routing mechanisms inmobile ad hoc networks,” Journal of Network and Computer Applications, vol. 77, pp.48–63.

[29] Haas Z.J., Pearlman M. (2002), “The Zone Routing Protocol (ZRP) for Ad-Hoc net-works,” IETF Internet draft. Available: https://tools.ietf.org

[30] Hassan C., Timothy P., Shukor A.R., Abdul H.A., Shaharuddin S. (2014), “Local cov-erage measurement algorithm in GPS-free wireless sensor networks,” Ad Hoc Networks,vol. 23. pp. 1–17.

[31] Issariyakul T., Hossain E. (2012), Introduction to Network Simulator NS2, Second Edi-tion, Springer, 535 pages.

[32] Hamieh A., Ben-Othman J. (2009), “Detection of Jamming Attacks in Wireless Ad HocNetworks Using Error Distribution,” IEEE International Conference on Communica-tions (ICC’09), Dresden, pp. 4831–4836.

[33] Hamssa H., Abed E.S., Carole B., Anis L. (2017), “VANET security challenges andsolutions: A survey,” Vehicular Communications, vol. 7, pp. 7–20.

[34] Hoebeke J., Moerman I., Dhoedt B., Demeester P. (2004), “An Overview of Mobile AdHoc Networks: Applications and Challenges,” Journal of the Communications Network,vol. 3(3), pp. 60–66.

[35] Holtmanns S., Oliver I. (2017), “SMS and one-time-password interception in LTE net-works,” IEEE International Conference on Communications, Paris, France, pp. 1–6.

[36] Imrich C., Marco C., Jennifer J.N.L. (2003), “Mobile ad hoc networking: imperativesand challenges,” Ad Hoc Networks, vol. 1(1), pp. 13–64.

[37] Ilker B., Ozgur K.S., Samil T. (2013), “Flying Ad-Hoc Networks (FANETs): A survey,”Ad Hoc Networks, vol. 11(3), pp. 1254–1270.

[38] Jen S.M., Laih C.S., Kuo W.C. (2009), “A Hop-Count Analysis Scheme for AvoidingWormhole Attacks in MANET,” Sensors, vol. 9, pp. 5022–5039.

[39] Johnson D.B., Maltz D.A. (1996), “Dynamic Source Routing in Ad Hoc Wireless Net-works,” The Kluwer International Series in Engineering and Computer Scienc, vol. 353,pp. 153–181.

[40] Jormakka J., Jormakka H., Vare J. (2008), “A Lightweight Management System for aMilitary Ad Hoc Network,” Information Networking. Towards Ubiquitous Networkingand Services, Berlin, Heidelberg, vol. 5200, pp. 533–543.

[41] Kannhavong B., Nakayama H., Nemoto Y., N. Kato, A. Jamalipour (2007), “A surveyof routing attacks in mobile ad hoc networks,” IEEE Wireless Communications, vol.14(5), pp. 85–91.

[42] Karlsson J., Dooley L.S., Pulkkis G. (2011), “A New MANET Wormhole DetectionAlgorithm Based on Traversal Time and Hop Count Analysis,” Sensors, vol. 11(12),pp. 11122–11140.

125

Page 141: NGHIŒNCÙUM¸TS¨GI…IPH†P …

[43] Karovaliya M., Karedia S., Oza S., Kalbande D.R. (2015), “Enhanced security for ATMmachine with OTP and facial recognition features,” Procedia Computer Science, vol.45, pp. 390–396.

[44] Kaur P., Kaur D., Mahajan R. (2017), “Wormhole Attack Detection Technique in Mo-bile Ad Hoc Networks,” Wireless Personal Communications, vol. 97(2), pp. 2939–2950.

[45] Khabbazian M., Mercier H., Bhargava V. K. (2006), “Wormhole Attack in WirelessAd Hoc Networks: Analysis and Countermeasure,” IEEE Globecom 2006, vol. 8(2), pp.736–745.

[46] Lan N.H., Trang N.U. (2008), “A study of different types of attacks on multicast inmobile ad hoc networks,” Ad Hoc Networks, vol. 6(1), pp. 32–46.

[47] Lazos L., Poovendran R., Meadows C., Syverson P., Chang L.W. (2005), “Prevent-ing Wormhole Attacks on Wireless Ad Hoc Networks: A Graph Theoretic Approach,”Wireless Communications and Networking Conference, New Orleans, LA, USA, pp.1193–1199.

[48] Lee C.S. (2015), “A Study on Effective Hash Routing in MANET,” Advanced Scienceand Technology Letters, vol. 95, pp. 47–54.

[49] Li W., Yi P., Wu Y., Pan L., Li J. (2014), “A new intrusion detection system basedon KNN classification algorithm in wireless sensor network,” Journal of Electrical andComputer Engineering, vol. 2014, pp. 1–8.

[50] Mandhare V.V., Thool V.R., Manthalkar R.R. (2016), “QoS Routing enhancement usingmetaheuristic approach in mobile ad-hoc network,” Computer Networks, vol. 110, pp.180–191.

[51] Marina M.K., Das S.R. (2001), “Ad-Hoc On-demand Multipath Distance Vector Rout-ing,” Proceedings Ninth International Conference on Network Protocols, Riverside, CA,USA, pp. 14–23.

[52] Mitchell R., Chen I.R. (2014), “A survey of intrusion detection in wireless networkapplications,” Computer Communications, vol. 42, pp. 1–23.

[53] Mohapatra P., Krishnamurthy S. (2005), Ad Hoc Networks: Technologies and Protocols,Springer US, 268 pages.

[54] Mota V.F.S., Cunha F.D., Macedo D.F., Nogueira J.M.S., Loureiro A.A.F. (2014),“Protocols, mobility models and tools in opportunistic networks: A survey,” ComputerCommunications, vol. 48, pp. 5–19.

[55] Muhammad O., Thomas K., Cormac J.S., Kenneth N.B. (2016), “Evaluation of avail-able bandwidth as a routing metric for delay-sensitive IEEE 802.15.4-based ad-hocnetworks,” Ad Hoc Networks, vol. 37(2), pp. 526–542.

[56] Muhammad S.R., Saeid I., Raad R. (2017), “A novel Energy-Efficient Video Streamingmethod for decentralized Mobile Ad-hoc Networks,” Pervasive and Mobile Computing,vol. 40, pp. 301–323.

126

Page 142: NGHIŒNCÙUM¸TS¨GI…IPH†P …

[57] Mulert J. V., Welch I., Seah W. K. G. (2012), “Security threats and solutions inMANETs: A case study using AODV and SAODV,” Journal of Network and Com-puter Applications, vol. 35(4), pp. 1249–1259.

[58] Myers M., Ankney R., Malpani A., Galperin A., Adams C. (1999), “X.509 Internet Pub-lic Key Infrastructure Online Certificate Status Protocol - OCSP,” Internet EngineeringTask Force. Available: https://tools.ietf.org

[59] Nadeem A., Howarth M. P. (2013), “ Survey of MANET Intrusion Detection & Pre-vention Approaches for Network Layer Attacks,” IEEE Communications Surveys &Tutorials, vol. 15(4), pp. 2027–2045.

[60] National Institute of Standards and Technology (1995), “Secure hash standard,” FIPSPUB 180-1. Available: https://tools.ietf.org

[61] Omar M., Challal Y., Bouabdallah A. (2012), “Certification-based trust models in mo-bile ad hoc networks: A survey and taxonomy,” Journal of Network and ComputerApplications, vol. 35(1), pp. 268–286.

[62] Patel M., Sharma S., Sharan D. (2013), “Detection and Prevention of Flooding At-tack Using SVM,” International Conference on Communication Systems and NetworkTechnologies, Gwalior, Gwalior, India, pp. 533–537.

[63] Perkins C.E., Royer E.M. (1999), “Ad-hoc On-Demand Distance Vector Routing,” Pro-ceedings of the Second IEEE Workshop on Mobile Computer Systems and Applications,pp. 90–100.

[64] Perkins C.E., Royer E.M., Das S. (2003), “Ad hoc On-Demand Distance Vector (AODV)Routing,” Network Working Group. Available: https://tools.ietf.org

[65] Perkins C.E., Bhagwat P. (1994), “Highly dynamic Destination Sequenced Distance-Vector routing (DSDV) for mobile computers,” SIGCOMM’94, pp. 234–244.

[66] Pietro R.D., Guarino S., Verde N.V., Ferrer J.D. (2014), “Security in wireless ad-hocnetworks – A survey,” Computer Communications, vol. 51, pp. 1–20.

[67] Ping Y., Ya F.H., Yiping Z., Shiyong Z., Zhoulin D. (2006), “Flooding attack anddefence in Ad hoc networks,” Journal of Systems Engineering and Electronics, vol.17(2), pp. 410–41.

[68] Ravi S.D., Amit K.G (2012), “Modified RSA Encryption Algorithm (MREA),” SecondInternational Conference on Advanced Computing & Communication Technologies, Ro-htak, Haryana, IEEE, pp. 426-429.

[69] Rivest R. (1992), “The MD5 message-digest algorithm,” Internet Request For Comments1321, April 1992. Available: https://www.ietf.org

[70] Rivest R.L., Shamir A., Adleman L. (1978), “A Method for Obtaining Digital Signaturesand Public–Key Cryptosystems,” Communications of the ACM, vol. 21(2), pp. 120–126.

127

Page 143: NGHIŒNCÙUM¸TS¨GI…IPH†P …

[71] Royer E.M, Toh C.K. (1999), “A Review of Current Routing Protocols Ad Hoc MobileWireless Networks,” IEEE PersonalCommunication, vol. 6(2), pp. 46–55.

[72] Sandhya K., Neelima G. (2011), “End-to-end protocol to secure ad hoc networks againstwormhole attacks,” Security and Communication Networks, vol. 4 (9), pp. 994–1002.

[73] Sanjib K.S., Pankaj K.A., Singh P. (2018), “Modified K-NN algorithm for classificationproblems with improved accuracy,” International Journal of Information Technology,vol. 10(1), pp. 65–70.

[74] Sanzgiri K., Dahill B., Levine B.N., Shields C., Royer E.M.B. (2002), “A secure rout-ing protocol for Ad hoc Networks,” 10th IEEE International Conference on NetworkProtocols, Paris, France, pp. 78–87.

[75] Song J. H., Hong F, Zhang Y (2006), “Effective filtering scheme against RREQ floodingattack in mobile ad hoc networks,” Parallel and Distributed Computing, Applicationsand Technologies Proceedings, pp. 497–502.

[76] Son T.T., Hoa L.M., Graham S., Nauman A. (2014), A novel encounter-based metricfor mobile ad-hoc networks routing,” Ad Hoc Networks, vol. 14, pp. 2–14.

[77] Shadi S.B., Marina D.V., Julian P., Yusheng J., Tim L., Simon A. (2015), “Energyefficient zone based routing protocol for MANETs,” Ad Hoc Networks, vol. 25, pp.16–37.

[78] Shahabi S., Ghazvini M., Bakhtiarian M. (2016), “A modified algorithm to improvesecurity and performance of AODV protocol against black hole attack,” Wireless Net-works, vol. 22(5), pp. 1505–1511.

[79] Shashi G, Siddhartha C. (2019), “A survey of black-hole attack mitigation techniquesin MANET: merits, drawbacks, and suitability,” Wireless Networks, First Online: 27February 2019, pp. 1–31.

[80] Shelley K. (2013), “A Survey of Cryptographic Algorithms,” Lawrence University,59pages.

[81] Shirkhorshidi A.S., Aghabozorgi S., Wah T.Y. (2015), “A Comparison Study on Similar-ity and Dissimilarity Measures in Clustering Continuous Data”, PloS One, vol. 10(12),pp. 1–20.

[82] Sina K.N., Javad M.N. (2015), “Robust mitigation of selfish misbehavior in wirelessnetworks,” Security and Communication Networks, vol. 8(9), pp. 1772–1779.

[83] Sushanta K., Paraschos K., Aris P., Dimitris S. (2017), “Energy-efficient broadcastingin ad hoc wireless networks,” Journal of Discrete Algorithms, vol. 42, 2017, pp. 2–13.

[84] Thillaikarasi R., Bhanu S.M.S. (2017), “An Efficient DSR Protocol to Detect BlackholeAttacks in WMN Using Cross Layer Approach,” Wireless Personal Communications,vol. 95(3), pp. 3477–3492.

128

Page 144: NGHIŒNCÙUM¸TS¨GI…IPH†P …

[85] Tracy C., Jeff B., Vanessa D. (2002), “A survey of mobility models for ad hoc networkresearch,” Wireless Communications and Mobile Computing, vol. 2(5), pp. 483–502.

[86] Tseng F.H., Chou L., Chao H.C. (2011), “A survey of black hole attacks in wirelessmobile ad hoc networks,” Human-centric Computing and Information Sciences, vol.1(1), pp. 1–16.

[87] Vasily A.M., Leonov V.A., Volkov A.D. (2016), “Experimental estimate of using the antcolony optimization algorithm to solve the routing problem in FANET,” InternationalSiberian Conference on Control and Communications, Moscow, Russia, pp. 1–10.

[88] Wilder E.C., Juan C.G., Pau A. (2015), “A QoS-aware routing protocol with adaptivefeedback scheme for video streaming for mobile networks,” Computer Communications,vol. 77, pp. 10–25.

[89] Yan Z., Honglin H., Masayuki F. (2006), Resource, Mobility, and Security Managementin Wireless Networks and Mobile Communications, CRC Press, 618 pages.

[90] Yoon J., Liu M., Noble B. (2003), “Random waypoint considered harmful,” in IEEEINFOCOM 2003 (IEEE Cat. No.03CH37428), vol. 2, 2003, pp. 1312–1321.

[91] Zapata M.G., Asokan N. (2002), “Securing ad hoc routing protocols,” In Proceedings ofthe 1st ACM workshop on Wireless security, ACM, New York, NY, USA, pp. 1-10.

[92] Zaw T, Aung H.M. (2008), “Wormhole Attack Detection in Wireless Sensor,” Engineer-ing and Technology, vol. (46), pp. 545–550.

Website

[93] NJIT, Womrhole source code. Available: https://web.njit.edu

[94] DARPA, The Network Simulator NS2. Available: http://www.isi.edu

[95] TLS-Library, RSA source code. Available: https://tls.mbed.org/rsa-source-code

129