Tải bản đầy đủ (.pdf) (27 trang)

Các giải pháp phát hiện và giảm thiểu tấn công DDoS cho mạng điều khiển bằng phần mềm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.34 MB, 27 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC BÁCH KHOA HÀ NỘI

Nguyễn Ngọc Tuấn

CÁC GIẢI PHÁP PHÁT HIỆN VÀ GIẢM THIỂU TẤN CÔNG
DDOS CHO MẠNG ĐIỀU KHIỂN BẰNG PHẦN MỀM
Ngành: Kỹ thuật viễn thơng
Mã số: 9520208

TĨM TẮT LUẬN ÁN TIẾN SĨ KỸ THUẬT VIỄN THÔNG

Hà Nội – 2023


Cơng trình được hồn thành tại:
Đại học Bách khoa Hà Nội

Người hướng dẫn khoa học: PGS.TS. Nguyễn Hữu Thanh

Phản biện 1:
Phản biện 2:
Phản biện 3:
Luận án được bảo vệ trước Hội đồng đánh giá luận án tiến sĩ
cấp Đại học Bách khoa Hà Nội họp tại Đại học Bách khoa Hà Nội
Vào hồi …….. giờ, ngày ….. tháng ….. năm ………

Có thể tìm hiểu luận án tại thư viện:
1. Thư viện Tạ Quang Bửu - ĐHBK Hà Nội
2. Thư viện Quốc gia Việt Nam



MỞ ĐẦU
Mục đích nghiên cứu
Hiện nay, cơng nghệ thơng tin đang ngày càng phát triển và chiếm
một vị trí vơ cùng quan trọng trong sự phát triển của xã hội. SDN là
một xu hướng công nghệ mạng mới khi mang đến những tính năng
quản lý hết sức linh hoạt với hiệu năng cao. Khác với công nghệ mạng
truyền thống, SDN cho phép tách các chức năng mặt phẳng điều khiển
ra khỏi các chức năng mặt phẳng chuyển tiếp dữ liệu đồng thời cung
cấp khả năng quản lý giám sát tập trung và tạo ra các giao diện lập
trình ứng dụng mở cho phép các nhà nghiên cứu phát triển có thể can
thiệp vào sự hoạt động của các thiết bị mạng cũng như mở rộng, bổ
sung các chức năng mới qua phần mềm.
Đi cùng với sự phát triển công nghệ mạng đó, an ninh mạng là vấn
đề cực kỳ quan trọng và cần phải quan tâm giải quyết. Trong các vấn
đề cấp thiết trong an ninh mạng thì tấn cơng DDoS là nổi trội nhất do
nhiều công cụ hỗ trợ, dễ thực hiện, và tác động trên phạm vi lớn.
Do đó nghiên cứu sinh lựa chọn đề tài “Các giải pháp phát hiện và
giảm thiểu tấn công DDoS cho mạng điều khiển bằng phần mềm”, tập
trung vào giải quyết bài tốn của tấn cơng DDoS để thực hiện nghiên
cứu.
Mục tiêu nghiên cứu của luận án
Đưa ra một số cơ chế mới nhằm phát hiện, giảm thiểu tấn công DDoS
trong mạng SDN.
Các vấn đề cần giải quyết của luận án
- DDoS ảnh hưởng như thế nào tới các thành phần của mạng SDN.
- Giải pháp phát hiện tấn công DDoS hiệu quả, chính xác và theo
thời gian thực.
- Giải pháp giảm thiểu tấn cơng DDoS cũng như hậu quả của nó tới
mạng SDN, duy trì hoạt động của mạng một cách liên tục.

Phạm vi nghiên cứu của luận án
Nghiên cứu tập trung vào:
- Mạng điều khiển bằng phần mềm SDN.
- Tấn công DDoS và các giải pháp phát hiện, giảm thiểu tấn cơng
DDoS sử dụng thuật tốn học máy.
1


Phương pháp nghiên cứu
- Nghiên cứu đánh giá lý thuyết, từ đó đề xuất giải pháp mới.
- Xây dựng mơ hình thực nghiệm, phân tích đánh giá kết quả giải
pháp đề xuất mới, so sánh với các phương pháp đã có. Từ đó đề
xuất giải pháp mới tối ưu.
Các đóng góp của luận án
- Nhận dạng và đo lường một số ảnh hưởng, tác động của tấn công
DDoS đối với các thành phần của mạng SDN trên hệ thống thật.
- Đề xuất một giải pháp phát hiện các loại tấn công DDoS gồm hai
cấp: cấp phát hiện nhanh bất thường sử dụng thuật toán phát hiện
ngoại lai cục bộ và cấp phát hiện loại tấn công cụ thể sử dụng các
thuật toán học máy phức tạp hơn là KNN và DNN để cân bằng yêu
cầu thời gian thực và độ chính xác trong phát hiện tấn cơng DDoS.
- Đề xuất giải pháp hạn chế, giảm thiểu tấn công DDoS bằng giải
pháp phát hiện đối tượng và hủy bỏ luồng tấn cơng với cửa sổ thu
thập dữ liệu có thích ứng để đạt hiệu quả tốt hơn, và giải pháp co
giãn tài nguyên mạng.
Cấu trúc luận án
Luận án được chia thành 5 chương với các nội dung như sau:
- Chương 1: trình bày những kiến thức nền tảng liên quan đến các
nội dung nghiên cứu.
- Chương 2: trình bày kết quả nghiên cứu về đánh giá tác động của

dữ liệu bất thường, tấn công DDoS lên kiến trúc mạng SDN.
- Chương 3: trình bày giải pháp ứng dụng thuật tốn học máy trong
phát hiện tấn công từ chối dịch vụ.
- Chương 4: trình bày giải pháp giảm thiểu DDoS trong mạng SDN.
- Chương 5: trình bày giải pháp tự động tăng, giảm tài nguyên mạng
SDN thích ứng với lưu lượng dữ liệu theo thời gian thực.
- Kết luận chung và các kết quả đã công bố của luận án.
CHƯƠNG 1. TỔNG QUAN
1.1. Tổng quan về mạng định nghĩa bằng phần mềm SDN
Mạng định nghĩa bằng phần mềm là sự phân tách về mặt vật lý mặt
phẳng điều khiển khỏi mặt phẳng chuyển tiếp dữ liệu, để mặt phẳng
2


điều khiển có thể quản lý tập trung nhiều thiết bị mạng khác nhau thay
vì một thiết bị.
1.1.1. Kiến trúc của SDN

Hình 1.1 Cấu trúc mạng SDN

- Lớp ứng dụng: là một chương trình có chức năng giao tiếp ở mức
độ hành vi và chia sẻ tài nguyên với bộ điều khiển thông qua API.
- Lớp điều khiển: là một thực thể vật lý trong mạng để nhận các yêu
cầu từ trên lớp ứng dụng và xử lý đưa xuống các thành phần mạng
ở lớp dưới như thiết bị chuyển mạch, thiết bị định tuyến.
- Lớp hạ tầng mạng: Các thiết bị mạng điều khiển việc chuyển tiếp
và xử lý dữ liệu trong mạng.
1.1.2. So sánh với kiến trúc mạng truyền thống
Trong mạng truyền thống, các thiết bị mạng phải mang trên mình
nhiều chức năng để đảm bảo hoạt động. Với SDN, việc điều khiển

được tập trung tại tầng điều khiển nằm tách biệt với các thiết bị chuyển
mạch, các thiết bị mạng chỉ có nhiệm vụ chuyển tiếp các gói tin.
1.2. Giao thức OpenFlow
1.2.1. Giới thiệu chung
OpenFlow là chuẩn giao tiếp được định nghĩa giữa hai lớp điều khiển
và lớp chuyển tiếp dữ liệu trong kiến trúc mạng SDN.
1.2.2. Thiết bị chuyển mạch OpenFlow
Hình 1.3 mơ tả các thành phần chính của thiết bị chuyển mạch
OpenFlow.
3


Hình 1.3 Các thành phần chính của thiết bị chuyển mạch OpenFlow

1.2.3. Bộ điều khiển OpenFlow
Bộ điều khiển OpenFlow làm nhiệm vụ điều khiển thiết bị chuyển
mạch phía dưới. Bộ điều khiển OpenFlow nằm độc lập với thiết bị
chuyển mạch OpenFlow và giao tiếp với thiết bị chuyển mạch
OpenFlow bằng giao thức OpenFlow. Một số bộ điều khiển OpenFlow
hay sử dụng như POX, Ryu, FloodLight, OpenDaylight.
1.3. Tấn công từ chối dịch vụ DDoS
1.3.1. Giới thiệu chung
DDoS là một cuộc tấn công xảy ra khi người tấn công cố gắng làm
cho mục tiêu không thể sử dụng hoặc dừng cung cấp một dịch vụ nào
đó bằng cách gửi một số lượng lớn dữ liệu hoặc kết nối tới mục tiêu.
Người tấn công thường xây dựng các botnet để làm công việc này.
1.3.2. Phân loại tấn cơng từ chối dịch vụ

Hình 1.7 Phân loại các hình thức tấn cơng từ chối dịch vụ phân tán DDoS


4


1.4. Tổng quan về học máy
Học máy là một lĩnh vực con của trí tuệ nhân tạo, có khả năng tự học
hỏi dựa trên dữ liệu đưa vào mà không cần phải được lập trình cụ thể.
1.4.1. Quá trình hoạt động của các thuật tốn học máy
Quy trình xây dựng một mơ hình học máy trải qua các bước sau:
- Lựa chọn dữ liệu
- Mơ hình hóa dữ liệu
- Xác thực mơ hình
- Tinh chỉnh các thơng số của mơ hình
- Sử dụng mơ hình
- Thử nghiệm mơ hình
1.4.2. Thuật toán KNN
KNN là một trong những thuật toán phân loại đơn giản nhất của học
máy. KNN là thuật toán học có giám sát, nghĩa là dữ liệu dùng để huấn
luyện trong thuật toán bao gồm cả dữ liệu đầu vào và nhãn ở đầu ra.
Ý tưởng chính của thuật tốn KNN dựa trên sự tương đồng giữa các
điểm gần nhau (trong một khoảng cách nhỏ) trong một không gian
nhiều chiều. Để dự đoán nhãn của một điểm dữ liệu đầu vào, thuật
tốn KNN sẽ tính tốn khoảng cách đến tất cả các điểm trong tập huấn
luyện để tìm ra k điểm gần nhất của nó. KNN phân điểm dữ liệu vào
nhóm có nhiều điểm trong k điểm này.
KNN là thuật tốn máy học “lười biếng”, nó sẽ khơng học bất cứ
điều gì cho đến khi cần xác định nhãn của một điểm dữ liệu đầu vào.
Tham số quan trọng cần xác định khi thực hiện KNN là giá trị k.
1.4.3. Học sâu và thuật toán DNN
Học sâu là một nhánh các thuật toán trong tổng thể các thuật toán
của học máy. Cấu trúc và hoạt động của các thuật toán học sâu được

lấy cảm hứng từ bộ não con người và được gọi là mạng nơ ron.
Mạng nơ ron là một cấu trúc bao gồm ba lớp: lớp vào dùng để nhận
các giá trị đầu vào thuật toán, lớp ẩn để lọc dữ liệu và kéo các giá trị
dự đoán gần với các giá trị mà bài toán mong muốn, lớp ra dùng để
đưa ra giá trị dự đoán cuối cùng của tập dữ liệu. Hình 1.16 biểu thị
một mạng nơ ron có ba nơ ron thuộc lớp đầu vào, hai thuộc lớp đầu ra
và có một lớp ẩn với bốn nơ ron.
5


DNN có hai tham số quan trọng ảnh hưởng đến chất lượng hoạt động
của thuật toán cần xác định là tốc độ học (learning rate) và số vòng
lặp tối đa (iteration).
CHƯƠNG 2. ĐỀ XUẤT PHƯƠNG PHÁP ĐÁNH GIÁ TÁC
ĐỘNG CỦA TẤN CƠNG DDOS VỚI KIẾN TRÚC SDN
2.1. Giới thiệu
Trong mơi trường SDN, việc chuyển tiếp gói tin dữ liệu được thực
hiện theo nguyên tắc luồng phản ứng, được mô tả trong Hình 2.1

Hình 2.1. Tương tác giữa mặt phẳng điều khiển và mặt phẳng dữ liệu trong
mạng SDN

Nguyên tắc phản ứng theo luồng của SDN thường bị các cuộc tấn
công DDoS khai thác. Đối với các cuộc tấn công dựa trên giao thức
như TCP-SYN, những kẻ tấn cơng gửi gói tin SYN với các cổng và
địa chỉ IP nguồn giả mạo, bộ chuyển mạch coi mỗi gói tin là một luồng
mới. Hậu quả sẽ là tràn ngập gói tin packet_in về phía bộ điều khiển.
Mặt khác, đối với các cuộc tấn công dựa trên dung lượng như tràn
ngập ICMP hoặc UDP, khối lượng lưu lượng truy cập lớn có thể làm
bão hịa băng thơng của mặt phẳng dữ liệu, kênh kết nối bộ điều khiển

và thiết bị chuyển mạch cũng như bộ đệm của các thành phần SDN.
Hình 2.2 thể hiện các lỗ hổng có thể có trong mạng SDN. Việc đánh
giá tác động của cuộc tấn công DDoS đối với SDN là rất đáng quan
6


tâm, khơng chỉ về mặt định tính mà cả về mặt định lượng. Do đó, trong
chương này, nghiên cứu sinh tập trung đo đạc, đánh giá tác động tiêu
cực của các cuộc tấn cơng DDoS đối với kiến trúc SDN.

Hình 2.2. Tổng hợp các lỗ hổng trong kiến trúc SDN

2.2. Xây dựng mơ hình thực nghiệm
Hình 2.3 mơ tả chi tiết các thành phần của mơ hình thực nghiệm,
gồm bốn thành phần chính: (1) thiết bị giả lập Botnet; (2) mạng SDN;
(3) hệ thống máy chủ; và (4) thu thập và phân tích dữ liệu. Cấu hình
và tham số thử nghiệm được mơ tả trong Bảng 2.1.

Hình 2.3 Mơ hình kiến trúc hệ thống đo đạc để đánh giá tác động của
DDoS và xây dựng hồ sơ hiệu năng mạng SDN

7


Bảng 2.1 Cấu hình và tham số của mơ hình thử nghiệm
Bộ điều
khiển
Thiết bị
chuyển
mạch SDN

Victim
Traffic
generator
OpenFlow
Tấn công
SYN
Flood
Tấn công
ICMP
Flood
Các thông
số đo đạc

POX, Ryu và Floodlight cài đặt trên máy chủ phần cứng:
6 Xeon(R) 2.53 GHz, 16 Cores, 32 GB RAM
Phần mềm: Open vSwitch (v2.14.90) cài đặt trên máy chủ
phần cứng: 6 Xeon(R) 2.67 GHz, 24 Cores, 64 GB RAM.
Phần cứng: HPE Aruba 2920
Máy chủ có hiệu năng cao (6 Xeon (R) 2.67 GHz, 24
Cores, 64 GB RAM)
Phần mềm Bonesi, TCPReplay (thiết bị phần cứng:
Xeon(R) 3.70 GHz, 12 Cores, 16GB RAM)
OpenFlow 1.0 và OpenFlow 1.3
Tốc độ: 5,000 fps trong 10 giây cho tất cả các thiết bị điều
khiển; 10,000 fps, 15,000 fps, 20,000 fps trong 10 giây cho
Floodlight;
Số lượng bots: 50,000
Băng thông: 56 Mbps – 900 Mbps
Số lượng bots: 50,000
Kích thước dữ liệu: 1,400 bytes

Thiết bị điều khiển: số yêu cầu đến (packet_in), luật gửi ra
(flow_mod), trễ xử lý
Thiết bị chuyển mạch: khối lượng dữ liệu đến, thơng
lượng, kích thước bảng luồng, độ trễ

2.3. Các tác động của tấn công DDoS lên kiến trúc mạng SDN
2.3.1. Tác động của tấn công DDoS lên bộ điều khiển SDN
2.3.1.1. Tác động của tấn công giao thức lên bộ điều khiển SDN
Thực hiện tấn công TCP-SYN với tốc độ 5,000 luồng trên giây (fps)
trong 10s. Một luồng bao gồm các gói tin dữ liệu có các thông số giống
nhau: {địa chỉ IP nguồn, địa chỉ IP đích, cổng nguồn, cổng đích}. Mỗi
một luồng sẽ được thiết bị chuyển mạch và bộ điều khiển xử lý theo
nguyên tắc được trình bày như ở bên trên, trong Hình 2.1. Trong thử
nghiệm tấn cơng này, mỗi gói tin TCP-SYN là 1 luồng mới. Kết quả
Hình 2.4 cho thấy Floodlight đáp ứng tốt mức 5,000fps, POX tối đa
1,200fps, Ryu tối đa 2,400fps, Ryu chạy OF1.3 kém hơn OF1.0 và đạt
mức xử lý 1,000fps, Floodlight và OVS không bị ảnh hưởng.
Tiếp tục tăng tốc độ tấn công TCP-SYN lên 10,000fps, 15,000fps,
20,000fps để đánh giá Floodlight và OVS. Kết quả cho thấy cả FL và
OVS hoạt động tương đối tốt ở tốc độ 10,000fps. Ở tốc độ 15,000fps,
FL với OF 1.0 vẫn hoạt động ổn định, FL với OF 1.3 và OVS không
8


đủ khả năng xử lý và bị trễ. Lên đến tốc độ 20,000fps, tất cả đều không
đáp ứng được.

(a) Số lượng tích lũy của luồng đến
và số luồng ra tại bộ điều khiển


(b) Số luồng đến và ra trên mỗi giây

(c) Kích thước bảng luồng
(d) Độ trễ xử lý trong bộ điều khiển
Hình. 2.4 Hiệu năng của bộ điều khiển SDN trong trường hợp 5,000 luồng
TCP-SYN đến trong một giây

2.3.1.2. Tác động của tấn công khối lượng lên bộ điều khiển SDN
Thực hiện tấn cơng ICMP với 5,000pps, 1400bytes/1 gói. Kết quả
Hình 2.6 cho thấy packet_in tại POX, Ryu thấp hơn packet vào OVS,
tại FL bằng tại OVS. Nguyên nhân là do cơ chế điều khiển luồng của
TCP để phù hợp với khả năng của bộ điều khiển. OVS và Aruba
khơng có bộ đệm nên phải gửi cả gói ICMP lên cho bộ điều khiển.

9


(a) Các luồng vào và ra trên một giây
(b) Tổng tích lũy số luồng
Hình 2.6 Các tác động của tấn công tràn ICMP lên bộ điều khiển SDN

2.3.1.3. Ảnh hưởng của việc triển khai các thuật toán mới lên hiệu
năng bộ điều khiển

(a) Số lường vào và ra trên một giây
(b) Tổng tích lũy số luồng
Hình 2.8. Hiệu năng của bộ điều khiển Ryu, POX sau khi tích hợp thuật
tốn thơng minh

Kết quả trên Hình 2.8 cho thấy việc thêm một chức năng thông minh

thường làm giảm khả năng xử lý của cả POX và Ryu tương ứng
khoảng 200 và 300 fps so với các trường hợp thông thường.
2.3.2. Tác động của tấn công DDoS lên thiết bị chuyển mạch SDN
2.3.2.1. Tìm kiếm và cập nhật bảng luồng thơng tin
Khi hoạt động, OVS đồng thời xử lý gói tin đến và xử lý gói
flow_mod lấy thơng tin đưa vào bảng luồng. Kết quả Hình 2.9 cho thấy
tại 10,000fps OVS xử lý tương đối tốt, tới. 15,000fps OVS bị quá tải.
Thời gian cuối số gói gửi gia tăng, do khơng phải xử lý gói tin đến
nữa, OVS tập trung cho flow_mod và gói ra.
10


(a) Dữ liệu vào và ra tại OvS với
(b) Dữ liệu vào và ra tại OvS với
số luồng yêu cầu mới là 10,000 fps số luồng yêu cầu mới là 15,000 fps
Hình 2.10 Hiệu năng của OvS với Floodlight khi có tấn cơng TCP-SYN

2.3.2.2. Tác động của tấn cơng DDoS lên thiết bị chuyển mạch cứng
và giới hạn tài nguyên của thiết bị chuyển mạch cứng
Kết quả đo đạc cho thấy kích thước bảng luồng của HP Aruba là
1014 mục.
Hình 2.11 cho thấy phản ứng của HP Aruba với tấn công ICMP.

(a) Tấn công ICMP với 2000 bots
(b) Tổng số gói tin
Hình 2.12 Phản ứng của HP Aruba 2920 với tấn công ICMP

2.3.3. Tác động của tấn công lưu lượng lên kết nối giữa thiết bị
điều khiển và thiết bị chuyển mạch
Kết quả đo đạc cho thấy có trễ xảy ra khi đường kết nối giữa thiết bị

chuyển mạch và thiết bị điều khiển bị tắc nghẽn do tấn công.
2.4. Kết luận
Một số nhận xét có thể được rút ra từ nghiên cứu này, đó là:
11


- Tấn công DDoS ảnh hưởng đến tất cả các thành phần của kiến trúc
SDN.
- Floodlight vượt trội hơn so với POX và Ryu. Đó là do Floodlight
là bộ điều khiển dựa trên Java hỗ trợ đa luồng. Trong khi đó, POX
và Ryu sử dụng Python, chỉ hỗ trợ một luồng.

Hình 3.1 Kiến trúc của giải pháp tổng thể đề xuất

CHƯƠNG 3. ĐỀ XUẤT CÁC GIẢI PHÁP PHÁT HIỆN TẤN
CÔNG DDOS TRONG MẠNG SDN
3.1. Giải pháp tổng thể ngăn chặn tấn công DDoS
Với mục tiêu “Đưa ra một số cơ chế mới nhằm phát hiện, giảm thiểu
tấn công DDoS trong mạng SDN” như đã đề cập ở phần Mở đầu,
nghiên cứu sinh đề xuất một giải pháp tổng thể ngăn chặn tấn cơng
DDoS mơ tả trong Hình 3.1. Giải pháp là tập hợp của các giải pháp
12


mà nghiên cứu sinh sẽ đề xuất trong luận án này. Với các giải pháp
tích hợp đó, Hình 3.2 thể hiện các trạng thái của mặt phẳng điều khiển
trong quá trình hoạt động.

Hình 3.2 Các trạng thái của mặt phẳng điều khiển


3.2. Giải pháp phát hiện tấn cơng DDoS

Hình 3.4 Mơ hình kiến trúc tích hợp hệ thống phát hiện tấn cơng DDoS

Hình 3.4 là mơ hình kiến trúc tích hợp giải pháp phát hiện tấn công
đề xuất. Cả ba khối phát hiện bất thường, phân loại dữ liệu và phát
hiện tấn cơng DDoS cụ thể được tích hợp tại bộ điều khiển. Các khối
phát hiện đều chạy các thuật toán học máy tương ứng, dữ liệu cung
cấp cho các thuật toán học máy này được tập hợp bởi một mô-đun
13


giám sát và thu thập thông tin. Thông qua các Open API, mô-đun giám
sát giao tiếp với thiết bị chuyển mạch và thu thập thông tin cần thiết,
thực hiện lọc lấy các đặc trưng dữ liệu theo yêu cầu của thuật tốn học
máy, chuẩn hóa dữ liệu và gửi qua cho mô-đun phát hiện tấn công sử
dụng.
3.3. Khối phát hiện dữ liệu bất thường sử dụng thuật toán học máy
trong mạng SDN
3.3.1. Lựa chọn thuật toán học máy
Khối phát hiện dữ liệu bất thường chạy theo thời gian thực do đó cần
đảm bảo nhanh, nhẹ và chính xác. Trước u cầu đó, LoF là thuật tốn
học máy phù hợp.
3.3.2. Áp dụng thuật toán LoF vào khối phát hiện bất thường
3.3.2.1. Thuật toán LoF
LoF ban đầu được đề xuất bởi Markus M.Breunig và các cộng sự
vào năm 2000 để tìm ra các điểm dữ liệu bất thường bằng cách đo độ
lệch cục bộ của một điểm dữ liệu nhất định đối với các điểm lân cận
của nó. Mục đích của LoF là tìm số điểm bất thường trong dữ liệu.
LoF dựa trên khái niệm về mật độ cục bộ, trong đó vị trí được cho bởi

k hàng xóm gần nhất, khoảng cách của chúng được sử dụng để ước
tính mật độ. Bằng cách so sánh mật độ cục bộ của một đối tượng với
mật độ cục bộ của các vùng lân cận, nó có thể xác định các vùng có
mật độ tương tự và các điểm có mật độ thấp hơn đáng kể so với các
vùng lân cận được coi là ngoại lệ.
Tham số quan trọng cần xác định khi thực hiện KNN là giá trị số
lượng điểm lân cận k.
3.3.2.2. Giải pháp áp dụng LoF trong khối phát hiện bất thường
Nghiên cứu sinh áp dụng LoF để nó hoạt động như một thuật tốn
học máy có giám sát, thay vì là thuật tốn tìm điểm bất thường trong
tập dữ liệu như bản gốc. Nghiên cứu sinh sử dụng dữ liệu bình thường
trong giai đoạn huấn luyện cho mơ hình thuật toán. Trong giai đoạn
thử nghiệm, nếu độ lệch cục bộ của dữ liệu đầu vào lớn hơn độ lệch
cục bộ tối đa trong dữ liệu huấn luyện, những điểm mới này được coi
là bất thường.
14


3.4. Khối phân loại và phát hiện tấn công DDoS cụ thể
3.4.1. Khối phân loại dữ liệu
Khối phân loại dữ liệu thực hiện xác định loại của dữ liệu bất thường dựa
trên trường thông tin loại giao thức (protocol type) trong gói tin. Nghiên cứu
đơn giản hóa giai đoạn này bằng cách sử dụng ngưỡng khi đếm số lượng gói
theo loại giao thức có trong bảng luồng.
3.4.2. Khối phát hiện loại tấn cơng cụ thể
Mục đích của khối phát hiện loại tấn công cụ thể là sử dụng các thuật tốn
học máy phù hợp để dự đốn chính xác lại dữ liệu bất thường có phải là tấn
cơng DDoS hay không. Phần này nghiên cứu sinh tập trung vào hai loại tấn
công DDoS là tấn công theo dung lượng và theo giao thức. Mà đại diện là tấn
công tràn ICMP cho loại theo dung lượng và tấn công tràn TCP-SYN cho loại

theo giao thức.
KNN có đặc điểm ít phức tạp hơn nhưng lại “lười” trong q trình huấn
luyện. Tồn bộ dữ liệu huấn luyện được lưu trữ để thực hiện tính tốn khi
chạy dự đốn, do đó tốn khơng gian lưu trữ. KNN phù hợp cho các dữ liệu
nhẹ, ít chiều, có độ phức tạp thấp, phù hợp với tấn cơng tràn TCP-SYN. Đối
với tấn cơng ICMP, kích thước gói tin lớn, lên tới 1,400bytes, KNN khơng
cịn phù hợp, nghiên cứu sử dụng DNN vì độ chính xác cao và thời gian xử
lý đủ thấp.
3.5. Tập dữ liệu và các đặc trưng dữ liệu
Các dữ liệu sử dụng bao gồm:
- Dữ liệu CAIDA, dữ liệu DDoSDB.
- Dữ liệu thường đo tại trung tâm mạng ĐH Bách khoa Hà Nội và Lab
nghiên cứu. Dữ liệu giả lập từ phần mềm Bonesi.
3.5.1. Bộ dữ liệu tấn công CAIDA
Bộ dữ liệu CAIDA 2007 là lưu lượng tấn công DDoS vào ngày 4 tháng 8
năm 2007 (20:50:08 UTC đến 21:56:16 UTC) do Trung tâm Phân tích dữ liệu
Internet ứng dụng cung cấp. Bảng 3.2 trình bày số lượng IP nguồn, cổng
nguồn của TCP-SYN và số lượng IP nguồn, số lượng gói của ICMP trong bộ
dữ liệu CAIDA 2007.
3.5.2. Bộ dữ liệu DDoSDB
DDoSDB là một nền tảng giúp các nạn nhân của các cuộc tấn công DDoS,
cộng đồng học thuật và cộng đồng bảo mật chia sẻ và tiếp cận thông tin thực

15


tế về các cuộc tấn công DDoS. Dữ liệu tấn công ICMP gồm 8 tệp và dữ liệu
tấn công TCP gồm 15 tệp.
Bảng 3.2 Số IP và cổng trong bộ dữ liệu CAIDA 2007
Thời gian

(giây)

Số IP
(TCP)

Số cổng
TCP

Số IP
(ICMP)

Số gói
ICMP

0 - 20

2

149

9

7363

20 - 40

72

424


10

7191

40 - 60

84

946

9

6646

60 - 80

94

1291

65

9580

80 - 100

177

35702


739

370873

100 - 120

242

82685

1368

983884

120 - 140

332

134838

2126

1616179

140 - 160

421

180078


2714

2291028

160 - 180

504

233090

3365

2905617

180 - 200

585

186489

4020

2307083

200 - 220

663

100631


4583

1238029

220 - 240

747

265239

5218

2970610

240 - 260

817

262481

5817

3059760

260 - 280

890

254574


6447

3053683

280 - 300
1043
253794
7083
3013000
3.5.3. Bộ dữ liệu tự đo đạc và tạo bởi phần mềm Bonesi
Để bổ sung dữ liệu cho huấn luyện và thử nghiệm các thuật toán học máy,
nghiên cứu sinh thực hiện đo đạc dữ liệu thông thường tại Trung tâm mạng
Đại học Bách khoa Hà Nội và tại Lab nghiên cứu.
Phần mềm Bonesi cũng được sử dụng để tạo ra bộ dữ liệu tấn công tương
tự để làm phong phú thêm tập huấn luyện và thử nghiệm.
3.5.4. Lựa chọn đặc trưng cho các thuật toán học máy
LoF được triển khai tại khối phát biện bất thường, tập trung nhiều vào phát
hiện bất lường liên quan tới tấn công TCP-SYN và ICMP, nên đặc trưng được
lựa chọn cho thuật toán này là số bytes trong mỗi giây và số lượng luồng
trong mỗi giây.
Đối với KNN, thuật toán được sử dụng để phát hiện tấn công TCP-SYN,

16


hai đặc trưng quan trọng có thể sử dụng là số cổng trên mỗi địa chỉ IP hay
entropy của cổng trên mỗi địa chỉ IP.
Đối với DNN, thuật toán được sử dụng để phát hiện tấn công ICMP, đặc
trưng phù hợp là số bytes trên giây và số gói ICMP trên mỗi địa chỉ IP.


Hình 3.9 Mơ hình thử nghiệm
3.6. Thực hiện thử nghiệm và đánh giá giải pháp
3.6.1. Mô hình thử nghiệm

Hình 3.9 là mơ hình thử nghiệm được cài đặt trên các máy chủ vật
lý tách rời và kết nối mạng với nhau. Bộ điều khiển sử dụng là Ryu
và thiết bị chuyển mạch sử dụng OvS. Các bộ dữ liệu đã phân tích
bên trên được sử dụng để huấn luyện mơ hình và thử nghiệm.
3.6.2. Kết quả thử nghiệm phát hiện bất thường
Hình 3.10 là kết quả Recall của mơ hình với các giá trị k thay đổi. Từ k=6
trở đi Recall ở mức cao và ít thay đổi. Do đó chọn k=6 cho mơ hình. Hình
3.11 là kết quả trạng thái của hệ thống thay đổi từ bình thường sang bất thường
khi số luồng tăng lên, tương tự khi số gói tăng lên.
Với k=6, kết quả thử nghiệm cho thấy mơ hình có accuracy bằng 95,34%,
Precision bằng 93,59%, Recall bằng 98,57% và F1-score bằng 96,01%

17


Hình 3.10 Recall và độ lệch chuẩn
phụ thuộc vào k điểm lân cận

Hình 3.11 Số lượng luồng trên mỗi
giây và trạng thái của hệ thống

3.6.3. Kết quả thử nghiệm phát hiện tấn công DDoS cụ thể
Bảng 3.9 Kết quả sử dụng thuật tốn DNN và KNN phát hiện tấn cơng
ICMP và TCP-SYN
Các thông số
Thời gian huấn luyện (s)


DNN
0.5542

KNN
0

Thời gian dự đoán (s)

0.0003

0.0022

Accuracy (%)

99.906

97.790

Precision (%)

100.00

96.130

Recall (%)

99.794

100.00


F1-Score
99.897
98.027
Thực hiện thử nghiệm để lựa chọn thơng số của KNN và DNN. Sau khi
chạy vịng lặp thử nghiệm với các giá trị k, tốc độ học và vịng lặp. Ta có các
giá trị phù hợp của mơ hình là k=9 với KNN, tốc độ học và số vòng lặp của
DNN lần lượt bằng 0,0025s và 200. Kết quả phát hiện tấn công DDoS được
thể hiện trong Bảng 3.9

3.7. Kết luận
Phần này trình bày đề xuất giải pháp mới phát hiện bất thường và
tấn công DDoS sử dụng các thuật toán máy học phù hợp cho mỗi loại
tấn công trong mạng SDN. Kết quả thực nghiệm cho thấy hệ thống
chạy ổn định, kết quả phát hiện nhanh và chính xác

18


CHƯƠNG 4. ĐỀ XUẤT GIẢI PHÁP GIẢM THIỂU TẤN CÔNG
DDoS TRONG MẠNG ISP SỬ DỤNG CÁC THUẬT TOÁN
MÁY HỌC
4.1. Giới thiệu
Trong chương này, nghiên cứu sinh tiếp tục đề xuất một giải pháp
mới nối tiếp công việc của phần trên. Đó là giải pháp giảm thiểu tấn
cơng DDoS sau khi đã phát hiện ra có tấn cơng.
4.2. Đề xuất giải pháp giảm thiểu tấn cơng DDoS

Hình 4.2. Mơ hình kiến trúc tích hợp hệ thống phát hiện, giảm thiểu tấn
cơng DDoS


Hình 4.2 là kiến trúc của giải pháp phát hiện và giảm thiểu tấn công
DDoS. Mô-đun giảm thiểu tấn công được tích hợp vào bộ điều khiển.
Mơ-đun giám sát từng luồng theo địa chỉ IP. Nếu có tấn cơng sẽ chặn
đúng luồng IP đó, khơng làm ảnh hưởng đến các luồng khác.
4.3. Cửa sổ thời gian giám sát thích ứng
Thời gian thực là một yếu tố quan trọng trong hoạt động mạng thơng
thường vì lưu lượng phải được theo dõi và xử lý trực tuyến. Nhìn
chung, nhiều đặc trưng của tập dữ liệu khơng thể trích xuất ngay lập
tức theo thời gian thực vì chúng phải được tính tốn dựa trên tập hợp
19


tích lũy các điểm dữ liệu trong một khoảng thời gian. Khoảng thời
gian này được gọi là cửa sổ thời gian giám sát (Monitoring Time
Window - MTW). Cửa sổ thời gian giám sát được tối ưu và điều chỉnh
theo giời gian thực phụ thuộc vào đặc điểm dữ liệu của mạng với thuật
tốn Xgboost. Hình 4.5 mơ tả chi tiết quá trình xác định cửa sổ giám
sát, giá trị k tương ứng và chạy thử nghiệm.

Hình 4.5 Quy trình giảm thiểu tấn cơng DDoS dựa trên thuật tốn học máy

4.4. Đánh giá hiệu năng
4.4.1. Xây dựng mơ hình thực nghiệm và thiết lập các tham số
Mơ hình thử nghiệm với các thơng số cấu hình giống như phần đề xuất
giải pháp phát hiện tấn công DDoS cụ thể ở Chương 3. Mơ hình vẫn sử dụng
phần mềm TCPReplay để phát lại lưu lượng tấn công CAIDA 2007.
4.4.2. Kết quả thực nghiệm

Các kết quả cho thấy giải pháp ngăn chặn tốt các tấn cơng TCP-SYN

và ICMP: 99.4% gói ICMP tấn cơng bị chặn, 98.9% luồng TCP-SYN
tấn công bị chặn. Dữ liệu thường đi qua đầy đủ, không bị chặn nhầm.
4.5. Kết luận
Giải pháp giảm thiểu tấn công DDoS trong mạng SDN sử dụng
thuật toán học máy cho kết quả giảm thiểu tốt, ít ảnh hưởng đến các
20


dữ liệu thường. Ngoài ra, cửa sổ giám sát cũng được lựa chọn tối ưu
với thuật toán học máy XGBoost.
CHƯƠNG 5. ĐỀ XUẤT MƠ HÌNH TỰ ĐỘNG MỞ RỘNG TÀI
NGUN CHO MẶT PHẲNG ĐIỀU KHIỂN SDN VỚI KIẾN
TRÚC CONTAINER
5.1. Giới thiệu
Khi có tấn cơng DDoS xảy ra mà hệ thống không kịp giảm thiểu,
hoặc nhu cầu sử dụng mạng tăng gây quá tải cho bộ điều khiển. Trong
phần này, nghiên cứu áp dụng container, kubernetes triển khai bộ điều
khiển tập trung để mở rộng khả năng của mặt phẳng điều khiển.

Hình 5.1 Mơ hình kiến trúc cho giải pháp container hóa bộ điều khiển
trong mạng SDN

5.2. Mơ hình đề xuất
5.2.1 Giải pháp tự động mở rộng mặt phẳng điều khiển dựa trên
Kubernetes
Giải pháp sử dụng Container để đóng gói bộ điều khiển và phần mềm
ZooKeeper trong một gói. Sử dụng Kubernetes để quản lý tăng giảm
số lượng gói (số lượng bộ điều khiển) theo tài nguyên của hệ thống.
Khi hệ thống lên tới ngưỡng tài nguyên, Kubernetes sẽ kích hoạt một
21



gói gồm bộ điều khiển và ZooKeeper. Các xử lý của bộ điều khiển quá
tải sẽ chuyển sang cho bộ điều khiển mới xử lý. ZooKeeper là phần
mềm cho phép các bộ điều khiển trao đổi và chuyển đổi trạng thái hoạt
động.
5.2.2. Mơ hình chuyển dịch thiết bị điều khiển tự động

Hình 5.2 Quá trình chuyển đổi bộ điều khiển
5.2.3. Đề xuất thuật tốn thích ứng cho thiết bị điều khiển dựa trên luồng
mới NACAT
Ý tưởng chính của thuật tốn thích ứng cho thiết bị điều khiển dựa trên
luồng mới NACAT là nhanh chóng thay đổi số lượng bộ điều khiển trong
nhóm theo tốc độ gói packet_in đến hệ thống.
5.3. Kết quả đánh giá
5.3.1. Thiết lập mơ hình thử nghiệm

Hình 5.3 mô tả cơ sở hạ tầng vật lý để thực hiện thử nghiệm. Cụm
Kubernetes chứa ba máy chủ (một cho nút Master và các máy khác
cho các nút Worker) để triển khai mặt phẳng điều khiển với khả năng
tính toán đáng kể. Open vSwitch (OVS) được đặt trên máy chủ để tăng
khả năng gửi một số lượng lớn các yêu cầu luồng. Sử dụng một thiết
bị chuyển mạch lớp 2 của Cisco để kết nối tất cả các máy chủ.
22


Hình 5.3 Cấu hình mơ hình thử nghiệm

5.3.2. Đánh giá kết quả thử nghiệm


Hình 5.5 Hiệu quả tự động mở rộng của NACAT khi có tấn cơng TCP-SYN

Hình 5.6 Sự thay đổi số lượng thiết bị điều khiển bộ điều khiển của NACAT
khi có tấn cơng tràn TCP-SYN

23


×