Nội dung Chương 1 trình bày lý thuyết tổng quan về tấn công DDoS, các phương thức và kỹ thuật phịng chống DDoS dựa trên cơng nghệ mạng truyền thống; kiến trúc và kỹ thuật mạng cấu hình bởi phần mềm SDN dựa trên giao thức Openflow. Ngoài ra, nội dung của chương khảo sát các giải pháp đã đề xuất về phát hiện, giảm thiểu tấn công DDoS dựa trên kỹ thuật SDN/Openflow; tấn công DDoS trong kiến trúc mạng này và các giải pháp phịng chống. Qua đó cho thấy:
- Tấn công DDoS vẫn là một vấn nạn lớn của mạng Internet; lợi dụng cơ chế tự trị của các
hệ thống mạng cấu thành Internet, các kỹ thuật quản lý tài nguyên trong công nghệ mạng truyền thống cịn nhiều điểm yếu, kẻ tấn cơng phát động các cuộc tấn công DDoS nhằm suy giảm năng lực phục vụ của các hệ thống máy chủ, hệ thống mạng dựa trên hai kỹ thuật cơ bản: giả mạo địa chỉ nguồn lưu lượng và huy động tham gia tấn công của các botnet. Sự phát triển về quy mô, dịch vụ, lưu lượng mạng ngày càng tăng; diễn biến tấn công DDoS ngày càng phức tạp đặt
ra các yêu cầu và thách thức lớn đối với các cơ chế, giải pháp phát hiện, phân loại lưu lượng và giảm thiểu tấn công DDoS.
- Sự phát triển của công nghệ và dịch vụ mạng, sự gia tăng của các thiết bị IoTs dẫn tới nhu
cầu triển khai các dịch vụ trong mạng quy mô nhỏ (SOHO network) ngày càng tăng. 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 của các mạng quy mơ nhỏ đặt ra nhu cầu các giải pháp phịng chống tấn công tương ứng đơn giản, phù hợp với chi phí thấp.
- Kiến trúc và kỹ thuật mạng SDN ra đời không những giúp giám sát và quản trị tài nguyên
mạng tập trung, mềm dẻo mà còn cho phép triển khai nhiều ứng dụng an ninh mạng trực tuyến, thời gian thực trong đó có các giải pháp phịng chống DDoS. Giao thức Openflow là giao thức đầu tiên cụ thể hóa kiến trúc mạng SDN. Khả năng cung cấp dữ liệu thống kê về lưu lượng và cơ chế xử lý gói tin trong SDN/Openflow phù hợp với quy trình phát hiện và giảm thiểu tấn cơng DDoS. Đã có nhiều giải pháp được đề xuất về phát hiện, phân loại lưu lượng tấn công DDoS dựa trên kỹ thuật SDN/Openflow. Tuy nhiên, ở thời điểm hiện tại, hầu hết các giải pháp mới dừng lại ở nghiên cứu lý thuyết; do tính chất phức tạp của tấn cơng DDoS, khơng có giải pháp nào mang lại hiệu quả triệt để. Mỗi kiến trúc mạng, loại hình dịch vụ, quy mơ, kết cấu mạng cần có giải pháp, tham số bảo vệ khác nhau.
- Mặt khác, chính kiến trúc SDN/Openflow cũng đặt ra những vấn đề an ninh mới, những
lỗ hổng cố hữu mà kẻ tấn cơng có thể lợi dụng, phát động tấn cơng DDoS. Nhiệm vụ đặt ra là cần phải khai thác các lợi thế của SDN/Openflow trong phát hiện, phòng chống DDoS, đồng thời xây dựng giải pháp ngăn chặn những hình thức, kỹ thuật tấn công DDoS dựa trên kiến trúc, kỹ thuật này.
Nội dung của Chương 1 là cơ sở lý thuyết quan trọng cho các nghiên cứu, đề xuất trong các chương tiếp theo của luận án.
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
2.1. Giới thiệu chương
Nội dung Chương 2 trình bày lần lượt ba giải pháp đề xuất phòng chống DDoS thuần túy dựa trên 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. Mục tiêu của các giải pháp này là có thể áp dụng trực tiếp cho các hệ thống mạng quy mô nhỏ hỗ trợ SDN/Openflow bằng các phần mềm ứng dụng trên máy chủ ứng dụng SDN mà không cần bổ sung thêm các thiết bị, module chuyên dụng. Các giải pháp cụ thể bao gồm:
- Giải pháp phát hiện, phân loại và giảm thiểu tấn công DDoS dựa trên các tham số thống
kê lưu lượng cung cấp bởi kỹ thuật SDN/Openflow trong đó áp dụng mơ hình dự đoán làm trơn hàm mũ.
- Giải pháp phát hiện và giảm thiểu tấn công SYN Flood bảo vệ hệ thống các máy chủ nội
bộ dựa trên cơ chế ủy nhiệm, giám sát quá trình bắt tay ba bước của gói tin SYN tại Bộ điều khiển của mạng SDN/Openflow.
- Giải pháp đánh dấu gói tin tại các bộ chuyển mạch biên của ISP nhằm phục vụ khả năng
truy vết nguồn gốc phát sinh lưu lượng tấn cơng tại các trạm đích trong hệ thống mạng SDN/Openflow.
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ự đốn làm trơn hàm mũ tham số thống kê lưu lượng 2.2.1. Đặt vấn đề
Như đã trình bày ở chương 1, đã có nhiều giải pháp phát hiện và phân loại lưu lượng tấn công DDoS dựa trên kỹ thuật SDN/Openflow, tuy nhiên các giải pháp này tập trung vào mạng trung gian hoặc áp dụng cho mạng trung tâm dữ liệu ở quy mô lớn, áp dụng các thuật tốn học máy, địi hỏi dữ liệu huấn luyện. Điều này dẫn đến độ nhạy phân loại sẽ suy giảm khi hệ thống chịu đựng các mẫu tấn cơng mới. Điển hình trong số các giải pháp này là giải pháp phát hiện tấn công dựa vào mơ hình SOM đối với các tham số thống kê lưu lượng từ các bộ chuyển mạch OFS của nhóm tác giả Braga [22]. Giải pháp này lấy thống kê theo các mục luồng TCP, UDP, ICMP với mỗi mục luồng một bộ gồm 6 tham số lưu lượng. Các tham số này được tính tốn và áp dụng mơ hình SOM để phát hiện và phân loại lưu lượng tấn công. Nhược điểm của giải pháp là số lượng tham số truy vấn từ các bộ đếm mục luồng lớn gây ra trễ và gia tăng lưu lượng trên giao diện Openflow. Ngoài ra giải pháp này mới chỉ đề cập đến việc phát hiện và phân loại lưu lượng tấn cơng offline mà chưa có cơ chế phân loại lưu lượng và giảm thiểu tấn công online.
Bổ sung khả năng phân loại và giảm thiểu tấn cơng, Nhóm tác giả Giotis đề xuất giải pháp thống kê lưu lượng theo cửa sổ thời gian [21]. Theo đó, lưu lượng internet được liên tục giám sát qua các chu kỳ và lấy thống kê lưu lượng giống như đề xuất của Braga. Các tham số
lưu lượng được thống kê và áp dụng thuật toán đo độ biến thiên entropy của 4 thuộc tính (địa chỉ IP nguồn, đích và địa chỉ cổng nguồn, đích) để phát hiện tấn cơng. Khi có tấn cơng xảy ra, hệ thống tiếp tục phân tích để phân loại các luồng có độ biến thiên entropy bất thường và lọc bỏ bằng cách cài đặt các mục luồng tương ứng với action xóa bỏ gói tin. Nhược điểm của giải pháp này là tương quan giữa tỷ lệ báo động nhầm và độ nhạy còn khá cao (FPR ở mức 32% khi DR đạt 95%).
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ũ
Chúng ta biết rằng, mỗi dịch vụ, máy chủ có những đặc tính lưu lượng khác nhau, trong điều kiện hoạt động bình thường, đặc tính thống kê của lưu lượng thường ổn định trong phạm vi thời gian (theo khung giờ trong ngày). Khi có tấn cơng xảy ra, đặc tính thống kê của lưu lượng có sự khác biệt so với ở trạng thái bình thường và sự khác biệt này có thể sử dụng làm dấu hiệu để phát hiện tấn công. Dựa trên cơ sở này, đồng thời khắc phục những tồn tại của hai giải pháp nêu trên, Luận án đề xuất phát hiện và giảm thiểu tấn cơng dựa trên mơ hình dự đốn làm trơn hàm mũ tham số thống kê lưu lượng. Giải pháp được áp dụng cho mạng quy mô nhỏ, kết nối Internet qua một gateway, nhằm ngăn chặn các cuộc tấn cơng DDoS từ bên ngồi.
2.2.2. Kiến trúc hệ thống và các trạng thái hoạt động
vệ là các máy chủ hoặc dịch vụ chạy trên máy chủ bên trong mạng nội bộ của hệ thống. Module Ủy nhiệm an ninh SP trên bộ điều khiển thực hiện truy vấn tham số thống kê lưu lượng từ Internet đến hệ thống mạng và chuyển tới máy chủ an ninh qua giao diện REST API. Khi phát hiện và xác định được lưu lượng tấn cơng, SP thực hiện cài đặt các chính sách chặn gói tin tới các mục luồng trên bộ chuyển mạch biên để giảm thiểu tấn công.
Máy chủ an ninh SS phát hiện tấn cơng dựa trên mơ hình dự đốn tham số thống kê lưu lượng để xác định trạng thái tấn công của các máy chủ/dịch vụ cần bảo vệ bên trong mạng nội bộ. Khi phát hiện tấn công xảy ra, SS chuyển yêu cầu lọc bỏ lưu lượng tới bộ Điều khiển qua giao diện REST API.
Các trạng thái của máy chủ/dịch vụ cần bảo vệ và sự chuyển tiếp các trạng thái được thể hiện trong sơ đồ Hình 2.2. Hệ thống giám sát trạng thái của các máy chủ, dịch vụ cần bảo vệ sau mỗi chu kỳ thời gian T. Nếu không phát hiện tấn công xảy ra, máy chủ/dịch vụ tiếp tục ở trạng thái Giám sát. Khi xác định có dấu hiệu tấn cơng, máy chủ/dịch vụ chuyển sang trạng thái
“Nghi ngờ bị tấn công” và thực hiện lấy thống kê, chi tiết theo địa chỉ IP nguồn. Sau khi lấy
thống kê chi tiết, các lưu lượng tấn công được phân loại và lọc bỏ (Trạng thái “Lọc bỏ lưu
lượng tấn công”). Nếu không xác định được lưu lượng tấn công, máy chủ/dịch vụ lại được
chuyển về trạng thái “Giám sát”.
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ụ
Để phân biệt lưu lượng giữa các máy chủ/dịch vụ cần bảo vệ, các trường so khớp của các mục luồng được xác định theo quy tắc:
• Nếu đối tượng bảo vệ là một máy chủ, mỗi luồng được xác định bởi 3 tham số: địa chỉ IP nguồn, địa chỉ IP đích và số hiệu cổng nguồn.
• Nếu đối tượng bảo vệ là một dịch vụ chạy trên một máy chủ, mỗi luồng được xác định bằng 4 tham số: địa chỉ IP nguồn, địa chỉ IP đích, số hiệu cổng nguồn và số hiệu cổng đích.
2.2.3. Lựa chọn tham số và chỉ số thống kê lưu lượng
Các tham số thống kê lưu lượng
Dựa trên đặc điểm lưu lượng tấn công DDoS và khả năng thống kê các tham số lưu lượng theo cơ chế SDN/Openflow, giải pháp lựa chọn 3 tham số dùng cho phát hiện tấn cơng DDoS như trình bày trong Bảng 2.1.
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
Tham số
thống kê Ý nghĩa Phương pháp lấy thống kê
Số địa chỉ IP
nguồn SAN - Chỉ ra số thực thể IP yêu cầu kết nối tới máy chủ/dịch vụ trong cửa sổ thời gian. - Tùy theo đặc tính của mỗi máy chủ/dịch vụ như phạm vi cung cấp dịch vụ, tính chất của dịch vụ, giá trị SAN của mỗi máy chủ/dịch vụ là khác nhau. Ngồi ra, giá trị này cịn có thể biến đổi theo khung giờ trong một ngày.
- Khi ở trạng thái hoạt động bình thường, SAN nằm trong giới hạn phục vụ của máy chủ. Khi máy chủ/dịch vụ bị tấn công DDoS, giá trị SAN thường tăng cao do kẻ tấn công huy động nhiều nguồn lưu lượng.
- Đếm tại SS - Tăng bộ đếm mỗi khi xuất hiện địa chỉ IP nguồn mới trong bản tin packet-in
Số cổng
nguồn SPN - Chỉ ra tổng số luồng lớp 4 đang kết nối tới máy chủ/dịch vụ. - Cũng giống như SAN, tham số này phụ thuộc vào tính chất, đặc điểm của máy chủ/dịch vụ và phạm vi cung cấp của nó và có thể biến đổi theo khung giờ.
- Khi ở trạng thái bị tấn công DDoS, SPN tăng cao do kẻ tấn công cố gắng mở nhiều kết nối tới máy chủ/dịch vụ.
- Đếm tại SS - Tăng bộ đếm mỗi khi xuất hiện một cổng nguồn mới trong bản tin packet-in Số lượng gói
tin PN - Là số lượng gói tin trung bình của một luồng đang kết nối tới máy chủ, dịch vụ: + Khi phát hiện tấn cơng: tính theo giá trị trung bình của máy chủ/dịch vụ.
+ Khi phân loại lưu lượng tấn cơng: tính theo giá trị trung bình của từng địa chỉ IP nguồn.
- Theo đặc tính thống kê, số gói tin trung bình của một luồng của một dịch vụ cụ thể thường ổn định và kẻ tấn công không thể biết giá trị tham số trung bình này. Khi tấn cơng xảy ra, kẻ tấn công thường phát động những luồng có cùng cơ chế tấn cơng (botnet) nên đặc tính lưu lượng đến thường giống nhau và khác so với đặc tính thống kê. Sự khác biệt này được chọn làm dấu hiệu phát hiện tấn công.
- Thực hiện tại Bộ điều khiển và OFS - Gọi bản tin truy vấn thống kê OFPMP_FLOW _STATS
Các chỉ số thống kê lưu lượng
Từ các tham số thống kê lưu lượng, sau mỗi cửa sổ thời gian T, giải pháp tính tốn 2 chỉ số thống kê cho mỗi máy chủ/dịch vụ, đó là:
• Tỷ lệ số cổng trung bình được mở trên mỗi địa chỉ IP nguồn SPA:
𝑆𝑆𝑇𝑇𝑆𝑆=𝑆𝑆𝑇𝑇𝐹𝐹𝑆𝑆𝑆𝑆𝐹𝐹 (2.1)
Giá trị này là tỷ lệ số gói tin trung bình trên mỗi luồng được tính như sau: PpF = ∑SPNi=1SPNPN
trong đó, ∑SPNPN
i=1 là tổng số gói tin trong tổng số SPN luồng hiện có.
(2.2) Khi phát hiện tấn công đối với một máy chủ/dịch vụ, PpF được tính trung bình cho tất cả các luồng yêu cầu kết nối tới máy chủ/dịch vụ đó. Khi phân loại lưu lượng tấn cơng, PpF được tính trung bình cho từng địa chỉ IP nguồn.
2.2.4. Lựa chọn và xây dựng mơ hình dự đốn chỉ số thống kê lưu lượng
Các mơ hình dự đốn phổ biến
Như đã trình bày ở mục 2.1, tấn công DDoS được phát hiện dựa trên sự chênh lệch giữa chỉ số thống kê lưu lượng thực tế và chỉ số dự đoán. Chỉ số dự đoán dựa trên giả thiết lưu lượng lành tính. Khi có tấn cơng, chỉ số thống kê lưu lượng thực tế tăng cao so với chỉ số dự đoán và là cơ sở để phát hiện tấn cơng. Do đó, mức độ chính xác của q trình tính tốn phát hiện phụ thuộc vào mức độ chính xác của mơ hình dự đốn. Trong thực tế, có nhiều mơ hình dự đốn theo cửa sổ thời gian khác nhau [101]–[105]. Dưới đây là một số mơ hình dự đốn phổ biến.
a). Mơ hình trung bình động
Mơ hình trung bình động (MA) [101] dự đoán tham số ở một thời điểm dựa trên trung bình cộng của các giá trị của các thời điểm liền kề trước đó. Giá trị tham số dự đốn ở một thời điểm xác định trong tương lại được tính theo cơng thức:
𝑥𝑥�𝑡𝑡+1 =1𝑘𝑘 ∗(𝑥𝑥𝑡𝑡+𝑥𝑥𝑡𝑡−1+⋯+𝑥𝑥𝑡𝑡−𝑘𝑘+1) (2.3)
trong đó:
• k là bề rộng cửa sổ,
• 𝑥𝑥�𝑡𝑡+1 là giá trị dự đốn ở thời điểm t+1,
• xi là giá trị thực ở thời điểm thứ i.
Mơ hình dự đốn trung bình động được tính bằng giá trị trung bình của k giá trị liền trước. k càng lớn càng cho kết quả chính xác. Ưu điểm của mơ hình này là tính tốn đơn giản. Tuy nhiên nó địi hỏi lưu trữ cơ sở dữ liệu lớn vì để tính tốn giá trị dự đoán ở một thời điểm cho một mẫu tham số, đòi hỏi phải lưu trữ k tham số trước đó.
b). Mơ hình trung bình động có trọng số
Mơ hình trung bình động có trọng số (WMA) [102], [104] được tính tốn dự đốn dựa trên mơ hình WA trong đó với mỗi mẫu giá trị ở các thời điểm trước được tham gia vào giá trị dự đoán với các trọng số wi khác nhau. Giá trị dự đoán của giá trị mẫu ở thời điểm t+1 được tính