ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
NGÔ THÀNH HUYÊN NGHIÊN CỨU GIẢI PHÁP CHỐNG TẤN CÔNG
LỖ ĐEN TRONG MẠNG KHÔNG DÂY DI ĐỘNG Hà Nội -
2012
ĐẠI HỌC
QUỐ
C GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG
NGHỆ NGÔ THÀNH HUYÊN NGHIÊN CỨU GIẢI PHÁP CHỐNG TẤN CÔNG
LỖ ĐEN TRONG MẠNG KHÔNG DÂY DI ĐỘNG
Hà Nội –
2012
3 MỤC LỤC
MỤC LỤC 3
DANH MỤC CÁC HÌNH VẼ 4
DANH MỤC CÁC BẢNG 5
MỞ ĐẦU 6
CHƢƠNG 1. MẠNG KHÔNG DÂY DI ĐỘNG VÀ 8
NHỮNG ĐẶC ĐIỂM CÓ LIÊN QUAN ĐẾN VẤN ĐỀ AN NINH TRONG MẠNG
KHÔNG DÂY DI ĐỘNG 8
1.1. Giới thiệu chung về mạng không dây 8
1.1.1. Đặc điểm mạng không dây 8
1.1.2. Các mô hình hoạt động của mạng không dây 8
1.2. Mạng không dây di động 10
1.2.1. MANET 10
1.1.2. Giao thức định tuyến trong mạng Ad-hoc 10
1.2. Vấn đề an ninh trong mạng MANET 13
1.2.1. Thách thức về an ninh trong mạng MANET 13
1.2.2. Các yêu cầu về an ninh 13
4
DANH MỤC CÁC HÌNH VẼ
Hình 1.1. Mô hình mạng Ad hoc 9
Hình 1.2. Mô hình mạng Infrastructure 9
Hình 1.3. Mô hình mạng Wimax 9
Hình 1.4. Phân loại các giao thức định tuyến trong mạng Ad hoc 12
Hình 1.5. Các hình tấn công giao thức định tuyến trong mạng MANET 15
Hình 2.1. Một kịch bản AODV 19
Hình 2.2. Thực hiện tấn công lỗ đen bằng việc giả mạo gói tin RREQ 21
Hình 2.3. Thực hiện tấn công lỗ đen bằng việc giả mạo gói tin RREP 22
Hình 2.4. Định dạng của thông điệp định tuyến RREQ (RREP) mở rộng 23
Hình 2.5. Cách tính hàm băm khi bắt đầu phát sinh RREQ hay RREP 24
Hình 2.6. Cách tính hàm băm tại nút trung gian 25
Hình 2.7. Hợp tác tấn công lỗ đen. 26
Hình 3.1. Nút 2 gửi dữ liệu tới nút 5 thông qua nút 1 và nút 6 41
Hình 3.2. Nút 2 gửi dữ liệu tới nút 5 thông qua nút 3 và nút 4 41
Hình 3.3. Nút lỗ đen hấp thụ và loại bỏ toàn bộ lưu lượng mạng gửi từ nút 2 tới nút 5 42
Hình 3.4. Biểu đồ thể hiện tỉ lệ phân phát thành công gói tin 47
Hình 3.5. Biểu đồ thể hiện số gói tin bị mất do nút lỗ đen drop 48
Hình 3.6. Biểu đồ thể hiện thời gian trễ trung bình truyền thành công 1 gói tin 49
6
MỞ ĐẦU
Hiện nay, với sự phát triển mạnh mẽ của công nghệ thông tin đã ảnh
hưởng sâu sắc tới hầu hết các lĩnh vực của đời sống. Sự gia tăng đáng kể của các
thiết bị di động cầm tay như điện thoại di động, máy tính bảng,…có chức năng
giao tiếp không dây đang đặt ra nhiều vấn đề về tối ưu hóa băng thông và cơ chế
kiểm soát an ninh, an toàn trong giao tiếp giữa các thiết bị.
Tương tự như mạng có dây truyền thống, để thiết lập vấn đề an ninh, an
toàn cho hệ thống, mạng không dây cũng có thể triển khai các giải pháp để đảm
bảo tính xác thực hai chiều, tính toàn vẹn, tính bảo mật của thông tin giữa người
gửi và người nhận. Tuy nhiên, đối với mạng không dây do môi trường truyền
thông là không khí rất dễ bị tổn thương bởi các cuộc tấn công. Thêm vào đó là
việc liên tục phát quảng bá các gói tin trong mạng không dây cũng là một trong
những nguyên nhân gây ra sự mất an toàn cho toàn bộ hệ thống.
Mạng không dây di động (MANET) là mạng mà trong đó bao gồm các
hiệu năng mạng khi bị ảnh hưởng bởi tấn công lỗ đen; giải pháp phát hiện và
làm giảm ảnh hưởng tấn công lỗ đen.
Tuy nhiên, mạng không dây cũng gặp phải một số hạn chế như:
- Phạm vi: Các thiết bị không dây chỉ hoạt động trong phạm vi phủ sóng
của mạng, ngoài vùng phủ sóng của mạng thì không thể tham gia truyền nhận dữ
liệu. Giới hạn phạm vi hoạt động tốt từ khoảng vài chục mét đến vài trăm mét.
- Chất lượng: Do việc sử dụng sóng vô tuyến để truyền thông nên bị
nhiễu, bị tác động bởi các thiết bị phát sóng khác là điều khó tránh khỏi
- Bảo mật: Là một điểm quan trọng trong thiết kế hệ thống mạng không
dây bởi vì do môi trường truyền là không khí nên tính bảo mật kém, nên dễ bị
tổn thương bởi các cuộc tấn công.
1.1.2. Các mô hình hoạt động của mạng không dây
a. Mô hình độc lập – Ad hoc (IBSS)
9
Các nút mạng trong mô hình này hoạt động theo phương thức ngang
hàng, chúng không sử dụng các Access Point mà kết nối trực tiếp tiếp với nhau.
Hình 1.1. Mô hình mạng Ad hoc
b. Mô hình Infrastructure (BSSs)
Mỗi thiết bị trong mô hình đều truyền tín hiệu về điểm truy cập Access
Point. Điểm truy cập này hoạt động như một brigde trong chuẩn Ethernet để
chuyển các tín hiệu này tới đích thích hợp có thể là mạng có dây hoặc các
điểm truy cập khác.
Hình 1.2. Mô hình mạng Infrastructure
c. Mô hình mạng diện rộng – WIMAX
Hình 1.3. Mô hình mạng Wimax
10
Mô hình này bao gồm nhiều mạng mạng WLAN, bao phủ trong một
MANET phải căn cứ vào một số yêu cầu sau:
- Tốc độ hội tụ mạng nhanh: Do đặc tính di chuyển các nút dẫn tới cấu
hình mạng thay đổi liên tục nên giao thức định tuyến phải đạt mức hội tụ, thống
11
nhất các tuyến trong toàn topology một cách sớm nhất trước khi có sự thay đổi
mới.
- Đảm bảo các cơ chế duy trì tuyến mạng trong điều kiện bình thường mà
hạn chế việc sử dụng tài nguyên mạng như băng thông, năng lượng.
- Thuật toán định tuyến thông minh, tránh tình trạng lặp vòng trong quá
trình yêu cầu tuyến dẫn đến lãng phí băng thông toàn mạng và năng lượng các
nút.
- Hạn chế tối đa việc quảng bá thông điệp điều khiển tuyến, chỉ khám phá
tuyến khi thực sự có nhu cầu truyền gửi dữ liệu, nói một cách khác là các giao
thức định tuyến hoạt động dựa trên yêu cầu.
- Bảo mật: Môi trường với những liên kết không dây rất dễ bị tấn công,
khai thác thông tin, do đó mã hóa và chứng thực là cách bảo mật thông thường
nhất được áp dụng hiện nay. Tuy nhiên việc triển khai hệ thống PKI trong mạng
MANET không có sự hỗ trợ bất cứ cở sở hạ tầng nào cũng đang là vấn đề còn
nhiều khó khăn
- Xây dựng nhiều tuyến đường cho cùng một đích (redundant route):
Giảm thiểu quá trình khám phá tuyến mới khi có một liên kết bị đứt thì có thể
dùng tuyến dự trữ cho cùng một đích.
- Hỗ trợ chất lượng dịch vụ - QoS: Nhiều ứng dụng triển khai trên mạng
ad hoc yêu cầu đảm bảo chất lượng tín hiệu, đáp ứng thời gian thực cho nên
không thể bỏ qua yêu cầu về mặt chất lượng dịch vụ trong giao thức định tuyến.
b. Phân loại
Một trong những phương pháp phổ biến nhất để phân loại các giao thức
định tuyến cho mạng MANET là dựa trên cách thức trao đổi thông tin định
tuyến giữa các nút. Theo phương pháp này thì giao thức định tuyến trong mạng
giao thức trên và khắc phục các nhược điểm của chúng. Được sử dụng trong hệ
13
thống mạng lớn có sự phân cấp từng khu vực với ứng dụng khác nhau để có thể
linh động trong quá trình định tuyến. Các giao thức kiểu này bao gồm: Zone
Routing Protocol (ZRP) và Hybrid Ad Hoc Routing Protocol (HARP).
1.2. Vấn đề an ninh trong mạng MANET
1.2.1. Thách thức về an ninh trong mạng MANET
Với đặc điểm mạng MANET đã trình bày ở phần trên, vấn đề an ninh
trong mạng MANET gặp phải nhiều thách thức. Đó là:
- Môi trường là không khí kém bảo mật là nguy cơ của việc nghe trộm từ
đó kẻ tấn công có thể phân tích lưu lượng mạng phục vụ cho các mục đích tấn
công tiếp theo.
- Việc các nút gia nhập và rời mạng bất kỳ lúc nào tạo nên sự thay đổi
thường xuyên về cấu trúc mạng đòi hỏi các giao thức định tuyến liên tục phát
các yêu cầu quảng bá trong toàn mạng cũng dẫn đến việc mất an ninh trong
mạng. Đồng thời việc cấu trúc mạng liên tục thay đổi cũng là một khó khăn để
các giao thức định tuyến phát hiện rằng thông điệp điều khiển sai lệch được sinh
ra bởi nút độc hại hay là do quá trình thay đổi cấu trúc mạng.
- Giới hạn về tài nguyên như băng thông và năng lượng làm giảm khả
năng chống đỡ của mạng trước các cuộc tấn công
- Thiếu một cơ sở hạ tầng trợ giúp gây khó khăn khi triển khai các cơ chế
bảo mật trong mạng
1.2.2. Các yêu cầu về an ninh
Tính bảo mật (Confidentialy): Đảm bảo thông điệp truyền trong mạng
phải được giữ bí mật. Trong một số trường hợp cần đảm bảo bí mật cả với các
thông điệp định tuyến quảng bá trong mạng vì từ thông tin các thông điệp này có
thể khai thác một số thông tin giúp ích cho việc tấn công.
Tính xác thực (Authentication): Đảm bảo một nút phải xác định được
danh tính rõ ràng của một nút khác trong quá trình truyền dữ liệu với nó.
từ bên ngoài (Extenal attack) và tấn công từ bên trong (Internal attack)
Tấn công từ bên ngoài được thực hiện bởi một nút không nằm trong hệ
thống mạng bị tấn công. Để chống lại kiểu tấn công này, hệ thống mạng cần
trang bị hệ thống tường lửa, sử dụng cơ chế mã hóa các thông điệp trên đường
truyền.
Tấn công từ bên trong nguy hiểm hơn so với tấn công từ bên ngoài khi
trực tiếp một hay nhiều nút tham gia vào cuộc tấn công này vì nó có đầy đủ các
quyền khi hoạt động trong mạng giao tiếp với các nút khác. Những cuộc tấn
công từ bên trong thường khó phát hiện và gây hậu quả lâu dài.
Với từng loại tấn công này có rất nhiều cách tấn công cụ thể vào tất cả các
lớp tương ứng trong mô hình OSI. Tuy nhiên, để trình bày một cách có logic và
bám sát nội dung, luận văn đi vào trình bày các cách tấn công cụ thể trong giao
thức định tuyến được gắn với các yêu cầu về an ninh trong mạng MANET.
15
Như đã trình bày ở trên, môi trường mạng không dây làm cho các giao
thức định tuyến dễ bị tổn thương bởi các cuộc tấn công hơn. Từ tấn công nghe
trộm bị động (Eavesdropping) đến các kiểu tấn công chủ động như mạo danh,
sửa đổi, truyền lại thông điệp…Trong đó tấn công nghe trộm bị đông đe dọa tới
tính bảo mật (Confidentialy), đặc biệt tấn công chủ động đe dọa tới toàn bộ các
yêu cầu an ninh như tính toàn vẹn (Intergrity), tính xác thực (Authentication),
tính sẵn sàng (Availability), tính không chối bỏ (Non-Repudiation). Hình 1.5. Các hình thức tấn công giao thức định tuyến trong mạng MANET
a. Tấn công bị động (bao gồm các hình thức nghe trộm, phân tích lưu lượng)
Do môi trường mạng là không khí nên kẻ tấn công có thể nghe trộm bất
kỳ mạng không dây nào để biết trong mạng đang xảy ra những gì. Qua thông
điệp thu được từ môi trường truyền, kẻ tấn công kết hợp phân tích lưu lượng
những gói tin điều khiển từ đó hình dung ra cấu trúc của mạng để hiểu được các
Tính xác thực
- Mạo danh
- Các hình thức tấn
công đặc biệt như
balckhole,
wormhole…
Tính chống chối bỏ
- Mạo danh
- Các hình thức tấn
công đặc biệt như
balckhole,
wormhole…
16
Trong kiểu tấn công này, một số trường của thông điệp định tuyến đã bị
sửa đổi dẫn đến việc làm rối loạn các tuyến đường, chuyển hướng hoặc hình
thành một cuộc tấn công từ chối dịch vụ. Bao gồm các hình thức sau:
- Sửa đổi số tuần tự đích (destination sequence number), số chặng
(hop_count) của tuyến đường: Thể hiện rõ ràng nhất trong giao thức định tuyến
AODV. Kẻ tấn công sửa đổi số tuần tự đích, hoặc số chặng của gói tin yêu cầu
tuyến (RREQ) hoặc gói tin trả lời tuyến (RREP) để tạo nên tuyến đường mới có
hiệu lực, qua đó chiếm quyền điều khiển quá trình truyền dữ liệu từ nguồn tới
đích.
- Sửa đổi nguồn của tuyến đường: Thể hiện rõ trong giao thức định tuyến
nguồn DSR. Kẻ tấn công chặn thông điệp sửa đổi danh sách các nguồn trước khi
gửi tới nút đích trong quá trình truyền.
Các cuộc tấn công thường gặp dạng này như là: Tấn công làm mất tuyến
Tấn công làm cạn kiệt tài nguyên: Trong cách này, nút độc hại cố gắn tiêu
thụ tài nguyên (pin, băng thông…) của các nút khác trong mạng bằng cách yêu
cầu các tuyến đường không cần thiết, gửi các thông tin cũ đã được xử lý trước
đó nhằm hướng các nút khác phải xử lý những yêu cầu này dẫn đến việc tiêu thụ
tài nguyên lẽ ra không đáng có.
Tấn công gây nhiễm độc bảng định tuyến: Nút độc hại gửi các thông tin
định tuyến sai dẫn đến việc không tối ưu tuyến đường, hoặc gây tắc nghẽn, phân
vùng mạng.
Tấn công lỗ đen [7]: Trong cuộc tấn công này, nút độc hại tuyên bố rằng
nó có tuyến đường hợp lệ tới tất cả các nút khác trong mạng để chiếm quyền
điều khiển lưu lượng giữa các thực thể truyền. Sau khi nhận dữ liệu truyền, nó
không chuyển tiếp mà loại bỏ (drop) tất cả các gói tin này. Do đó, nút lỗ đen này
có thể giám sát và phân tích lưu lượng toàn bộ các nút trong mạng mà nó đã tấn
công. Có thể coi tấn công lỗ đen là một khâu đầu trong tấn công “Man in the
midle attack”.
Chương tiếp theo luận văn sẽ đi vào giải thích một cách chi tiết cách thức
tấn công lỗ đen trên giao thức AODV trong mạng MANET.
1.3. Tổng kết
Nội dung chương này đã trình bày những kiến thức tổng quan về công
nghệ mạng không dây, các mô hình mạng không dây, những đặc điểm của mạng
MANET có liên quan đến vấn đề an ninh. Trong chương này cũng đã giới thiệu
một cách cơ bản nhất về giao thức định tuyến trong mạng Ad hoc. Nôi dung
chương này cũng đã trình bày được các nguy cơ dẫn đến mất an ninh trong
mạng Ad hoc và giới thiệu một số hình thức tấn công vào giao thức định tuyến
trong mạng Ad hoc.
18
cách gửi đi thông điệp hello theo định kỳ.
19
Hình 2.1. Một kịch bản AODV
Hình trên mô tả luồng thông điệp RREQ và RREP trong một kịch bản
AODV, nút A muốn tìm đường tới nút B. (Ban đầu, nút A, B, C, và D không có
đường đi). Một thông điệp quảng bá RREQ (a1) tới B. B quảng bá tiếp yêu cầu
(b1). C nhận được thông điệp này và quảng bá thông điệp (c1), tới được nút đích
D. Cuối cùng, D gửi trở lại thông điệp RREP dưới dạng thông điệp trực tiếp
(unicast) tới A. Trong đó những gói tin RREQ và RREP là luồng yêu cầu-đáp
ứng (request-response flow). Giá trị những trường trong thông điệp định tuyến
được ghi lại như bảng sau:
Bảng 2.1. Giá trị RREQ và RREP 2.2.2. Lỗ hổng giao thức AODV dẫn tới nguy cơ tấn công lỗ đen
Giao thức AODV dễ bị kẻ tấn công làm sai lệch thông tin đường đi để
chuyển hướng đường đi và bắt đầu các cuộc tấn công khác. Trong mỗi gói tin
định tuyến AODV, một số trường quan trọng như số đếm chặng HC, số tuần tự
đích SN của nguồn và đích, IP header cũng như địa chỉ IP đích và nguồn của
AODV, và chỉ số RREQ ID, là những yếu tố cần thiết để thực thi giao thức đúng
đắn. Sự sai sót của bất cứ trường nào kể trên cũng có thể khiến AODV gặp sự
cố. Bảng sau ghi lại vài trường dễ bị phá hoại trong thông điệp định tuyến
AODV và sự thay đổi khi chúng bị tấn công.
20
Bảng 2.2. Các trường gói tin AODV dễ bị tổn thương
2.2.3. Phân loại tấn công lỗ đen
Để thực hiện cuộc tấn công Black hole attack trong giao thức AODV, có
thể phân loại theo hai cách: RREQ Black hole attack và RREP Black hole
attack:
a. RREQ Black hole attack
Trong kiểu tấn công này, kẻ tấn công có thể giả mạo gói tin RREQ để
thực hiện tấn công lỗ đen. Theo đó, kẻ tấn công đánh lừa bằng cách quảng bá
gói tin RREQ với một địa chỉ của nút không có thật. Các nút khác sẽ cập nhật
21
bảng định tuyến của mình với tuyến đường tới đích thông qua nút không có thật
này. Vì vậy, tuyến đường tới đích sẽ bị đứt làm gián đoạn quá trình truyền thông
giữa nút nguồn và nút đích. Việc thực hiện quá trình giả mạo gói tin RREQ như
sau:
- Thiết lập trường Type có giá trị 1;
- Thiết lập originator IP address có giá trị IP của nút nguồn phát sinh gói
RREQ
- Thiết lập destination IP address có giá trị IP của nút đích
- Thiết lập địa chỉ IP nguồn (có trong tiêu đề gói tin IP) có giá trị là địa
chỉ IP của nút không có thật (Nút lỗ đen)
- Tăng giá trị SN ít nhất lên một và giảm giá trị HC bằng một.
Kẻ tấn công thực hiện tấn công lỗ đen giữa nút nguồn và nút đích bằng
việc giả mạo gói tin RREQ được thể hiện trên Hình 2.3
Hình 2.2. Thực hiện tấn công lỗ đen bằng việc giả mạo gói tin RREQ
b. RREP black hole attack
Cũng bằng việc giả mạo gói tin RREP, kẻ tấn công thực hiện như sau:
- Thiết lập trường Type là 2;
- Thiết lập giá trị HC bằng 1
- Thiết lập giá trị originator IP address với địa chỉ IP nút nguồn của
và khóa công khai của nút đó. Do đó, cần phải có một lược đồ quản lý khóa cho
giao thức SAODV. SAODV sử dụng hai cơ chế để bảo mật các thông điệp định
tuyến AODV:
- Chữ ký số để xác thực các trường không thay đổi trong các thông điệp
định tuyến
- Chuỗi hàm băm để bảo vệ các thông tin về số chặng (thay đổi trong
quá trình phát hiện tuyến).
23
Đối với các trường không thay đổi, chứng thực có thể được thực hiện theo
cách thức từ điểm tới điểm, tuy nhiên kỹ thuật này không thể áp dụng cho các
trường thông tin thay đổi.
Các thông điệp RREQ, RREP mở rộng thêm một số trường sau:
<Type, Length, Hash function, Max Hop Count, Top hash, Signature, Hash >
Thông điệp RRER mở rộng thêm các trường sau:
<Type, Length, Reserved, Signature >
Hình 2.4. Định dạng của thông điệp định tuyến RREQ (RREP) mở rộng
Trong đó :
- Type: 64 cho RREQ và 65 cho RREP
- Length: Độ dài của thông điệp không bao gồm Type and Length
- Hash Function: Thuật toán hàm băm được sử dụng
- Max Hop Count: Số bước nhảy lớn nhất có thể hỗ trợ, sử dụng để xác
thực số bước nhảy
- Top Hash: Giá trị hàm băm tương ứng với số bước nhảy lớn nhất
- Signature Method: Thuật toán sử dụng trong chữ ký số
- Padding Length: Độ dài của phần số nhồi thêm
- Public Key: Khóa công khai của nút nguồn phát gói tin
- Padding: Số nhồi thêm
- Signature: Chữ ký số tính từ tất cả các trường không thay đổi của thông
Tùy thuộc cách triển khai
Giá trị hàm băm cao nhất (Top Hash) được tính nhờ sử dụng hàm băm “h”
và giá trị khởi đầu ngẫu nhiên.
Hình 2.5. Cách tính hàm băm khi bắt đầu phát sinh RREQ hay RREP
Khi nút tiếp nhận RREQ hoặc RREP thì nó sẽ xác minh số chặng như sau:
tính hàm băm h số lần là n [n = (Số chặng - Số chặng của nút hiện thời)] rồi so
sánh với giá trị được chứa trong giá trị hàm băm cao nhất (Top Hash).
25 Hình 2.6. Cách tính hàm băm tại nút trung gian
Nút trung gian sau khi đã xác minh được tính toàn vẹn và xác thực, thì nó
sẽ chuẩn bị thông báo RREQ hoặc RREP.
b) Xác thực các trường không thay đổi của thông điệp bằng chữ ký số
Khi một nút lần đầu tiên nhận RREQ, nó sẽ xác minh chữ ký trước khi tạo
hoặc cập nhật một tuyến ngược lại tới nút nguồn. Khi RREQ đến được nút đích,
RREP sẽ được gửi với một chữ ký RREP. Khi một nút nhận được RREP, thì đầu
tiên nó sẽ xác minh chữ ký trước khi tạo hoặc cập nhật một tuyến tới nút nguồn.
Chỉ khi chữ ký được xác minh, thì nút sẽ lưu lại tuyến với chữ ký của RREP và
thời hạn tồn tại.
Khi việc thăm dò tuyến thành công, các nút nguồn và nút đích sẽ truyền
thông theo các tuyến đã tìm được. Nếu xuất hiện một liên kết hỏng trong mạng
do nút nào đó rời đi, thì thông báo lỗi tuyến RERR (Route Error) được tạo ra
như trong AODV. RERR cũng được bảo vệ bằng chữ ký số.
2.3.2. Giải pháp chống hợp tác tấn công lỗ đen dựa trên bảng dữ liệu thông
tin định tuyến (DRI) và kiểm tra chéo (Cross Checking)
Một nhóm các nhà khoa học bao gồm Sanjay Ramaswamy, Huirong Fu,
Manohar Sreekantaradhya, John Dixon, and Kendall Nygard [12] đã công bố