ICMP Internet Control Message Giao thức thông báo điều khiển InternetProtocolIDS Intrusion Detection System Hệ thống phát hiện xâm nhập IPS Intrusion Prevention System Hệ thống chống xâm
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
Trang 2TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
LUẬN ÁN TIẾN SĨ KỸ THUẬT VIỄN THÔNG
NGƯỜI HƯỚNG DẪN KHOA HỌC:
PGS.TS TRƯƠNG THU HƯƠNGPGS.TS NGUYỄN TÀI HƯNG
Hà Nội – 2019
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan rằng các kết quả khoa học được trình bày trong luận án này là thànhquả nghiên cứu của bản thân tôi trong suốt thời gian làm nghiên cứu sinh và chưa từng xuấthiện trong công bố của các tác giả khác Các kết quả đạt được là chính xác và trung thực
Hà Nội, ngày 15 tháng 5 năm 2019
Tác giả luận án
Đặng Văn Tuyên
Giáo viên hướng dẫn khoa học
Trang 4NCS cũng xin trân trọng cảm ơn Phòng Đào tạo, Trường Đại học Bách khoa Hà Nội
đã tạo điều kiện giúp đỡ về mặt thủ tục; Trường Đại học Kỹ thuật – Hậu cần CAND, giađình và đồng nghiệp tạo điều kiện về mặt thời gian cho NCS được nghiên cứu và hoànthành Luận án
Trong quá trình thực hiện đề tài nghiên cứu, tuy bản thân đã có nhiều cố gắng nhưng
do giới hạn về trình độ hiểu biết, kinh nghiệm thực tế, kinh nghiệm nghiên cứu khoa họcnên Luận án không tránh khỏi những thiếu sót NCS kính mong nhận được sự đóng góp ýkiến của các nhà khoa học, cán bộ nghiên cứu, của các thầy, cô giáo, bạn bè và đồngnghiệp để NCS hoàn thiện hơn cả về lý luận khoa học lẫn thực tiễn
Xin trân trọng cảm ơn
Hà Nội ngày 15 tháng 05 năm 2019
NGHIÊN CỨU SINH
Đặng Văn Tuyên
Trang 5MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
DANH MỤC CÁC CHỮ VIẾT TẮT vii
DANH MỤC HÌNH VẼ x
DANH MỤC CÁC BẢNG BIỂU xiii
MỞ ĐẦU xiv
CHƯƠNG 1: TẤN CÔNG DDOS VÀ CÁC GIẢI PHÁP PHÒNG CHỐNG TRONG MẠNG SDN/OPENFLOW 1
1.1 Giới thiệu chương 1
1.2 Tổng quan về tấn công DDoS 1
1.2.1 Khái niệm 1
1.2.2 Phân loại tấn công DDoS 2
1.2.3 Các giải pháp phòng chống DDoS dựa trên công nghệ mạng truyền thống 5
1.2.4 Yêu cầu và thách thức đối với giải pháp phát hiện và ngăn chặn, giảm thiểu tấn công DDoS 7
1.3 Kỹ thuật mạng cấu hình bởi phần mềm SDN 10
1.4 Giao thức OpenFlow 12
1.4.1 Cấu trúc và phạm vi chuẩn hóa của Openflow 13
1.4.2 Nhận dạng và quản lý lưu lượng trên bộ chuyển mạch Openflow 14
1.4.3 Các bản tin trao đổi giữa bộ điều khiển và bộ chuyển mạch Openflow 14
1.4.4 Quy trình xử lý gói tin trong Openflow 16
1.4.5 Quản lý các mục luồng trong bộ chuyển mạch Openflow 17
Trang 61.5 Các giải pháp phòng chống DDoS dựa trên kiến trúc và kỹ thuật SDN/Openflow 18
1.5.1 Kiến trúc và nguyên lý hoạt động chung 18
1.5.2 Các kỹ thuật phát hiện tấn công 20
1.5.3 Các kỹ thuật ngăn chặn, giảm thiểu tấn công 22
1.6 Tấn công DDoS tới các thành phần trong kiến trúc mạng SDN/Openflow và các giải pháp phòng chống 23
1.6.1 Tấn công DDoS tới các thành phần trong kiến trúc mạng SDN/Openflow 23
1.6.2 Kỹ thuật phát hiện và giảm thiểu tấn công 25
1.7 Kết luận chương 27
CHƯƠNG 2: ĐỀ XUẤT GIẢI PHÁP PHÒNG CHỐNG TẤN CÔNG DDOS DỰA TRÊN DỮ LIỆU THỐNG KÊ VÀ CƠ CHẾ XỬ LÝ GÓI TIN CỦA KỸ THUẬT SDN/OPENFLOW 29
2.1 Giới thiệu chương 29
2.2 Giải pháp phát hiện và giảm thiểu tấn công DDoS dựa trên mô hình dự đoán làm trơn hàm mũ tham số thống kê lưu lượng 29
2.2.1 Đặt vấn đề 29
2.2.2 Kiến trúc hệ thống và các trạng thái hoạt động 30
2.2.3 Lựa chọn tham số và chỉ số thống kê lưu lượng 32
2.2.4 Lựa chọn và xây dựng mô hình dự đoán chỉ số thống kê lưu lượng 33
2.2.5 Phát hiện và giảm thiểu tấn công 35
2.2.6 Phân tích và đánh giá hiệu năng của giải pháp 37
2.3 Giải pháp giảm thiểu tấn công SYN Flood dựa trên cơ chế ủy nhiệm gói tin SYN tại bộ điều khiển 41
2.3.1 Đặt vấn đề 41
2.3.2 Kiến trúc hệ thống đề xuất 42
2.3.3 Lựa chọn mô hình ủy nhiệm gói tin SYN 43
2.3.4 Hoạt động của hệ thống SSP 44
2.3.5 Phân tích và đánh giá hiệu năng của giải pháp 51
Trang 72.4 Giải pháp đánh dấu gói tin PLA DFM phục vụ truy vết nguồn tấn công 58
2.4.1 Đặt vấn đề 58
2.4.2 Khái niệm về đánh dấu gói tin và các kỹ thuật cơ bản 59
2.4.3 Đề xuất cấu trúc và hoạt động của PLA DFM trên kiến trúc mạng SDN/Openflow 61
2.4.4 So sánh và đánh giá hiệu năng của giải pháp 66
2.5 Kết luận chương 70
CHƯƠNG 3 ĐỀ XUẤT GIẢI PHÁP PHÒNG CHỐNG TẤN CÔNG DDOS DỰA TRÊN KỸ THUẬT SDN/OPENFLOW SỬ DỤNG THÊM BỘ PHÂN TÍCH VÀ XỬ LÝ LƯU LƯỢNG 72 3.1 Giới thiệu chương 72
3.2 Những hạn chế của kiến trúc và kỹ thuật SDN/Openflow trong phòng chống tấn công DDoS 72 3.3 Đề xuất kiến trúc mạng SDN/Openflow mở rộng trên cơ sở bổ sung bộ phân tích và xử lý lưu lượng SD 73
3.3.1 Kiến trúc tổng quát 74
3.3.2 Điều khiển chuyển tiếp lưu lượng tới SD và xử lý lưu lượng tại SD 75
3.4 Giải pháp phân loại và giảm thiểu tấn công DDoS dựa trên kiến trúc SDN/Openflow mở rộng và thuật toán logic mờ 76
3.4.1 Đặt vấn đề 76
3.4.2 Phân tích đặc tính lưu lượng tấn công DDoS để chọn tham số phân loại lưu lượng 76
3.4.3 Cấu trúc hệ thống 79
3.4.4 Xác định trạng thái của máy chủ 79
Trang 83.4.5 Chuyển tiếp gói tin giữa các thực thể trong hệ thống 81
3.4.6 Phân loại lưu lượng và giảm thiểu tấn công DDoS dựa trên thuật toán suy luận logic mờ FDDoM 83
3.4.7 Đánh giá hiệu năng của giải pháp 87
3.5 Phát hiện và giảm thiểu tấn công SYN Flood tới mạng SDN/Openflow sử dụng cơ chế ủy nhiệm gói tin SYN tại bộ phân tích và xử lý lưu lượng 91
3.5.1 Đặt vấn đề 91
3.5.2 Cấu trúc hệ thống 92
3.5.3 Hoạt động của hệ thống 92
3.5.4 Phân tích và đánh giá hiệu năng 98
3.6 Kết luận chương 104
KẾT LUẬN 106
DANH MỤC CÁC CÔNG TRÌNH ĐÃ CÔNG BỐ CỦA LUẬN ÁN 108
TÀI LIỆU THAM KHẢO 109
Trang 9DANH MỤC CÁC CHỮ VIẾT TẮT
ACK_Num Acknowledgement Number Số hiệu xác nhận
API Application Programming Giao diện chương trình ứng dụng
InterfaceART Average Retrieve Time Thời gian kết nối trung bình
ATM Asynchronous Transfer Mode Truyền dữ liệu cận đồng bộ
CDF Cumulative Distribution Hàm phân phối tích lũy
Function
DDoS Distributed Denial of Service Tấn công từ chối dịch vụ phân tánDFM Deterministic Flow Marking Kỹ thuật đánh dấu gói tin theo luồng
DPM Deterministic Packet Marking Kỹ thuật đánh dấu xác định
DPPM Dynamic Probabilistic Packet Kỹ thuật đánh dấu gói tin theo xác suất
DSCP Dynamic probabilistic packet Kỹ thuật đánh dấu gói tin theo xác suất
FDDoM Fuzzy Logic-based DDoS Phát hiện và giảm thiểu tấn công DDoS
Mitigation dựa trên thuật toán logic mờ
FTP File Transfer Protocol Giao thức truyền tệp tin
FMT Flow Monitoring Table Bảng giám sát luồng
HTTP HyperText Transfer Protocol Giao thức truyền tải siêu văn bảnIAT Inter Arrival Time Khoảng thời gian liên gói tin
Trang 10ICMP Internet Control Message Giao thức thông báo điều khiển Internet
ProtocolIDS Intrusion Detection System Hệ thống phát hiện xâm nhập
IPS Intrusion Prevention System Hệ thống chống xâm nhập
ISP Internet Service Provider Nhà cung cấp dịch vụ Internet
IRC Internet Relay Chat Dịch vụ chat Internet
MPR Marked Packet Rate Tỷ lệ gói tin bị đánh dấu
MSR Marked Size Rate Tỷ lệ dung lượng gói tin bị đánh dấu
MTU Maxium Transmission Unit Ngưỡng kích thước đơn vị truyền
VirtualizationNTP Network Time Protocol Giao thức đồng bộ thời gian mạng
ONF Open Networking Foudation Tổ chức chuẩn hóa mạng mở
PLA DFM Packet Length Adaptive Đánh dấu gói tin xác định theo luồng
Deterministic Flow Marking có sự tương thích chiều dài góiPpF Packet number per Flow Số gói tin trong một luồng
PPM Probabilistic Packet Marking Đánh dấu gói tin theo xác suất
REST API Representational State Giao diện trao đổi dựa vào biến trạng
SAN Source Address Number Số địa chỉ IP nguồn
SCR Successful Connection Rate Tỷ lệ kết nối thành công
SDH Synchronous Digital Hệ thống phân cấp đồng bộ
HierarchySDN Software Defined Kỹ thuật mạng cấu hình bởi phần mềm
Networking
SFD SYN Flood Detection Phát hiện tấn công SYN Flood
SMR Successful Mark Rate Tỷ lệ đánh dấu thành công
SOHO Small Office/Home Office Văn phòng, cơ quan nhỏ
Trang 11SONET Synchronous Optical Mạng quang đồng bộ
NETwork
SPA Source-port number Per Số cổng nguồn trên một địa chỉ nguồn
Address
SSDP Simple Service Discovery Giao thức phát hiện dịch vụ đơn giản
ProtocolSSG SDN-based SYN Flood Chống tấn công SYN Flood dựa vào
SSP SDN based SYN Proxy Ủy nhiệm gói tin SYN dựa vào công
nghệ SDNSSL Secure Sockets Layer Tiêu chuẩn bảo mật an toàn lớp ứng
dụngSVM Support Vector Machine Máy vec-tơ hỗ trợ
SYN-ACK SYNchronize Gói tin trả lời yêu cầu kết nối
ACKnowledgementTCB Transmission Control Block Khối điều khiển truyền
TCP Transmission Control Giao thức điều khiển truyền
Protocol
TLS Transport Layer Security Bảo mật tầng truyền tải
TRW-CB TRW-Credit Based Thăm dò ngưỡng theo độ tin cậyUDP User Datagram Protocol Giao thức truyền gói dữ liệu người
dùngVLAN Virtual Local Area Network Mạng LAN ảo
VPN Virtual Private Network Mạng riêng ảo
WMA Weighted Moving Average Mô hình trung bình động có trọng số
Trang 12DANH MỤC HÌNH VẼ
Hình 1.1 Lưu lượng tấn công DDoS được huy động từ nhiều nguồn trên Internet 2
Hình 1.2 Phân loại các kỹ thuật tấn công DDoS 3
Hình 1.3 Quá trình bắt tay ba bước trong kết nối TCP (a) và cơ chế tấn công TCP SYN Flood (b) 4
Hình 1.4 Kiến trúc mạng cấu hình bởi phần mềm SDN 11
Hình 1.5 Cấu trúc và phạm vi chuẩn hóa của giao thức Openflow 13
Hình 1.6 Cấu trúc của một mục luồng 15
Hình 1.7 Quá trình xử lý gói tin tại bộ chuyển mạch theo cơ chế đường ống 16
Hình 1.8 Yêu cầu xử lý gói tin khi không khớp với một mục luồng có sẵn trên bộ chuyển mạch 17 Hình 1.9 Cấu trúc chung hệ thống giải pháp phòng chống tấn công DDoS dựa trên kỹ thuật SDN/Openflow 19
Hình 1.10 Các phương pháp tấn công tới lớp Hạ tầng mạng 24
Hình 1.11 Các phương pháp tấn công tới Lớp điều khiển 24
Hình 1.12 Các phương pháp tấn công tới Lớp Ứng dụng 24
Hình 1.13 Quá trình xử lý gói tin của một kết nối TCP trong cơ chế CM 26
Hình 2.1 Kiến trúc hệ thống đề xuất cho giải pháp dựa trên phương pháp thống kê sử dụng giải thuật dự đoán làm trơn hàm mũ 30
Hình 2.2 Sơ đồ chuyển tiếp trạng thái của hệ thống cho một máy chủ/dịch vụ 31
Hình 2.3 Mô hình phát hiện và phân loại lưu lượng tấn công 35
Hình 2.4 Giá trị chỉ số SPA (a) và DSPA (b) 39
Hình 2.5 Giá trị chỉ số PpF và DPpF 39
Hình 2.6 Kiến trúc hệ thống giải pháp Ủy nhiệm gói tin SYN trên Bộ điều khiển SSP 43
Hình 2.7 Nguyên lý hoạt động của hai loại SYN proxy 44
Hình 2.8 Quá trình xử lý yêu cầu kết nối của một gói tin SYN trong giải pháp SSP 45
Hình 2.9 Lưu đồ quá trình capture và xử lý các gói tin bắt tay ba bước tại OFS 46
Hình 2.10 Lưu đồ hoạt động của mô đun SPM tại bộ điều khiển 48
Hình 2.11 Thống kê CDF khoảng thời gian giữa gói tin SYN và gói tin CliACK của lưu lượng mạng thực tế 50
Hình 2.12 Hiệu chỉnh thời gian chờ của các luồng 50
Trang 13Hình 2.13 Sơ đồ chuyển tiếp chính sách xử lý gói tin SYN tại bộ chuyển mạch 51
Hình 2.14 Mô hình testbed đánh giá hiệu năng giải pháp SSP 52
Hình 2.15 Tỷ lệ kết nối thành công từ lưu lượng lành tính khi máy chủ chịu tấn công DDoS với cường độ tấn công khác nhau 53
Hình 2.16 Thời gian kết nối trung bình của lưu lượng lành tính khi máy chủ chịu tấn công với cường độ tấn công khác nhau 53
Hình 2.17 Số kết nối đang mở tại máy chủ với các cường độ tấn công khác nhau 54
Hình 2.18 Giao diện màn hình đo sự chiếm dụng tài nguyên Bộ điều khiển ở tốc độ tấn công 700 pps 57
Hình 2.19 Tỷ lệ chiếm dụng CPU của bộ điều khiển tại các cường độ tấn công khác nhau 57
Hình 2.20 Dung lượng bộ nhớ bị chiếm dụng của bộ điều khiển ở cường độ tấn công khác nhau 57 Hình 2.21 Phân bố số lượng gói tin trên 1 luồng từ bộ dữ liệu CAIDA 61
Hình 2.22 Cấu trúc hệ thống giải pháp đánh dấu gói tin PLA DFM dựa trên kiến trúc SDN/Openflow 62
Hình 2.23 Phân bố chiều dài của gói tin thứ nhất từ bộ dữ liệu CAIDA 63
Hình 2.24 Đánh dấu gói tin PLA DFM 63
Hình 2.25 Quá trình đánh dấu gói tin PLA DFM tại Bộ điều khiển mạng SDN/Openflow 66
Hình 2.26 So sánh tác động của PLA DFM tới tiêu đề gói tin đầu tiên của luồng 67
Hình 2.27 SMR của PLA DFM và DFM khi MT=288 68
Hình 2.28 MPR của PLA DFM và DFM khi MT=288 68
Hình 2.29 MSR của PLA DFM và DFM khi MT=288 69
Hình 3.1 Kiến trúc giải pháp bổ sung bộ phân tích và xử lý lưu lượng dựa trên cơ chế SDN/Openflow 74
Hình 3.2 Biểu đồ phân bố IAT của lưu lượng đến 77
Hình 3.3 Phân bố số lượng gói trong từng luồng 78
Hình 3.4 Kiến trúc hệ thống đề xuất cho giải pháp phân loại và giảm thiểu tấn công dựa trên thuật toán suy luận logic mờ FDDoM 80
Hình 3.5 Sơ đồ tuần tự của hệ thống khi máy chủ ở trạng thái "Không bị tấn công" 82
Hình 3.6 Sơ đồ tuần tự của sự kiện Packet in khi máy chủ ở trạng thái "Nghi ngờ bị tấn công" 83
Hình 3.7 Sơ đồ tuần tự của sự kiện “Kết thúc chu kỳ giám sát” khi máy chủ ở trạng thái "Nghi ngờ bị tấn công" 83
Hình 3.8 Sơ đồ tuần tự của sự kiện Packet in khi máy chủ ở trạng thái "Đang bị tấn công" 84
Trang 14Hình 3.9 Mờ hoá IAT với hai hàm thành viên Low và High 85
Hình 3.10 Mờ hoá PpF với hai hàm thành viên Low và High 86
Hình 3.11 Giá trị đầu ra của chỉ thị Z của thuật toán FDDoM và độ nhạy lọc bỏ DRF .88
Hình 3.12 Tỷ lệ lọc bỏ nhầm FPRF 88
Hình 3.13 So sánh số mục luồng tồn tại trên bộ chuyển mạch biên OFS 90
Hình 3.14 Cấu trúc chi tiết và tương tác giữa các module chức năng trong giải pháp SSG 93
Hình 3.15 Mô hình thuật toán phát hiện tấn công SYN Flood đề xuất sử dụng trong SSG 93
Hình 3.16 Quá trình capture và điều hướng các gói tin của một kết nối TCP lành tính thông qua các mục luồng trên OFS khi máy chủ nội bộ ở trạng thái “Không bị tấn công” 95
Hình 3.17 Lưu đồ thuật toán quá trình xử lý gói tin SYN đến tại SD 96
Hình 3.18 Lưu đồ thuật toán giám sát quá trình bắt tay ba bước tại SD 97
Hình 3.19 Sơ đồ tuần tự quá trình xác thực địa chỉ IP nguồn của gói tin SYN bằng RST cookie 98 Hình 3.20 Cấu trúc testbed thử nghiệm và đánh giá giải pháp SSG 98
Hình 3.21 So sánh tỷ lệ kết nối thành công và thời gian kết nối trung bình giữa Openflow, cơ chế CM và giải pháp SSG 99
Hình 3.22 Sự chiếm dụng tài nguyên bộ nhớ và tài nguyên CPU trên OFS và SD của các giải pháp thử nghiệm 101
Hình 3.23 Sự tương tác giữa các thực thể của SSG trong quá trình xử lý gói tin bắt tay ba bước của một kết nối lành tính 102
Hình 3.24 Sự tương tác giữa các thực thể trong quá trình xử lý gói tin SYN giả mạo địa chỉ IP của cơ chế CM và giải pháp SSG 103
Hình 3.25 Mức độ gia tăng lưu lượng trên giao diện bộ chuyển mạch của giải pháp SSG so với cơ chế CM 103
Trang 15DANH MỤC CÁC BẢNG BIỂU
Bảng 1.1 Quan hệ giữa kết quả phân loại của giải pháp và đặc tính thực của lưu lượng 8
Bảng 1.2 So sánh các kỹ thuật phát hiện và giảm thiểu tấn công DDoS tới kiến trúc mạng SDN/Openflow theo chính sách và quy tắc xử lý gói tin 25
Bảng 2.1 Các tham số thống kê sử dụng để phát hiện và phân loại lưu lượng tấn công DDoS 32
Bảng 2.2 Thuật toán phát hiện tấn công 35
Bảng 2.3 Thuật toán phân loại lưu lượng tấn công 36
Bảng 2.4 Thuật toán Lọc bỏ lưu lượng tấn công 37
Bảng 2.5 Độ nhạy và tỷ lệ báo động nhầm trong phân loại lưu lượng và giảm thiểu tấn công 40
Bảng 2.6 Ví dụ về cấu trúc và sắp xếp các mục luồng trong bảng luồng của SSP 47
Bảng 2.7 Cấu trúc bảng giám sát luồng FMT 48
Bảng 2.8 Tham số và kết quả phân tích lưu lượng lành tính từ bộ dữ liệu CAIDA 2013 56
Bảng 2.9 Các trường và số lượng gói tin yêu cầu trong mỗi luồng để đánh dấu trong DFM 60 Bảng 2.10 Một số giá trị MTU của các loại đường truyền phổ biến và giá trị MT tương ứng 64 Bảng 2.11 Kỹ thuật PLA DFM với tuỳ biến giá trị Checksum 65
Bảng 2.12 So sánh giữa các PLA DFM khác nhau với các giá trị K và MT 69
Bảng 2.13 Tỷ lệ gia tăng lưu lượng trong PLA DFM 69
Bảng 3.1 Số lượng luồng, số lượng địa chỉ IP nguồn và tổng lưu lượng gửi tới máy chủ của hai bộ dữ liệu CAIDA và Netnam 78
Bảng 3.2 Thuật toán xác định trạng thái của máy chủ 80
Bảng 3.3 Các loại các mục luồng dùng để điều hướng lưu chuyển gói tin trong hệ thống 81
Bảng 3.4 So sánh hiệu năng giải pháp FDDoM với giải pháp và mô hình mạng tương đồng 89 Bảng 3.5 Tổ chức các bảng luồng trên bộ chuyển mạch OFS của SSG 94
Bảng 3.6 Đặc tính các mục luồng trong các bảng luồng FT1 và FT3 thực hiện giám sát quá trình bắt tay ba bước 94
Bảng 3.7 Cấu trúc một mục tin trong danh sách HOCs 97 Bảng 3.8 Đặc tính thống kê của bộ lưu lượng lành tính phân tích từ bộ lưu lượng CAIDA 103
Trang 16MỞ ĐẦU
1 Tấn công từ chối dịch vụ phân tán và công nghệ SDN
1.1 Tấn công từ chối dịch vụ phân tán
- Trong những năm gần đây, sự phát triển mạnh mẽ của công nghệ thông tin và truyềnthông đã cho ra đời hàng loạt các dịch vụ mạng phục vụ hầu khắp các lĩnh vực hoạt động xãhội của con người Các giao dịch, xử lý và trao đổi thông tin, lưu trữ dữ liệu dần chuyển sangthực hiện trực tuyến trên mạng Internet Bên cạnh đó, sự phát triển mạnh mẽ của công nghệkết nối vạn vật (IoTs) làm cho số lượng và nhu cầu lưu lượng kết nối Internet tăng lên nhanhchóng Vấn đề đảm bảo an toàn, tin cậy cho tổ chức và khai thác các dịch vụ được đặt lênhàng đầu Với cơ chế hình thành dựa trên sự ghép nối của các hệ tự trị (Autonomous System)thiếu sự kiểm soát chung, Internet xuất hiện và ẩn chứa nhiều nguy cơ tấn công gây mất anninh mạng trong đó có hình thức tấn công từ chối dịch vụ (DoS) [1], tấn công từ chối dịch vụphân tán (sau đây gọi tắt là tấn công DDoS) [2]–[4] Mặc dù không gây lỗi dữ liệu, tấn côngDoS/DDoS có ảnh hưởng nghiêm trọng đến tính tin cậy, sẵn sàng trong tổ chức và khai tháccác dịch vụ trên Internet Với kỹ thuật tấn công đơn giản, công cụ dễ tìm, khả năng phát tán
mã độc để huy động nguồn lực tấn công dễ dàng, khó phát hiện và ngăn chặn, tấn công DDoSngày càng trở nên nguy hiểm, được lợi dụng và phát động tấn công với quy mô ngày càngcao Các báo cáo của các công ty an ninh mạng cho thấy, diễn biến và quy mô các đợt tấncông ngày càng phức tạp [5]–[7] Theo báo cáo của Abor [8], ngày 27/2/2018 trang web lưutrữ mã nguồn GitHub ghi nhận một đợt tấn công DDoS với tốc độ lên tới 1,35 Tbps Qua đócho thấy, tấn công DDoS vẫn sẽ là nguy cơ an ninh lớn đối với tổ chức và đảm bảo chất lượngdịch vụ Internet trong tương lai
- Sự dịch chuyển và gia tăng nhu cầu làm việc, kinh doanh độc lập và giải trí cá nhân,cùng với sự hỗ trợ mạnh mẽ của các công nghệ truyền dẫn tiên tiến, sự phát triển các dịch vụnhà thông minh, IoTs,… mạng quy mô nhỏ (SOHO network) ngày càng phát triển và đang là
xu thế, chiếm tỷ lệ ngày càng tăng trong kết cấu internet [9]–[11] An ninh mạng nói chung vàtấn công DDoS nói riêng là một trong những vấn đề lớn đối với các mạng quy mô nhỏ này dotính đa dạng, thiếu kiểm soát của các thiết bị, dịch vụ mạng, và sự chú trọng, quan tâm, tínhchuyên nghiệp trong thiết kế, quản lý và vận hành mạng [12]–[14]
-Dựa trên công nghệ mạng truyền thống, nhiều giải pháp kỹ thuật nhằm phát hiện, phân loại
và ngăn chặn lưu lượng tấn công DDoS đã được đề xuất và triển khai [15]–[18] Cơ chế chungcủa các giải pháp này là sử dụng các bộ đo, điểm dò (probe), các bộ lấy mẫu và phân tích lưulượng trên hệ thống mạng để cung cấp thông tin thuộc tính của lưu lượng mạng trên toàn hệthống Thông tin lưu lượng được chuyển đến và xử lý phân tích nhờ các thuật toán phát hiện bấtthường hoặc dựa trên dấu hiệu tấn công để xác định có tấn công xảy ra hay không Khi có tấncông hệ thống sử dụng các thiết bị an ninh chuyên dụng như tường lửa, IPS để ngăn chặn, xóa bỏlưu lượng tấn công Một trong những vấn đề tồn tại lớn nhất của công nghệ mạng
Trang 17truyền thống đó là các thiết bị mạng vốn được phát triển các kỹ thuật xử lý gói tin theo chuẩnriêng bởi các nhà sản xuất khác nhau nên việc cấu hình tự động, thiết lập các tham số đểphòng chống DDoS là rất khó khăn Các thao tác xử lý khi tấn công xảy ra chủ yếu thực hiệnbằng tay, xóa bỏ, hạn chế lưu lượng bằng các thiết lập ngưỡng giới hạn dẫn tới xóa bỏ nhầmlưu lượng lành tính.
- Tấn công DDoS với kỹ thuật huy động nguồn tấn công rất lớn bằng các xác sống(zombies) và kỹ thuật giả mạo địa chỉ IP nguồn nên có thể tạo ra lưu lượng tấn công tăng độtbiến trong khoảng thời gian ngắn, vượt quá khả năng chịu đựng của dịch vụ, máy chủ và hệthống mạng đích Do cơ chế điều khiển cứng, đóng kín, các thiết bị mạng trong công nghệmạng truyền thống không thể tham gia ngăn chặn lưu lượng tấn công DDoS một cách tựđộng, làm cho các giải pháp phòng chống trong mạng có hiệu quả thấp, không có khả năngphân loại và xóa bỏ chính xác theo sự biến động của lưu lượng mạng Các giải pháp phòngchống mới chỉ tập trung phát hiện tấn công, do cơ chế đóng của các thiết bị mạng truyềnthống nên chưa có nhiều giải pháp giảm thiểu tấn công trực tuyến
- Tấn công DDoS là tấn công vào năng lực phục vụ của hệ thống mạng Chính vì vậy vớimỗi cấu trúc, quy mô, đặc điểm dịch vụ và phương pháp tổ chức dịch vụ mạng khác nhau thìđặc điểm phản ứng lại với lưu lượng tấn công, khả năng chịu đựng tấn công của các hệ thốngmạng là khác nhau Không có một giải pháp phòng chống tấn công, tham số hệ thống nào ápdụng chung cho tất cả các loại mạng, các quy mô mạng, các dịch vụ mạng khác nhau Vớimỗi hệ thống mạng cụ thể, người quản trị cần lựa chọn, tích hợp các giải pháp khác nhau,thiết lập tham số phù hợp với những đặc điểm riêng để có hiệu quả phòng chống tối ưu
1.2 Công nghệ SDN và kỹ thuật SDN/Openflow
- Với nhu cầu phát triển mạnh mẽ các dịch vụ mạng Internet, công nghệ điện toán đámmây, tính di động, và nhu cầu thay đổi linh động, mềm dẻo tài nguyên trên hệ thống mạng,công nghệ mạng điều khiển bởi phần mềm (gọi tắt là công nghệ SDN) ra đời trên cơ sở táchrời mặt phẳng điều khiển ra khỏi mặt phẳng dữ liệu, cho phép quản trị, điều khiển, thiết lậpcác chính sách mạng một cách tập trung trong khi trừu tượng hóa các tài nguyên mạng [19].Trong đó Openflow [20] là một trong những giao thức SDN đầu tiên được tập trung nghiêncứu, phát triển Kỹ thuật mạng SDN dựa trên giao thức Openflow (gọi tắt là kỹ thuậtSDN/Openflow) đã nhanh chóng thu hút nghiên cứu và bước đầu được ứng dụng trong cácsản phẩm phần cứng, phần mềm thương mại và mã nguồn mở
- Điểm khác biệt quan trọng của kỹ thuật SDN/Openflow so với kỹ thuật mạng truyềnthống ở chỗ: (1) các thiết bị mạng quản lý và xử lý lưu lượng theo luồng (flow), (2) khả năngcung cấp dữ liệu thống kê về lưu lượng nhờ các bộ đếm thống kê luồng có trong các bộ chuyểnmạch, và (3) khả năng điều khiển xử lý lưu lượng bằng phần mềm được lập trình, tùy biến bởi bộđiều khiển điều hành mạng Sự khác biệt này cho phép xây dựng các giải pháp quản trị, điều hànhmạng quy định và cấu hình chức năng của các thiết bị mạng vật lý, xử lý lưu lượng, v.v… bằngphần mềm Bên cạnh các giải pháp đề xuất về ứng dụng quản trị, tổ chức dịch vụ, nâng
Trang 18cao hiệu năng hệ thống mạng, SDN/Openflow cũng được nghiên cứu và đề xuất ứng dụng trong nhiều giải pháp an ninh mạng trong đó có các giải pháp phòng chống tấn công DDoS [21]–[26].
2 Những vấn đề còn tồn tại
1 Công nghệ SDN và kỹ thuật SDN/Openflow được đánh giá và kỳ vọng là công nghệmạng thay thế cho công nghệ, kỹ thuật mạng truyền thống Khác với kỹ thuật mạng truyềnthống, kỹ thuật SDN/Openflow có khả năng cung cấp dữ liệu thống kê về lưu lượng và có thểlập trình xử lý lưu lượng theo sự biến thiên của đặc tính ấy Đặc điểm này phù hợp với quytrình phát hiện và giảm thiểu tấn công DDoS Đã có một số công trình nghiên cứu, đề xuất cácgiải pháp phát hiện và giảm thiểu tấn công DDoS dựa trên dữ liệu thống kê và cơ chế xử lýgói tin của kỹ thuật SDN/Openflow Tuy nhiên, trong các giải pháp đề xuất:
+Một số giải pháp mới chỉ đưa ra thuật toán phát hiện tấn công, chưa có cơ chế phân loại
và giảm thiểu lưu lượng tấn công [22]
+ Hầu hết mới dừng lại ở ý tưởng giải pháp, thử nghiệm với quy mô thử chức năng, chưatriển khai trên hệ thống thử nghiệm hoặc đo phân tích với lưu lượng thật (như) [22], [27]–[29].+Một số giải pháp tích hợp các chức năng xử lý gói tin tại bộ chuyển mạch làm mất bảnchất SDN [28], [29], hoặc cơ chế xử lý gói tin trong SDN/Openflow chưa được ứng dụng[21], [25], [26] làm chậm thời gian đáp ứng và hiệu năng hệ thống
Vậy khi kỹ thuật SDN/Openflow được áp dụng rộng rãi trong hệ thống mạng, làm thế nào để khắc phục các vấn đề trên, nâng cao hiệu năng của các giải pháp phòng chống tấn công DDoS sử dụng trực tiếp dữ liệu thống kê về lưu lượng và cơ chế xử lý gói tin của kỹ thuật SDN/Openflow
để có thể áp dụng cho các mạng quy mô nhỏ như các mạng gia đình đang thiếu cơ chế đảm bảo
an toàn như hiện nay mà không cần bổ sung các thiết bị an ninh chuyên dụng?
2 Các trường thông tin thống kê được quy định trong giao thức Openflow là hạn chế nên
dữ liệu thống kê về lưu lượng theo kỹ thuật SDN/Openflow cũng sẽ bị giới hạn [20] Bêncạnh đó, theo triết lý SDN, giao diện Openflow vốn được sử dụng cho trao đổi thông tin điềukhiển, có mã hóa Các giải pháp phòng chống tấn công DDoS thực hiện truy vấn dữ liệuthống kê từ lớp điều khiển tới lớp hạ tầng mạng thông qua giao thức Openflow làm cho lưulượng trên giao diện này tăng lên, nhất là khi tấn công DDoS xảy ra [30] Điều này làm chocác giải pháp phòng chống tấn công DDoS sử dụng thuần túy dữ liệu thống kê và cơ chế xử lýgói tin của SDN/Openflow chỉ có thể áp dụng trong mạng quy mô lưu lượng nhỏ như mạnggia đình Khắc phục vấn đề này, một số giải pháp phòng chống tấn công cho mạng doanhnghiệp có quy mô băng thông cao hơn đề xuất sử dụng các bộ phân tích lưu lượng truyềnthống như Snort [25], sFlow [21], [26] thay vì sử dụng dữ liệu thống kê của SDN/Openflow.Nhược điểm cơ bản của các giải pháp này bao gồm:
+ Các bộ phân tích lưu lượng chỉ thuần túy cung cấp thông tin đặc tính lưu lượng Bộphân tích lưu lượng hoạt động độc lập, không có sự điều khiển theo trạng thái của hệ thốngmạng, chưa tận dụng được cơ chế điều khiển và xử lý gói tin trong SDN
Trang 19+ Việc xóa bỏ lưu lượng, giảm thiểu tấn công vẫn được thực hiện qua giao thức Openflowlàm chậm thời gian đáp ứng của hệ thống, sử dụng nhiều tài nguyên (các mục luồng) trên các
bộ chuyển mạch
Trong bối cảnh như vậy, bằng cơ chế và kỹ thuật SDN/Openflow làm thế nào để điều khiển hoạt động của các bộ phân tích lưu lượng, sử dụng thông tin cung cấp bởi các bộ phân tích lưu lượng để nâng cao hiệu năng phát hiện và giảm thiểu tấn công của các giải pháp?
3 Mục tiêu, đối tượng và phạm vi nghiên cứu
a) Mục tiêu nghiên cứu:
Nghiên cứu đề xuất được các giải pháp phòng chống tấn công DDoS dựa trên kỹ thuậtSDN/Openflow áp dụng cho mạng SDN quy mô nhỏ trong các bối cảnh khác nhau
b) Nội dung nghiên cứu:
Để giải quyết các vấn đề tồn tại, với mục tiêu nghiên cứu như trên, nội dung nghiên cứu của Luận án bao gồm:
• Nghiên cứu sự khác biệt đặc tính lưu lượng tấn công DDoS so với lưu lượng lànhtính để lựa chọn các tham số, đề xuất thuật toán phù hợp với bối cảnhSDN/Openflow nhằm nâng cao hiệu năng phát hiện và phân loại tấn công DDoS
• Dựa trên cơ chế xử lý gói tin của kỹ thuật SDN/Openflow, đề xuất cơ chế trao đổi
dữ liệu, tương tác giữa các thực thể trong mạng SDN/Openflow để áp dụng môhình, thuật toán, phát triển thành giải pháp phòng chống tấn công DDoS trong haibối cảnh: (1) thuần túy sử dụng dữ liệu thống kê của SDN/Openflow và (2) sửdụng dữ liệu thống kê SDN/Openfow kết hợp với bộ phân tích và xử lý lưu lượng
• Nghiên cứu những nguy cơ tấn công DDoS tới chính các thành phần của mạng SDN/Openflow và đề xuất giải pháp phát hiện, giảm thiểu tấn công
c) Đối tượng nghiên cứu:
• Công nghệ SDN, kỹ thuật SDN/Openflow
• Các phương thức, kỹ thuật tấn công DDoS phổ biến trong kỹ thuật mạng truyền thống và mạng SDN/Openflow
• Các giải pháp phòng chống DDoS dựa trên kỹ thuật mạng truyền thống và kỹ thuật SDN/Openflow đã được đề xuất
• Các bộ dữ liệu lưu lượng lành tính và tấn công DDoS
c) Phương pháp và phạm vi nghiên cứu:
- Phương pháp nghiên cứu của luận án bao gồm nghiên cứu lý thuyết; phân tích thống kê;xây dựng mô hình, giải pháp; lựa chọn và phát triển thuật toán; phân tích dữ liệu môphỏng hoặc xây dựng hệ thống thử nghiệm, đo lường, đánh giá và so sánh
- Phạm vi nghiên cứu tập trung vào:
• Đề xuất các giải pháp phòng chống DDoS bảo vệ các máy chủ trong hệ thống mạng quy mô nhỏ và vừa như văn phòng, cơ quan nhỏ (SOHO),
• Áp dụng thuần túy kỹ thuật SDN/Openflow
Trang 204 Cấu trúc nội dung của luận án
Cấu trúc của luận án gồm có 03 chương với các nội dung được tóm tắt như sau:
Chương 1 Tấn công DDoS và các giải pháp phòng chống trong mạng SDN/Openflow: trình bày tổng quan về tấn công DDoS, phân loại tấn công, các kỹ thuật tấn
công và các giải pháp phòng chống DDoS dựa trên công nghệ mạng truyền thống; các yêucầu, thách thức trong phòng chống tấn công và các tham số đánh giá hiệu năng của một giảipháp phòng chống DDoS; vấn đề an ninh mạng, tấn công DDoS trong mạng SOHO Nội dungcủa chương cũng đề cập đến nguyên lý, đặc điểm kỹ thuật mạng cấu hình bởi phần mềmSDN, giao thức Openflow; các giải pháp phòng chống DDoS dựa trên kiến trúc và kỹ thuậtSDN/Openflow; tấn công DDoS tới mạng SDN/Openflow và các giải pháp phòng chống đãđược đề xuất
Chương 2 Đề xuất giải pháp phòng chống tấn công DDoS dựa trên dữ liệu thống kê
và cơ chế xử lý gói tin của kỹ thuật SDN/Openflow: Nội dung Chương 2 đề xuất các giải pháp
phòng chống tấn công DDoS trong mạng SDN với quy mô băng thông nhỏ sử dụng thuần túy dữliệu thống kê về đặc tính lưu lượng và cơ chế xử lý gói tin của kỹ thuật SDN/Openflow Có thểtriển khai các giải pháp này chỉ cần tạo các ứng dụng quản trị mạng tại lớp ứng dụng của SDN màkhông cần bổ sung thêm thiết bị chuyên dụng Các giải pháp cụ thể bao gồm:
- Kỹ thuật phát hiện và giảm thiểu tấn công DDoS dựa trên mô hình dự đoán làm trơn hàm mũ các tham số thống kê về đặc tính lưu lượng,
- Kỹ thuật phát hiện và ngăn chặn tấn công SYN Flood tới các máy chủ trong hệ thống mạng dựa trên cơ chế ủy nhiệm gói tin SYN tại bộ điều khiển,
- Kỹ thuật đánh dấu gói tin dựa trên kỹ thuật SDN/Openflow phục vụ truy vết nguồn phát sinh lưu lượng tấn công
Chương 3 Đề xuất giải pháp phòng chống tấn công DDoS dựa trên kỹ thuật SDN/ Openflow sử dụng thêm bộ phân tích và xử lý lưu lượng: Mặc dù SDN/Openflow có nhiều
lợi thế cho xây dựng và triển khai các giải pháp phòng chống DDoS, kiến trúc này cũng chưa
có khả năng cung cấp đầy đủ thông tin về đặc tính lưu lượng cho phát hiện, phân loại và giảmthiểu tấn công Bên cạnh đó, việc truy vấn dữ liệu thống kê qua giao diện Openflow làm cholưu lượng trên giao diện điều khiển này tăng lên, dễ trở nên tắc nghẽn và làm mất, suy giảmchức năng điều khiển, nhất là khi tấn công xảy ra Điều này giới hạn quy mô băng thông của
hệ thống mạng Để khắc phục vấn đề này, nội dung Chương 3 đề xuất kiến trúc SDN mở rộngtrong đó bổ sung bộ phân tích và xử lý lưu lượng được điều khiển hoạt động và tương tác vớicác thực thể khác theo cơ chế, kỹ thuật SDN/Openflow Trên cơ sở ứng dụng kiến trúc SDN
mở rộng, đề xuất 02 giải pháp phòng chống DDoS bao gồm:
- Kỹ thuật phân loại và giảm thiểu tấn công DDoS dựa trên thuật toán logic mờ,
- Kỹ thuật giảm thiểu tấn công SYN Flood vào bộ chuyển mạch và bộ điều khiển trongmạng SDN/Openflow sử dụng cơ chế ủy nhiệm gói tin SYN tại bộ phân tích và xử lý lưu lượng
Trang 215 Các đóng góp khoa học của luận án
Luận án đã thực hiện 02 đóng góp khoa học sau đây:
1 Đề xuất kỹ thuật phát hiện và giảm thiểu tấn công DDoS bằng mô hình dự đoán làmtrơn hàm mũ với các tham số thống kê lưu lượng; kỹ thuật đánh dấu gói tin phục vụtruy vết nguồn phát sinh lưu lượng tấn công; và kỹ thuật giảm thiểu tấn công SYNFlood bằng cơ chế ủy nhiệm gói tin SYN sử dụng công nghệ SDN
2 Đề xuất kiến trúc SDN/Openflow mở rộng với bộ phân tích và xử lý lưu lượng để nâng cao hiệu quả phát hiện và giảm thiểu tấn công DDoS
Trang 22CHƯƠNG 1 TẤN CÔNG DDOS VÀ CÁC GIẢI PHÁP PHÒNG CHỐNG
TRONG MẠNG SDN/OPENFLOW
1.1 Giới thiệu chương
Chương 1 trình bày tổng quan về tấn công DDoS; phân loại các hình thức tấn công, cácgiải pháp phòng chống DDoS dựa trên công nghệ mạng truyền thống; các tham số, tiêu chíđánh giá một giải pháp phòng chống DDoS và những yêu cầu, thách thức đối với các giảipháp phòng chống DDoS hiện nay Phần tiếp theo nội dung của chương giới thiệu về kiếntrúc, kỹ thuật mạng cấu hình bởi phần mềm SDN, cấu trúc và phạm vi chuẩn hóa của giaothức Openflow, các vấn đề kỹ thuật cơ bản trong Openflow bao gồm phạm vi chuẩn hóa, cácbản tin trao đổi giữa các thực thể, quy tắc nhận dạng luồng và xử lý gói tin… Nội dung tiếptheo của chương trình bày kết quả khảo sát các giải pháp, các kỹ thuật phát hiện, ngăn chặn,giảm thiểu tấn công DDoS dựa trên kỹ thuật SDN/Openflow Phần cuối của chương đề cậpđến các nguy cơ tấn công DDoS vào kiến trúc, kỹ thuật SDN/Openflow và nghiên cứu, khảosát các giải pháp phòng chống tương ứng
1.2 Tổng quan về tấn công DDoS
1.2.1 Khái niệm
Tấn công DoS
Internet được thiết kế dựa trên nguyên tắc tối thiểu hóa các xử lý thông tin, đồng thời việcthực hiện chuyển gói tin trên hệ thống mạng theo cơ chế nỗ lực tối đa, không quan tâm vàkhông có biện pháp kiểm soát nguồn gốc gói tin và tính nguy hại của nó Chính triết lý này đãdẫn đến một hệ quả là sự lợi dụng internet để phát ra những lưu lượng tấn công không vì mụcđích lấy cắp thông tin, truy nhập bất hợp pháp mà nhằm ngăn cản các người dùng lành tínhkhác tiếp cận các dịch vụ trên mạng internet
Tấn công từ chối dịch vụ (DoS) [31] là dạng tấn công nhằm ngăn chặn người dùng hợppháp truy nhập tới dịch vụ, tài nguyên mạng làm cho hệ thống mạng không thể sử dụng, bịgián đoạn, hoặc chậm đi một cách đáng kể bằng cách làm quá tải tài nguyên của hệ thống.Đối tượng tấn công của DoS [1], [32], [33] có thể là:
• Một ứng dụng, một dịch vụ
• Một máy chủ, máy tính có địa chỉ cụ thể
• Toàn bộ hệ thống mạng trong một phạm vi cụ thể
Mục tiêu cụ thể tấn công DoS bao gồm:
• Nhằm tiêu tốn tài nguyên tính toán trên hệ thống của đối tượng tấn công như băngthông, dung lượng đĩa cứng hoặc thời gian xử lý
Trang 23• Cô lập, cách ly đối tượng tấn công với các người dùng bằng các kỹ thuật như phá vỡcác thông tin cấu hình, thông tin định tuyến; phá vỡ các trạng thái kết nối mạng; phá
vỡ các thành phần vật lý của hệ thống mạng; làm tắc nghẽn kênh truyền…
Các phương pháp tấn công DoS có thể là:
• Thao tác phần cứng: Kẻ tấn công tìm cách phá hủy, gây lỗi thiết bị phần cứng, gâynhiễu hệ thống
• Kỹ thuật lưu lượng: Kẻ tấn công phát đi lưu lượng làm lụt hệ thống đích hoặc làmlỗi các giao thức truyền thông trên hệ thống mạng Đây là kỹ thuật phổ biến nhất
do tính chất đơn giản, khó bị phát hiện
• Chiếm đoạt quyền điều khiển: Kẻ tấn công tìm cách chiếm quyền điều khiển máychủ, thiết bị mạng sau đó tắt máy chủ, dịch vụ hoặc cấu hình giới hạn khả năngphục vụ của dịch vụ, thay đổi bảng định tuyến trên thiết bị mạng để cách ly lưulượng người dùng hợp pháp với máy chủ
Tấn công DDoS
Tấn công từ chối dịch vụ phân tán (DDoS) [3], [15], [34] là dạng phát triển ở mức độ caocủa tấn công DoS sử dụng kỹ thuật lưu lượng trong đó lưu lượng tấn công được huy độngcùng một lúc từ rất nhiều máy tính khác nhau trên hệ thống mạng Hình 1.1
Hình 1.1 Lưu lượng tấn công DDoS được huy động từ nhiều nguồn trên
Internet 1.2.2 Phân loại tấn công DDoS
Tấn công DDoS có thể được phân loại theo nhiều cách khác nhau [2], [3], [32], [33], [35],[36] Dưới đây là một số cách phân loại cơ bản
Phân loại theo kỹ thuật tấn công:
Theo cách phân loại này [2], [3], [35], tấn công DDoS được phân thành 3 nhóm chínhđược thể hiện như trong sơ đồ Hình 1.2
• Tấn công dựa vào dung lượng lưu lượng: Nhóm này bao gồm 2 kỹ thuật chính:
- Làm lụt (flooding): Kẻ tấn công cố gắng ngăn chặn các kết nối từ người dùng hợp pháp
bằng cách tạo ra một lưu lượng khổng lồ tới mục tiêu tấn công làm cạn kiệt tài nguyên băngthông Kỹ thuật này thường dựa trên các giao thức mạng lớp 4 như UDP flood,
Trang 24ICMP flood Kẻ tấn công cũng có thể khai thác các điểm yếu của các phần mềm, dịch
vụ ứng dụng hoặc tạo nhiều kết nối giả mạo, không có mục đích nhằm ngăn chặn cáckết nối lành tính Dạng phổ biến của tấn công loại này là HTTP Flood với hàng triệu kếtnối không mục đích được gửi đến máy chủ Kẻ tấn công sử dụng kỹ thuật thăm dò nănglực phục vụ của máy chủ và điều chỉnh tốc độ tấn công tạo nên hình thức tấn công daidẳng làm suy giảm năng lực máy chủ như tấn công Slowloris [37] Theo báo cáo anninh mạng thường niên của Abor Networks năm 2018 [38], loại tấn công này chiếm tới75,7% các cuộc tấn công
Hình 1.2 Phân loại các kỹ thuật tấn công DDoS
- Khuếch đại: Kỹ thuật tấn công này lợi dụng giao thức trao đổi gói tin yêu cầu/trả lời
(request/response) và khả năng giả mạo địa chỉ nguồn trong mạng IP Hàng loạt yêu cầugiả mạo địa chỉ nguồn bằng địa chỉ của nạn nhân được gửi tới các máy chủ đồng thời.Giao thức trao đổi yêu cầu/trả lời có đặc tính lưu lượng yêu cầu nhỏ nhưng bản tin trảlời lớn sẽ gửi ồ ạt các bản tin trả lời tới máy nạn nhân cùng lúc làm cho lưu lượng tớimáy nạn nhân tăng đột biến, gây quá tải Các dịch vụ thường được lợi dụng cho tấncông dạng này bao gồm máy chủ DNS, NTP, IRC,… Ngoài ra, cơ chế trao đổi gói tinquảng bá, phản xạ trong hệ thống mạng cũng được lợi dụng như Smurf, Fraggle [33]
• Tấn công dựa vào lỗ hổng giao thức truyền thông mạng: Các lỗ hổng an ninh cố hữu
của các giao thức mạng được lợi dụng để phát động tấn công theo dạng này như cơ chế bắt tay
ba bước (gọi tắt là 3HS) trong giao thức TCP [39], giao thức ICMP,… Ví dụ đối với tấn côngTCP SYN Flood [18], [40], theo giao thức TCP, khi nhận được một gói tin SYN, máy chủ(server) sẽ gửi gói tin trả lời SYN-ACK và dành ra một vùng nhớ TCB 128 KB để lưu trữthông tin kết nối và chờ gói tin xác nhận CliACK từ máy khách (client) trong một khoảng thờigian (lên đến 75s) trước khi gửi gói tin trả lời SYN-ACK (Hình 1.3 a) Lợi dụng nguyên tắcnày, kẻ tấn công huy động gửi ồ ạt các gói tin SYN tới máy chủ mà không gửi gói tin xácnhận CliACK dẫn đến máy chủ nhanh chóng bị cạn kiệt tài nguyên do dành hết bộ nhớ chocác TCB tương ứng với các kết nối dang dở (gọi tắt là HOC) và không thể phục vụ các kết nốilành tính khác (Hình 1.3 b)
Trang 25Hình 1.3 Quá trình bắt tay ba bước trong kết nối TCP (a) và cơ chế tấn công TCP SYN Flood (b) Phân loại theo phương thức huy động nguồn tấn công
Nguồn tấn công là yếu tố quan trọng trong tổ chức tấn công DDoS Trong một đợt tấncông DDoS, kẻ tấn công thường huy động nguồn lực tấn công từ nhiều nguồn nhằm tạo ra lưulượng tấn công lớn vượt quá khả năng phục vụ của hệ thống đồng thời che dấu được nơi phátlưu lượng tấn công Các phương thức huy động nguồn tấn công bao gồm:
• Giả mạo địa chỉ nguồn: Lợi dụng đặc điểm tự trị của mạng Internet trong đó không có
cơ chế xác thực địa chỉ nguồn của gói tin IP, kẻ tấn công phát đi lưu lượng trong đó thay đổiđịa chỉ IP nguồn của gói tin bằng các địa chỉ IP giả mạo một cách ngẫu nhiên làm cho máychủ đích không thể biết nguồn phát sinh lưu lượng chính xác, khó phân biệt giữa lưu lượnglành tính và lưu lượng tấn công
• Sử dụng botnet: Botnet là một tập hợp gồm nhiều máy tính trên Internet bị lây nhiễm
bởi các phần mềm độc hại (malware) mà nhờ đó, kẻ tấn công có thể điều khiển các máy tínhnày thực thi các kết nối tới các máy tính khác trên Internet theo mục đích riêng của chúng màchủ sở hữu các máy tính này không hay biết [4] Các máy tính trong botnet được gọi là cácxác sống Bằng các kỹ thuật phát tán virus, malware, kẻ tấn công tuyển mộ các xác sống trênInternet và huy động chúng phát sinh lưu lượng trong các đợt tấn công Số lượng các xác sốngtrong một botnet có thể lên đến hàng triệu nên khi tổ chức tấn công, mặc dù lưu lượng tấncông của mỗi xác sống là rất nhỏ, chúng tạo nên tổng lưu lượng tấn công khổng lồ đủ làm têliệt hệ thống mạng nạn nhân trong một khoảng thời gian ngắn cỡ vài phút
• Kết hợp sử dụng botnet và giả mạo địa chỉ nguồn: Ở phương thức này, các xác sống
trong botnet phát đi lưu lượng tấn công với địa chỉ IP giả mạo nhằm vô hiệu hóa các phươngpháp giảm thiểu tấn công thông thường như lọc địa chỉ IP Chính sự kết hợp phương thức huyđộng nguồn tấn công này làm cho việc phát hiện và phân loại lưu lượng tấn công, giảm thiểutấn công DDoS trở nên khó khăn
Trang 261.2.3 Các giải pháp phòng chống DDoS dựa trên công nghệ mạng truyền thống Vị trí triển khai các giải pháp
Do được huy động từ nhiều nguồn khác nhau nên lưu lượng tấn công DDoS có đặc điểm
là nhỏ ở phía nguồn phát sinh và rất lớn ở phía mạng nạn nhân Đặc điểm này dẫn đến mộtthực tế là tại nguồn phát sinh lưu lượng tấn công, việc áp dụng giải pháp ngăn chặn tấn côngthì dễ nhưng lại khó phát hiện tấn công Ngược lại tại mạng nạn nhân, việc phát hiện tấn công
dễ hơn trong khi ngăn chặn và giảm thiểu tấn công rất khó thực hiện Do tính nguy hại của tấncông DDoS, trên thực tế, các giải pháp phòng chống DDoS dựa trên công nghệ mạng truyềnthống được triển khai trên cả mạng nguồn phát sinh, mạng trung gian và hệ thống mạng đích
a) Triển khai tại mạng nguồn phát sinh lưu lượng
Các kỹ thuật phát hiện và ngăn chặn trên mạng phát sinh lưu lượng chủ yếu thực hiện tạicác bộ định tuyến, các gateway kiểm soát lưu lượng đi ra khỏi hệ thống mạng, trong đó ápdụng các bộ lọc gói tin [41], [42] nhằm ngăn chặn sự giả mạo địa chỉ IP không đúng với địachỉ của các trạm bên trong hệ thống Một số giải pháp khác thực hiện phân tích và kiểm soátlưu lượng kết nối của các trạm bên trong hệ thống mạng nguồn với Internet nhằm phát hiệncác bất thường và loại bỏ lưu lượng tấn công DDoS [43]–[45] Tuy nhiên do không có sự ràngbuộc giữa các hệ thống tự trị trên Internet nên việc phối hợp triển khai phòng chống DDoS tạimạng nguồn phát sinh trên thực tế có hiệu quả rất thấp
b) Triển khai tại mạng trung gian
Chủ yếu thực hiện tại các bộ định tuyến với các bộ lọc nhằm phát hiện bất thường tronglưu lượng chuyển qua hệ thống mạng [16], [46] Một số giải pháp đề xuất bổ sung chức năngđánh dấu gói tin chuyển qua các bộ định tuyến nhằm hỗ trợ truy vết nguồn phát sinh lưulượng tấn công không dựa vào trường thông tin địa chỉ IP nguồn của gói tin tấn công [47]–[50] Cũng giống như tại mạng nguồn phát sinh lưu lượng tấn công, các giải pháp áp dụngtrên mạng trung gian trên thực tế cũng không mang lại hiệu quả cao
c) Triển khai tại mạng máy chủ đích
Đây là các giải pháp chủ yếu và được áp dụng hầu hết trên các hệ thống mạng tham giaInternet bao gồm triển khai trên máy chủ (host based) và trên các thiết bị mạng (networkbased) Các giải pháp triển khai trên máy chủ thường áp dụng đối với một số loại tấn công cụthể như SYN Cookie [51] ngăn chặn tấn công TCP SYN Flood Nhằm tăng độ chính xáctrong phát hiện và giảm thiểu tấn công trong hệ thống mạng rộng lớn của một trung tâm dữliệu hoặc một ISP, các giải pháp phòng chống DDoS được triển khai tại nhiều điểm trong hệthống để đo lưu lượng (probe) và phát hiện, giảm thiểu tấn công nhờ các thiết bị IDS, IPS,tường lửa (firewall) Các giải pháp triển khai phổ biến tại mạng đích bao gồm:
• Phát hiện tấn công: Áp dụng các thuật toán đối với tham số lưu lượng để xác định có
tấn công xảy ra hay không
• Phân loại và xác định lưu lượng tấn công: Dựa vào đặc tính của từng nhóm lưu lượng
Trang 27để phân biệt lưu lượng tấn công và lưu lượng lành tính.
• Lọc bỏ lưu lượng tấn công: Sử dụng các kỹ thuật lưu lượng để xóa bỏ hoặc cô lập lưu lượng tấn công, giảm thiểu ảnh hưởng của lưu lượng tấn công tới các máy chủ và
hệ thống mạng
• Truy vết lưu lượng tấn công: Khi tấn công đã hoặc đang diễn ra, sử dụng các kỹ thuật khác nhau để xác định nguồn tấn công hoặc đường đi của lưu lượng tấn công Các kỹ thuật phát hiện tấn công
Tấn công DDoS được phát hiện theo hai nhóm kỹ thuật: dựa vào dấu hiệu tấn công vàdựa vào sự bất thường của lưu lượng:
a) Dựa vào dấu hiệu tấn công
Được áp dụng đối với các phương thức, kỹ thuật tấn công khai thác lỗ hổng của giao thứcmạng hoặc lỗ hổng của ứng dụng, dịch vụ mạng Các kỹ thuật phát hiện này phải phân tíchsâu nội dung hoặc tiêu đề của gói tin để phát hiện lỗi hoặc sự bất thường Kỹ thuật này đemlại độ chính xác cao, tuy nhiên đòi hỏi tính toán lớn do phải phân tích sâu từng gói tin hoặc sosánh đặc tính lưu lượng với số lượng lớn các mẫu tấn công Ngoài ra kỹ thuật này không thểphát hiện các mẫu tấn công mới
b) Dựa vào sự bất thường của lưu lượng
Các kỹ thuật này được áp dụng phổ biến hơn trong phát hiện tấn công DDoS trong đó một
mô hình đặc tính lưu lượng bình thường được xây dựng và thống kê, cập nhật Đặc tính lưulượng tức thời chuyển qua hệ thống được so sánh với đặc tính lưu lượng bình thường Tấncông được cho là xảy ra nếu có sự khác biệt lớn giữa đặc tính lưu lượng tức thời với đặc tínhlưu lượng bình thường [15] Kỹ thuật này còn được áp dụng để phân loại lưu lượng tấn côngvới lưu lượng lành tính khi có tấn công xảy ra Sự khác biệt giữa các kỹ thuật phát hiện vàphân loại tấn công ở chỗ lựa chọn tham số và mô hình đặc tính lưu lượng Một bộ tham số và
mô hình đặc tính lưu lượng phải đảm bảo hai yếu tố [52]:
• Hầu hết các mẫu lưu lượng lành tính phải tuân thủ đặc tính lưu lượng bình thường
• Mẫu lưu lượng tấn công phải có sự khác biệt lớn so với đặc tính lưu lượng bình thường.Tuy nhiên, trên thực tế, để xây dựng được bộ tham số và mô hình đặc tính lưu lượng thỏamãn hai điều kiện trên là rất khó Vì vậy việc phát hiện và phân loại lưu lượng tấn côngthường có một phần lưu lượng tấn công không phát hiện được hoặc phát hiện nhầm lưu lượnglành tính thành lưu lượng tấn công
Các kỹ thuật phát hiện tấn công DDoS bao gồm:
• Sử dụng mô hình thống kê (Statistical): Kỹ thuật này xây dựng mô hình thống kê cho các
tham số lưu lượng của một dịch vụ, máy chủ, hệ thống mạng cụ thể đối với lưu lượng lành tính.Một mẫu lưu lượng được trích xuất các tham số và so sánh với mô hình thống kê dựa trên cácngưỡng tham chiếu để xác định là lưu lượng lành tính hay lưu lượng tấn công [53], [54]
Trang 28• Học máy (Machine learning): Kỹ thuật học máy được áp dụng rộng rãi trong phát hiện xâm nhập (IDS), tấn công DDoS trong đó phân biệt đặc tính bình thường và đặc tính bất
thường của lưu lượng nhờ quá trình học [17], [55] Các phương pháp học máy khác nhauđược áp dụng như mạng nơ-ron [56], mạng Bayesian [57], bản đồ tự tổ chức SOM [58],…
• Khai phá dữ liệu (Data mining): Áp dụng tổng hợp các mô hình thống kê, các phương
pháp học máy với bộ lưu lượng ở các quy mô lớn để xây dựng, hệ thống hóa để tạo ra nhữngđặc điểm riêng, những mô hình cho từng dịch vụ, máy chủ từ đó áp dụng để phân biệt lưulượng tấn công với lưu lượng lành tính với độ chính xác cao Kỹ thuật này đòi hỏi tài nguyêntính toán và lưu trữ lớn, do đó hiện tại chưa có nhiều mô hình theo kỹ thuật này được đề xuấtphát hiện và phân loại lưu lượng tấn công DDoS trên thực tế
Các kỹ thuật phòng chống và giảm thiểu tấn công
Kỹ thuật phòng chống và giảm thiểu tấn công DDoS dựa trên công nghệ mạng truyềnthống được chia làm hai nhóm: triển khai trên các máy chủ (host based) và triển khai trên hệthống mạng (network based)
• Các giải pháp triển khai trên máy chủ: chủ yếu phòng chống tấn công dựa vào giao
thức và giới hạn kết nối Để ngăn chặn tấn công TCP SYN Flood, một số hệ điều hành nhưLinux áp dụng kỹ thuật SYN Cookie [51], hệ điều hành Windows cho phép điều chỉnh thờigian chờ TIME_WAIT [18] để hạn chế thời gian tồn tại của các TCB trên máy chủ Để ngănchặn các kết nối TCP, UDP, IMCP tấn công ồ ạt, một số hệ điều hành cho phép đặt ngưỡng sốlượng kết nối [31]
• Các giải pháp triển khai trên hệ thống mạng: Trong công nghệ mạng truyền thống, do
đặc tính đóng kín của các thiết bị mạng, các giải pháp phòng chống DDoS chủ yếu tập trungvào kỹ thuật đặt giới hạn các kết nối và lưu lượng [59] hoặc thao tác bằng tay:
- Căn cứ vào đặc tính lưu lượng và năng lực phục vụ của mỗi máy chủ, các ngưỡng giớihạn lưu lượng hoặc số lượng kết nối đồng thời Khi tấn công xảy ra, lưu lượng thực tếvượt quá ngưỡng giới hạn này, các lưu lượng hoặc kết nối mới sẽ bị xóa bỏ Điều này dẫntới giảm tỷ lệ thành công của các kết nối lành tính
- Khi có dấu hiệu cảnh báo tấn công xảy ra, các thiết bị mạng đơn thuần như bộ chuyểnmạch, bộ định tuyến được cấu hình một cách thủ công để ngăn chặn và giảm thiểu tấncông Đây là nhược điểm cố hữu của công nghệ mạng truyền thống trong phối hợp pháthiện, ngăn chặn và giảm thiểu tấn công Nguyên nhân cơ bản là do các thiết bị mạng đượcđiều khiển, cấu hình độc lập và đóng kín
1.2.4 Yêu cầu và thách thức đối với giải pháp phát hiện và ngăn chặn, giảm
thiểu tấn công DDoS
Một số tham số đánh giá hiệu quả giải
pháp a) Độ nhạy
Trong tấn công DDoS, lưu lượng tấn công đến cùng lúc với lưu lượng lành tính Để có giải pháp chống lại tấn công, hệ thống phải có cơ chế phát hiện Mức độ phát hiện có thể là:
Trang 29• Phát hiện có tấn công xảy ra hay không đối với một hệ thống/máy chủ hoặc dịch vụ.
• Phân loại lưu lượng tấn công ra khỏi lưu lượng lành tính
• Lọc bỏ lưu lượng tấn công để chúng không tới được máy chủ hoặc gây tác hại
Trong quá trình phát hiện, giảm thiểu tấn công tùy theo mức độ chính xác nhận diện lưulượng của giải pháp, các lưu lượng đến có thể được xác định như trong Bảng 1.1 [3]
Bảng 1.1 Quan hệ giữa kết quả phân loại của giải pháp và đặc tính thực của lưu lượng
Đặc tính thực của lưu lượng Lành tính Tấn công
Khi xét kết quả phân loại lưu lượng của một giải pháp, tỷ lệ báo động nhầm được gọi là
tỷ lệ phân loại báo động nhầm FPRC Khi xét kết quả lọc bỏ lưu lượng tấn công, tỷ lệ này
được gọi là tỷ lệ lọc bỏ nhầm FPRF
c) Thời gian đáp ứng
Tham số thời gian đáp ứng đánh giá về mức độ phản hồi của một giải pháp phòng chốngDDoS được tính bằng khoảng thời gian từ lúc lưu lượng tấn công bắt đầu chuyển tới hệ thốngmạng/máy chủ đích cho tới khi bắt đầu có kết quả phân loại trạng thái tấn công đầu ra hoặcbắt đầu áp dụng các chính sách ngăn chặn, giảm thiểu tấn công Tùy theo chức năng của giảipháp (phát hiện, phân loại hay ngăn chặn, giảm thiểu tấn công) mà tham số này được tính cụthể cho từng trường hợp khác nhau
d) Khả năng lọc bỏ
Khả năng lọc bỏ đánh giá mức độ giảm thiểu, loại bỏ tác hại tấn công mà giải pháp phòngchống tấn công đạt được Cần chú ý rằng khả năng lọc bỏ khác với khả năng phát hiện Cónhiều giải pháp phát hiện, phân loại được lưu lượng tấn công nhưng không loại bỏ được ảnh
Trang 30hưởng của lưu lượng tấn công đã phát hiện Khả năng lọc bỏ cũng có thể được đo bằng tỷ lệlưu lượng được lọc bỏ trên tổng số lưu lượng tấn công.
e) Khả năng chịu đựng tấn công
Năng lực xử lý của mỗi hệ thống/máy chủ là khác nhau tùy theo cấu hình hệ thống, lưulượng kết nối và chính đặc điểm các dịch vụ trên máy chủ Để tăng cường năng lực cho máychủ và các dịch vụ chạy trên nó, ngoài việc nâng cao cấu hình, các nhà khai thác dịch vụ cũng
áp dụng các giải pháp phòng chống DDoS Hiệu quả của các giải pháp tổng hợp này thể hiện
ở mức chịu đựng tấn công với các tốc độ khác nhau và được thể hiện bằng các tham số cụ thểnhư số lượng phiên kết nối tối đa trên máy chủ, băng thông tối đa của các kết nối, hoặc thờigian tối đa chịu đựng của máy chủ với một tốc độ lưu lượng tấn công đến cụ thể… Về mặt lýthuyết, các tham số trên có giá trị càng lớn thì sẽ càng tốt vì sẽ giúp cho các giải pháp phòngchống tấn công có nhiều thời gian hơn để phân tích cũng như là đưa ra các chính sách cho hệthống mạng bị tấn công
Các yêu cầu và thách thức đối với một giải pháp phòng chống DDoS
Theo Bawany [60], một giải pháp phòng chống DDoS hiệu quả phải đảm bảo bởi các yêucầu cụ thể sau:
• Cơ chế phòng chống DDoS không được làm ảnh hưởng đến sự hoạt động của các người dùng hợp pháp và lưu lượng lành tính của họ
• Cơ chế phát hiện tấn công cần phải có giải pháp ngăn chặn hoặc giảm thiểu tấn công
đi kèm với nó để ngăn chặn tấn công từ cả bên trong và cả bên ngoài
• Cơ chế phòng chống tấn công phải hoạt động trên quy mô tương ứng của hệ thống mạng hoặc trung tâm dữ liệu
• Giải pháp cần phải mềm dẻo, khả năng thích ứng cao với sự thay đổi về quy mô dịch
vụ, quy mô lưu lượng, làm tăng khả năng chịu đựng tấn công của hệ thống mạng
• Giải pháp phải có chi phí triển khai thấp, hạn chế thấp nhất sự gia tăng thiết bị phầncứng, đồng thời sự thay đổi về quy mô không làm tăng tải tính toán và lưu trữ củatoàn hệ thống
Trong bối cảnh phát triển mạnh mẽ của hệ thống mạng Internet và sự gia tăng tấn công mạng.Theo Bawany [60], các thách thức đặt ra đối với phòng chống DDoS có thể kể đến:
• Sự phân biệt giữa lưu lượng lành tính và lưu lượng tấn công ngày càng khó do kẻ tấncông áp dụng các kỹ thuật khác nhau để lưu lượng tấn công bắt chước giống với lưulượng lành tính ở trạng thái đông đúc đột ngột (flash crowd)
• Dịch vụ mạng đang dần chuyển sang xu thế công nghệ đám mây, điều này dẫn đếncác máy ảo được triển khai linh động và khắp nơi, điều này đồng nghĩa với nguy cơtấn công DDoS đối với một hệ thống mạng không chỉ từ bên ngoài mà có thể xuấtphát chính từ các máy ảo bên trong
• Các dịch vụ lưu trữ và multimedia với dung lượng lớn ngày càng phát triển đòi hỏi hệ
Trang 31thống mạng có băng thông lớn, độ tin cậy cao, dẫn đến yêu cầu về hiệu năng và quy
mô mạng lớn Do đó giải pháp phòng chống DDoS cho hệ thống mạng tốc độ lớn trởnên khó khăn
• Để đảm bảo duy trì tỷ lệ báo động nhầm FPR thấp thường kéo theo độ nhạy DR cũng
sẽ thấp Bên cạnh đó, tốc độ dịch vụ mạng ngày càng lớn dẫn đến sự gia tăng của cáchình thức tấn công tốc độ thấp và dai dẳng (slowloris) và các phương thức tấn côngnày dễ dàng vượt qua các giải pháp phát hiện và ngăn chặn
• Quy mô hệ thống mạng Internet ngày càng lớn tạo điều kiện cho các botnet phát triển
cả về số lượng và năng lực của các xác sống Điều này dẫn đến cường độ và quy môtấn công DDoS ngày càng lớn
Với những yêu cầu, thách thức như trên, tấn công DDoS vẫn là mối quan tâm giải quyếttrong các kỹ thuật và kiến trúc mạng thế hệ mới
Mạng quy mô nhỏ và những vấn đề an ninh đối với mạng quy mô nhỏ
Trước đây, các dịch vụ mạng Internet chủ yếu được cung cấp tập trung thông qua các hệthống máy chủ tại các trung tâm dữ liệu Trong những năm gần đây, với sự phát triển mạnh
mẽ của công nghệ truyền dẫn đặc biệt sự phổ biến của công nghệ truyền dẫn quang, cho phéplưu lượng kết nối Internet hai chiều giữa người sử dụng tăng lên đáng kể Bên cạnh đó, sự giatăng các dịch vụ multimedia, dịch vụ truyền số liệu giữa các thiết bị, hệ thống IoTs trênInternet làm cho mạng quy mô nhỏ (SOHO network) [61] như mạng gia đình, văn phòng cơquan nhỏ không chỉ đơn thuần là sử dụng dịch vụ Internet mà chuyển sang cung cấp dịch vụ ởquy mô, phạm vi nhỏ Ví dụ: dịch vụ truyền hình ảnh của hệ thống camera giám sát, dịch vụtruyền dữ liệu từ các thiết bị lưu trữ dữ liệu, dịch vụ điều khiển nhà thông minh,… Ngoài ra,
xu thế làm việc độc lập (self-employed) ngày càng trở nên phổ biến làm xuất hiện và gia tăngnhu cầu kết nối Internet và cung cấp dịch vụ qua mạng văn phòng nhỏ
Theo Bradley Mitchell [61], mạng quy mô nhỏ được sở hữu và phục vụ nhu cầu làm việccủa một nhóm nhỏ người dùng và hình thành bởi mạng LAN kết nối Internet qua một đườngtruyền với lưu lượng thấp SOHO network thường có kết cấu đa dạng giữa mạng có dây vàkhông dây với các thiết bị, dịch vụ hỗn tạp Khác với sự tổ chức dịch vụ tại các hệ thống máychủ ở các trung tâm dữ liệu lớn, các dịch vụ từ các mạng SOHO thường ít được chú trọng yếu
tố đảm bảo an ninh, phòng chống tấn công Nguyên nhân cơ bản là do thiếu sự quan tâm đúngmức của người dùng đối với việc tổ chức dịch vụ dữ liệu Các vấn đề về chi phí cũng là yếu tốcản trở khi số lượng dịch vụ và quy mô lưu lượng tại các mạng SOHO thường rất nhỏ, khôngtương xứng với chi phí cho triển khai các giải pháp đảm bảo an ninh mạng [62]–[64] Điềunày dẫn đến các mạng SOHO vừa là mục tiêu của các đợt tấn công mạng nói chung và tấncông DDoS nói riêng, vừa là nơi kẻ tấn công lợi dụng để phát tán mã độc, huy động xác sống
để tham gia các hoạt động xâm phạm an ninh mạng, tổ chức tấn công DDoS
1.3 Kỹ thuật mạng cấu hình bởi phần mềm SDN
Trong vài thập niên trở lại đây, sự phát triển bùng nổ của mạng Internet đã làm cho hệ
Trang 32thống mạng không ngừng lớn mạnh về cả số lượng lẫn quy mô, kiến trúc, cơ sở hạ tầng Đốivới các nhà quản lý và khai thác mạng, việc điều hành hệ thống trở nên khó khăn, hiệu nănghoạt động của hệ thống thấp Một trong những nguyên nhân cơ bản là do các bộ định tuyến,chuyển mạch của hệ thống mạng được thiết lập cứng, vốn bị khóa và kiểm soát độc quyền bởicác công ty sản xuất ra chúng Trước thực trạng đó, mặc dù ý tưởng đầu tiên đã xuất hiện từ
năm 1996, khái niệm Kỹ thuật mạng cấu hình bởi phần mềm bắt đầu được quan tâm trở lại từ
cuối năm 2010 và trở thành hướng đi nóng hổi và cấp thiết với mục đích cho phép các đối tácphần mềm thứ 3 có thể truy nhập và thao tác trên mặt phẳng điều khiển của các thiết bị mạng
từ xa, trực tuyến bằng cách sử dụng các giao thức mở, ví dụ Openflow [20] Tổ chức ONFđược thành lập đã xây dựng và phát triển chuẩn công nghệ mạng mới gọi là Software DefinedNetworking (SDN) [19]
Hình 1.4 Kiến trúc mạng cấu hình bởi phần mềm SDN
Đặc trưng cơ bản của SDN là trừu tượng hóa hệ thống mạng thành hai mặt phẳng: mặtphẳng dữ liệu và mặt phẳng điều khiển nhằm tối ưu nhiệm vụ và chức năng của hai thànhphần này như mô hình kiến trúc trong Hình 1.4 Theo đó, kiến trúc SDN gồm 3 lớp:
- Lớp hạ tầng mạng (Infrastructure layer): đồng thời là mặt phẳng dữ liệu bao gồm các
thiết bị phần cứng của hệ thống mạng được gọi chung là các bộ chuyển mạch Những bộchuyển mạch này khác với các bộ chuyển mạch theo công nghệ mạng truyền thống ở chỗchúng không có các chức năng điều khiển và chỉ đơn thuần thực hiện chức năng chuyển tiếphoặc xóa bỏ gói tin đến dựa trên thông tin cấu hình bởi mặt phẳng điều khiển ở phía trên Tùytheo thuật toán điều khiển được xác lập trên mặt phẳng điều khiển mà các bộ chuyển mạch cóthể thực hiện các chức năng của các thiết bị khác nhau của công nghệ mạng truyền thống như
bộ chuyển mạch lớp 2, bộ chuyển mạch lớp 3, bộ định tuyến, bộ cân bằng tải, v.v…
- Lớp điều khiển (Control layer): nằm phía trên lớp hạ tầng mạng có chức năng trừu tượng hóa và cung cấp tài nguyên hệ thống mạng từ lớp hạ tầng cho lớp ứng dụng ở phía trên,
đồng thời thực thi các chính sách xử lý gói tin từ các phần mềm từ lớp ứng dụng xuống lớp hạtầng mạng Thành phần chính, quan trọng của lớp điều khiển là bộ điều khiển SDN (SDN
Trang 33Controller), đóng vai trò như một bộ não, một hệ điều hành hệ thống mạng, duy trì một viewpointtoàn cục, tập trung, quản lý và cung cấp tài nguyên lớp hạ tầng mạng cho phép các ứng dụng ởlớp trên cấu hình và quản lý hệ thống mạng thông qua các giao diện mở Trên thực tế đã có nhiềusản phẩm bộ điều khiển thương mại [65] hoặc mã nguồn mở [66] Bộ điều khiển tương tác với các
bộ chuyển mạch trong lớp hạ tầng mạng thông qua một chuẩn giao thức riêng
- Lớp ứng dụng (Application layer): bao gồm các ứng dụng quản trị, tối ưu hóa và bảo mật các chính sách xử lý lưu lượng trên hệ thống mạng Các ứng dụng có thể chạy trên máy
chủ độc lập kết nối với bộ điều khiển thông qua giao diện API hoặc có thể chạy trực tiếp trên
bộ điều khiển tùy theo quy mô của hệ thống mạng và quy mô dữ liệu của ứng dụng Với triết
lý quản lý và giám sát tài nguyên mạng tập trung, SDN có thể cung cấp cho các phần mềmứng dụng toàn bộ thông tin về lớp hạ tầng mạng, trên cơ sở đó, các phầm mềm có thể đưa racác chính sách áp dụng đồng bộ, thống nhất, tối ưu trên toàn bộ hệ thống mạng
Công nghệ SDN cho phép thực nghiệm nhanh chóng, mềm dẻo và tối ưu hóa các chínhsách định tuyến, chuyển mạch; cho phép truy nhập từ bên ngoài vào bên trong các bộ chuyểnmạch, định tuyến Trên cơ sở đó, SDN giải quyết nhiều vấn đề công nghệ mạng truyền thốnggặp phải như:
- Công nghệ SDN cho phép các nhà mạng xác định dịch vụ mạng mà không cần kết hợpcác tham số kỹ thuật của các dịch vụ đó với giao diện mạng Nói cách khác SDN tách riêngviệc điều khiển luồng dữ liệu trên hệ thống mạng (thông qua nhận biết, học, tính toán và raquyết định chuyển gói tin) ra khỏi kiến trúc topology mạng (bao gồm các kết nối phần cứng,các giao diện giữa các thực thể trong mạng) Điều này có ý nghĩa quan trọng, phù hợp với đặcđiểm của mạng thế hệ mới với kiến trúc đám mây mềm dẻo, định vị động các tài nguyênmạng, như hệ thống máy tính di động, hệ thống điện toán đám mây,
- Bằng cơ chế kiểm soát, định tuyến mềm dẻo các gói tin, SDN cho phép thực hiện mộtcách dễ dàng nhiều chức năng khó thực hiện bằng công nghệ mạng truyền thống như logicalgrouping, điều khiển quyền truy cập, đảm bảo các tham số QoS theo dịch vụ, v.v; đơn giảnhóa việc xây dựng, cấu hình và đảm bảo chất lượng VLAN, VPN…
Mặc dù kiến trúc mạng SDN vẫn đang được tiếp tục chuẩn hóa, phát triển, cho đến nay,
đã có nhiều sản phẩm, hệ thống SDN triển khai trong thực tế như hệ thống mạng B4 củaGoogle [67], hệ thống mạng truyền tải của Huawei [68],…
1.4 Giao thức OpenFlow
Một trong các giao thức SDN phổ biến đang được phát triển và đã được tích hợp trong một số
sản phẩm phần cứng đó là Giao thức luồng mở - Openflow [20] Openflow là kết quả nghiên cứu
của Đại học Stanford và California, Berkeley và là chuẩn giao tiếp đầu tiên, cung cấp khả nănggiao tiếp giữa mặt phẳng điều khiển và mặt phẳng dữ liệu trong kiến trúc SDN Openflow chophép các bộ điều khiển mạng truy xuất vào các thiết bị mạng (bao gồm cả thiết bị phần cứng vàthiết bị ảo), thực thi các chính sách đối với hệ thống mạng một cách tự động, mềm dẻo
Trang 34Thông qua Openflow, bộ điều khiển có thể gửi một tập hướng dẫn chung tới bất kỳ mộtswitch hoặc router của bất cứ hãng sản xuất nào hỗ trợ cơ chế Openflow Có thể nói SDN vàOpenflow là giải pháp tiềm năng để tự động hóa cấu hình, nâng cấp khả năng đáp ứng của hệthống mạng, giảm thiểu chi phí quản trị, mở ra nhiều triển vọng cho nghiên cứu phát triển cácgiải pháp tối ưu của kỹ thuật mạng, nâng cao chất lượng của các dịch vụ, giải quyết vấn đề hạtầng mạng truyền thông đang gặp phải Cộng đồng phát triển có thể xây dựng các ứng dụngphần mềm chạy trên bộ điều khiển, giải quyết các bài toán nâng cao hiệu năng, giám sát mạngnhư kỹ thuật bảo mật, kỹ thuật cân bằng tải, tiết kiệm năng lượng,… tại các trung tâm dữ liệu.
1.4.1 Cấu trúc và phạm vi chuẩn hóa của Openflow
Cấu trúc, phạm vi và vị trí của giao thức Openflow trong kiến trúc SDN được mô tả trongHình 1.5 Theo đó:
- Phạm vi chuẩn hóa của Openflow bao gồm cấu trúc bộ chuyển mạch, giao thức trao đổicác bản tin điều khiển giữa bộ điều khiển mạng (controller) và các bộ chuyển mạch Openflow(OFS)
- Cấu trúc bộ chuyển mạch Openflow bao gồm phần cứng (hw) và phần mềm (sw) Phầncứng gồm các module quản lý và xử lý quá trình chuyển tiếp các gói tin trên hệ thống mạngthông qua các bảng cấu hình gọi là bảng luồng Phần mềm là module thực hiện chức năngtrung gian giao tiếp giữa phần cứng và bộ điều khiển, cung cấp thông tin về phần cứng cho bộđiều khiển, đồng thời thực thi các thao tác từ bộ điều khiển tới phần cứng
- Để đảm bảo an toàn, chống xâm nhập chiếm quyền điều khiển trái phép, giao tiếp giữa
bộ điều khiển và các bộ chuyển mạch được mã hóa bảo mật có xác thực theo kỹ thuật SSL
Hình 1.5 Cấu trúc và phạm vi chuẩn hóa của giao thức Openflow
Giao thức Openflow được phát triển và ra đời phiên bản hoàn chỉnh đầu tiên 1.1 vàotháng 2 năm 2011 và liên tục được phát triển nhiều bản cập nhật Cho tới nay phiên bản 1.5.1
đã bổ sung nhiều chức năng giải quyết nhiều bài toán khác nhau và đã được chuyển hóa vàonhiều sản phẩm thương mại cũng như sản phẩm mã nguồn mở có thể kể đến, bao gồm:
• Các bộ chuyển mạch thương mại như HP ProCurve 3500, 3800, 5400, 2920, 8200;IBM G8264, 8316, 8052; Cisco Catalyst 3850,…; Bộ chuyển mạch mềm như
Trang 35OpenVswitch [69].
• Bộ điều khiển mã nguồn mở POX [70], Ryu [71] phát triển trên nền Python; ONOS[72], OpenDaylight [73], Foodlight [74]… trên Java; hoặc NOX [75] trên cả Python
và C++,…
• Các môi trường, công cụ nghiên cứu, thử nghiệm như mininet [76]
1.4.2 Nhận dạng và quản lý lưu lượng trên bộ chuyển mạch Openflow
Đối tượng xử lý thông tin trên các bộ chuyển mạch Openflow là các gói tin Nhằm đưa ra cácchính sách xử lý gói tin đa dạng, mềm dẻo, Openflow có thể nhận dạng và phân nhóm thông tin ởnhiều mức như dataframe (lớp 2), packet (lớp 3) hay datagram (lớp 4) theo luồng Sau đây lànhững khái niệm cơ bản trong nhận dạng, phân nhóm và quản lý lưu lượng trong Openflow
• Luồng (flow): là một khái niệm dùng để chỉ sự nhận dạng lưu lượng trên cơ sở định
nghĩa trước các thuộc tính Những lưu lượng có cùng thuộc tính và xuất hiện trong một phạm
vi một khoảng thời gian nhất định trên bộ chuyển mạch thuộc vào cùng một luồng Ví dụ:luồng các gói tin lớp 3 xuất phát từ cùng một địa chỉ IP nguồn, luồng các gói tin xuất phát từcổng có số hiệu port = 4 trên một bộ chuyển mạch cụ thể,…
• Mục luồng (flow entry): Để nhận dạng và quản lý các luồng, bộ chuyển mạch sử dụng
các thông tin để so khớp với lưu lượng đến nhờ một cấu trúc thông tin gọi là mục luồng Cấutrúc một mục luồng được mô tả như trong Hình 1.6
- Các trường so khớp (Match fields): bao gồm các quy tắc để nhận dạng lưu lượng Các
gói tin khớp với tất cả các thông tin quy định trong các trường này sẽ thuộc phạm vi xử lýcủa mục luồng
- Tập lệnh xử lý (Instruction sets): bao gồm các lệnh, quy tắc xử lý gói tin được áp dụng
tại bộ chuyển mạch đối với lưu lượng của mục luồng Thành phần quan trọng nhất trongmỗi lệnh xử lý là các actions được áp dụng đối với các gói tin khớp với mục luồng
- Các bộ đếm (counters): Chứa thông tin thống kê về lưu lượng khớp với mục luồng.
- Mức ưu tiên (priority): chỉ cấp độ ưu tiên khi so khớp gói tin với các mục luồng.
- Thời gian chờ (timeout): quy định thời gian tồn tại của mục luồng theo sự xuất hiện của lưu lượng.
Để tối ưu hóa các quá trình nhận dạng, xử lý lưu lượng của một luồng theo các chính sáchmong muốn, các ứng dụng quản trị mạng thiết lập trường so khớp, mức ưu tiên và thời gian chờ cho từng mục luồng tương ứng
• Bảng luồng (flow table): Openflow sắp xếp và quản lý các mục luồng trong các bảng
luồng Một bảng luồng là một tập hợp gồm nhiều mục luồng Quản lý theo bảng luồng giúp
bộ chuyển mạch phân cụm được các quy tắc quản lý lưu lượng làm cho quá trình so khớp,nhận dạng lưu lượng được tối ưu
1.4.3 Các bản tin trao đổi giữa bộ điều khiển và bộ chuyển mạch Openflow
Để cấu hình, quản lý trạng thái các bộ chuyển mạch, quản lý các sự kiện từ các bộ chuyển mạch
Trang 36cũng như áp dụng các chính sách xử lý gói tin, Openflow quy định cấu trúc các bản tin traođổi giữa bộ điều khiển và các bộ chuyển mạch thuộc 3 nhóm như sau:
Hình 1.6 Cấu trúc của một mục luồng Nhóm bản tin từ bộ điều khiển tới bộ chuyển mạch
Các bản tin này được chủ động tạo bởi bộ điều khiển gửi tới các bộ chuyển mạch(Controller to Switch) và sử dụng để quản lý và kiểm tra trạng thái của các bộ chuyển mạch,
có thể không đòi hỏi sự phản hồi Nhóm bản tin này bao gồm:
• Features Request: Sử dụng khi thiết lập kênh truyền Nhận được bản tin này, bộ chuyển mạch trả lời thông tin về phiên bản, cấu hình mà nó có thể hỗ trợ.
• Configuration: Thiếp lập và chỉnh sửa cấu hình các tham số cho bộ chuyển mạch.
• Modify-State: Chỉnh sửa thông tin các bảng luồng, thêm hoặc xóa các luồng trong một bảng luồng cụ thể.
• Read-State: Truy vấn thống kê từ các bảng luồng, các cổng hoặc các luồng cụ thể.
• Send Packet Message: Chuyển tiếp một gói tới một cổng xác định của bộ chuyển mạch Nhóm bản tin bất đồng bộ từ bộ chuyển mạch
Nhóm bản tin này do các sự kiện từ bộ chuyển mạch gửi tới bộ điều khiển (AsynchronousMessages), giúp bộ điều khiển cập nhật các sự kiện trong hệ thống mạng và trạng thái của các
bộ chuyển mạch Các bản tin bao gồm:
• Packet-in: Khi gói tin đến không khớp với bất cứ mục luồng nào trên bộ chuyển mạch Bộ chuyển mạch sẽ gửi bản tin này tới bộ điều khiển để yêu cầu một chính
sách xử lý tương ứng
• Flow - Removed: Xuất hiện khi một mục luồng bị xóa khỏi bộ chuyển mạch.
• Port - Status: Khi có sự thay đổi trạng thái của một cổng trên bộ chuyển mạch.
• Error Message: Khi có lỗi xảy ra tại bộ chuyển mạch.
Nhóm bản tin hai chiều
Nhóm bản tin này được gửi đi hoặc do bộ chuyển mạch, hoặc do bộ điều khiển (SymmetricMessages) mà không bắt buộc có yêu cầu trả lời:
• Hello: dùng để thiết lập kết nối giữa bộ điều khiển và bộ chuyển mạch.
Trang 37• Echo Request/Reply: sử dụng để kiểm tra độ trễ, băng thông,… hoặc khả năng của
kênh truyền giữa bộ điều khiển và bộ chuyển mạch
• Vendor: kiểm tra khả năng hỗ trợ các chức năng bổ sung, không bắt buộc của
Openflow
Các bản tin Openflow trao đổi giữa bộ điều khiển và bộ chuyển mạch được truyền quakênh truyền mã hóa bảo mật có xác thực SSL
1.4.4 Quy trình xử lý gói tin trong Openflow
Openflow quy định quá trình xử lý lưu lượng tại các bộ chuyển mạch dựa trên sự nhậndạng luồng bởi các mục luồng như đã trình bày ở mục 1.4.2 Các mục luồng được cài đặt vàchỉnh sửa bởi bộ điều khiển thông qua các bản tin trao đổi nêu trong mục 1.4.3 Quy trình xử
lý các gói tin đến tại bộ chuyển mạch được thực hiện như sau:
- Các mục luồng được sắp xếp thành các bảng luồng Quá trình xử lý gói tin được thựchiện qua các bảng luồng kế tiếp nhau theo cơ chế đường ống (pipeline) [20] Trong mỗi bảngluồng, các mục luồng được sắp xếp theo thứ tự ưu tiên từ cao đến thấp Khi nhận được mộtgói tin tới, bộ chuyển mạch thực hiện so khớp (matching) các trường tiêu đề của gói tin vớicác mục luồng trong bảng luồng đầu tiên Gói tin khớp với mục luồng nào trước, nó sẽ thuộc
về luồng tương ứng Khi được khớp với một mục luồng, các tập lệnh xử lý tương ứng trongmục luồng sẽ được thực thi Tùy theo lệnh tương ứng trong mục luồng được khớp, quá trình
so khớp có thể kết thúc hoặc tiếp tục xử lý so khớp với các bảng luồng tiếp theo Qua mỗibảng luồng, nếu lệnh xử lý thao tác trên gói tin, action xử lý gói tin cụ thể sẽ được tích lũytrong một tập actions Các lệnh xử lý so khớp chính trong mục luồng bao gồm:
Hình 1.7 Quá trình xử lý gói tin tại bộ chuyển mạch theo cơ chế đường ống
• Write-Actions (actions): Thêm các actions xử lý gói tin vào tập actions.
• Apply-Actions (actions): Thực thi ngay các action trong tập actions đối với gói tin.
Trang 38• Clear actions: Xóa toàn bộ các action có trong tập actions áp dụng cho gói tin.
• Goto-Table (N): Chuyển tới so khớp với bảng luồng thứ N.
Quá trình so khớp thực hiện từ bảng luồng đầu tiên đến các bảng luồng kế tiếp theo sựthực thi các lệnh có trong mục luồng được khớp Thông thường các bảng luồng được sắp xếpthành các nhóm bảng luồng xử lý đầu vào (ingress) và nhóm bảng luồng xử lý đầu ra (egress)như trong Hình 1.7 Kết thúc mỗi nhóm bảng luồng, tập các actions sẽ được thực hiện và ápdụng trực tiếp trên gói tin
Hình 1.8 Yêu cầu xử lý gói tin khi không khớp với một mục luồng có sẵn trên bộ chuyển mạch
- Nếu trong quá trình so khớp trong một bảng luồng, gói tin không khớp với bất cứ mục
luồng nào, sự kiện table-miss sẽ xảy ra và bộ chuyển mạch gửi tới bộ điều khiển một bản tin packet-in Các phần mềm ứng dụng trên bộ điều khiển sẽ phân tích và đưa ra một chính sách
để xử lý các nhóm gói tin tương ứng với nó bằng cách cài đặt trên bộ chuyển mạch một mụcluồng mới Trong quá trình chờ đợi mục luồng mới được cài đặt, gói tin được lưu tại vùngđệm của bộ chuyển mạch Các gói tin tiếp theo của luồng sẽ được khớp với mục luồng này vàđược bộ chuyển mạch xử lý theo các actions thiết lập trong mục luồng (Hình 1.8)
- Trong các trường hợp cụ thể, bộ chuyển mạch có thể cài đặt các mục luồng để bắt giữnhững gói tin có các trường thông tin thỏa mãn một điều kiện cụ thể và chuyển tới bộ điềukhiển bằng action OUTPUT với số hiệu cổng là OFPP_CONTROLLER
1.4.5 Quản lý các mục luồng trong bộ chuyển mạch Openflow
Trong Openflow, mục luồng là thông tin quan trọng quyết định cách thức xử lý gói tin trên hệthống mạng Mục luồng có vai trò phân nhóm các gói tin thành các luồng tương ứng, đưa ra cácchính sách bộ chuyển mạch sẽ áp dụng đối với các gói tin Do sự thay đổi thường xuyên của lưulượng mạng nên mỗi mục luồng có giá trị trong một khoảng thời gian nhất định Để quản lý hiệuquả các mục luồng giảm thiểu sự chiếm dụng tài nguyên trên bộ chuyển mạch trong điều kiện thayđổi liên tục như vậy, Openflow quy định các phương thức tạo và quản lý luồng
Cài đặt, chỉnh sửa và xóa các mục luồng
Trong Openflow, các mục luồng có thể được cài đặt theo hai cách:
- Chủ động (proactive): Bộ điều khiển chủ động cài đặt mục luồng tới bộ chuyển mạch.
Trang 39Thông thường phương pháp này được áp dụng cho các mục luồng tồn tại vĩnh viễn nhằm tạo những luật xử lý gói tin ổn định trong suốt quá trình hoạt động của bộ chuyển mạch.
- Đáp ứng theo gói tin (reactive): Khi có sự kiện table-miss xảy ra, bộ chuyển mạch tạo bản tin packet-in và gửi tới bộ điều khiển Bộ điều khiển căn cứ vào thông tin thuộc tính của
gói tin để cài đặt một mục luồng tương ứng Hình 1.8 Trong quá trình hoạt động, các phầnmềm ứng dụng có thể chỉnh sửa các mục luồng đã có
Thiết lập thời gian chờ cho các mục luồng
Để giới hạn thời gian tồn tại của các mục luồng trên bộ chuyển mạch khi mục luồngkhông còn giá trị do các gói tin thuộc luồng không còn xuất hiện, Openflow cho phép thiết lậpthời gian chờ cho mỗi mục luồng với hai tham số:
(1) Thời gian chờ liên gói tin (idle timeout hay inactive timeout): là khoảng thời gian tối
đa chờ gói tin tiếp theo thuộc cùng một luồng tính từ khi bộ chuyển mạch nhận đượcgói tin sau cùng Vượt quá thời gian này, luồng sẽ kết thúc và mục luồng sẽ bị xóakhỏi bộ chuyển mạch
(2) Thời gian chờ cứng (hard timeout hay active timeout): là khoảng thời gian tồn tại tối
đa của một luồng Nếu tham số này được thiết lập, khi mục luồng đạt đến khoảng thời
gian chờ hard timeout tính từ khi nó được tạo ra, mục luồng sẽ bị xóa khỏi bộ chuyển
mạch bất kể các gói tin của luồng tương ứng có tiếp tục xuất hiện nữa hay không
Mục đích của thời gian chờ hard timeout là để bảo vệ bộ chuyển mạch khỏi sự chiếm
dụng tài nguyên bộ nhớ bởi các luồng tấn công có chủ đích
Tùy theo phạm vi, mục đích nhận dạng và xử lý luồng, các mục luồng có thể thiết lập
hoặc không thiết lập tham số thời gian chờ idle timeout và hard timeout Nếu không thiết lập
hai tham số này, mục luồng sẽ tồn tại vĩnh viễn trong bộ chuyển mạch Việc thiết lập thời gianchờ cho các mục luồng được thực hiện khi cài đặt hoặc chỉnh sửa các mục luồng
Thống kê các mục luồng
Như đã trình bày ở trên, trong mỗi mục luồng có chứa các bộ đếm thống kê tổng số góitin, tổng dung lượng lưu lượng khớp với mỗi mục luồng, thời gian tồn tại của mỗi mục luồng.Trong quá trình hoạt động, bộ điều khiển có thể yêu cầu truy vấn giá trị các bộ đếm này từ bộchuyển mạch hoặc thống kê số mục luồng đang tồn tại theo một điều kiện nào đó Các số liệuthống kê từ các mục luồng có ý nghĩa quan trọng không chỉ trong quản lý các mục luồng màcòn cho các ứng dụng quản trị và điều hành mạng
1.5 Các giải pháp phòng chống DDoS dựa trên kiến trúc và kỹ thuật SDN/Openflow
1.5.1 Kiến trúc và nguyên lý hoạt động chung
Với khả năng giám sát, điều khiển hệ thống mạng một cách tập trung; khả năng lập trình,cấu hình tự động bằng phần mềm; thay đổi chính sách xử lý gói tin linh động, tự động… kiến
Trang 40trúc mạng và kỹ thuật SDN/Openflow đã được nhiều giải pháp đề xuất ứng dụng trong phòngchống DDoS [21]–[26], [77]–[83] Các giải pháp đề xuất có thể thực hiện các chức năngphòng chống tấn công khác nhau, ở các quy mô hệ thống mạng và vị trí triển khai khác nhaunhưng cùng dựa trên một cấu trúc và nguyên lý hoạt động chung thể hiện như trong Hình 1.9.
Hình 1.9 Cấu trúc chung hệ thống giải pháp phòng chống tấn công DDoS
dựa trên kỹ thuật SDN/Openflow
Trong kiến trúc SDN/Openflow, mỗi giải pháp đề xuất được phát triển gồm một ứng dụng anninh chạy trên máy chủ ứng dụng và một module điều khiển chạy trên Bộ điều khiển Giao tiếpgiữa phần mềm ứng dụng và module điều khiển theo chuẩn REST API Trong trường hợp quy mô
xử lý dữ liệu nhỏ, phần mềm ứng dụng có thể được tích hợp trong module điều khiển:
• Module điều khiển: Dựa trên nguyên tắc điều khiển hệ thống mạng và xử lý gói tin,
module điều khiển thực hiện 2 chức năng chính: (1) thống kê các đặc tính của lưulượng, lấy mẫu các gói tin để phân tích và phát hiện tấn công, và (2) cài đặt, chỉnhsửa các mục luồng nhằm thực thi các chính sách phòng chống tấn công
• Phần mềm ứng dụng: Dựa vào dữ liệu thống kê, mẫu lưu lượng được module điều
khiển chuyển tới, phân tích và phát hiện tấn công, xác định dấu hiệu lưu lượng tấncông và đưa ra các chính sách xử lý đối với lưu lượng tấn công