Hình 1.12. Các phương pháp tấn cơng tới Lớp Ứng dụng
Khảo sát an ninh mạng trong kiến trúc SDN, Kreutz và nhóm nghiên cứu [95] đã chỉ ra 7 vectơ tấn cơng trong đó có 4 vectơ tấn cơng DDoS, bao gồm:
• Các luồng lưu lượng giả mạo: là các luồng được hình thành từ các gói tin được tạo ra,
công là các bảng luồng và tài nguyên bộ điều khiển.
• Khai thác các lỗ hổng và chiếm quyền điều khiển trên các bộ chuyển mạch: Khi đó,
kẻ tấn cơng sẽ chiếm quyền điều khiển bộ chuyển mạch và có thể sử dụng chúng để xóa bỏ, nhân bản, làm trễ chuyển tiếp gói tin trên hệ thống mạng hoặc tạo hàng loạt sự kiện packet-in để tấn cơng bộ điều khiển.
• Khai thác các lỗ hổng và chiếm quyền điều khiển trên các bộ điều khiển.
• Khai thác các lỗ hổng và chiếm quyền điều khiển ứng dụng điều hành mạng trên lớp ứng dụng: Khi kiểm soát được bộ điều khiển và ứng dụng điều hành mạng, kẻ tấn cơng
có thể thực hiện điều khiển cách ly máy chủ, làm nghẽn mạng, thậm chí vơ hiệu hóa bộ điều khiển gây tấn cơng DDoS trên tồn bộ hệ thống mạng.
Trong các vectơ tấn công nêu trên, vectơ tấn công tạo các luồng giả mạo dễ thực hiện nhất và được xác định là hình thức tấn cơng phổ biến tới các thành phần của mạng SDN/Openflow [93], [94]. Sơ đồ Hình 1.10, Hình 1.11, Hình 1.12 biểu diễn các phương pháp tấn công tới lớp hạ tầng mạng, lớp điều khiển và lớp ứng dụng trong kiến trúc mạng SDN/Openflow [35].
1.6.2. Kỹ thuật phát hiện và giảm thiểu tấn cơng
Đã có nhiều giải pháp phát hiện và giảm thiểu tấn công DDoS tới các thành phần trong kiến trúc mạng SDN/Openflow [28], [35], [96]–[100]. Phần lớn các thuật tốn phát hiện và giảm thiểu tấn cơng của các giải pháp đều dựa trên các thuật toán và cơ chế giống như đối với phát hiện và giảm thiểu tấn công DDoS dựa trên cơng nghệ mạng truyền thống đã trình bày ở mục 1.5. Ngồi ra, một số giải pháp đề xuất dựa trên thuật tốn phát hiện theo chính sách và quy tắc xử lý gói tin. Nếu các mục luồng phù hợp với các chính sách, quy tắc xử lý này, lưu lượng của chúng được coi là lành tính, ngược lại, lưu lượng được cho là xuất phát từ nguồn tấn công và áp dụng quy tắc xóa bỏ. Bảng 1.2 [35] thống kê và so sánh các giải pháp phát hiện và giảm thiểu tấn công DDoS đối với kiến trúc SDN theo kỹ thuật này.
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
Giải pháp Kỹ thuật phát hiện Kỹ thuật giảm thiểu tấn công
Ảnh hưởng đến lớp Hạ tầng mạng Điều khiển dụng Ứng AVANT-
GUARD [28] Sử dụng các luật định nghĩa trước để phát hiện tấn công TCP SYN Flood
Ủy nhiệm gói tin SYN trên OFS kết hợp với kỹ thuật SYN Cookie
Khơng Có Có DaMask [96] Dựa vào dấu hiệu tấn cơng trên
cơ sở phân mảnh mạng Thiết lập các action nghĩa từ trước định Có Có Có SDN-based
CDNi [98] Truy vết ngược sử dụng kỹ thuật đánh dấu Xóa bỏ luồng Có Có Có OPERETTA
[99] Thiết lập các chính sách xác thực Khơng cần Khơng Có Có FlowRanger
SDSNM
[100] Thiết lập các chính sách xác thực trong phạm vi an toàn Quyết định bởi module chính sách xử lý Có Có Có Trong số các giải pháp trên, cơ chế Di trú kết nối CM (Connection Migration) trong giải pháp Avant-Guard [28] giúp ngăn chặn hiệu quả tấn công TCP SYN Flood. Nguyên lý cơ bản của cơ chế này dựa trên sự giám sát quá trình bắt tay ba bước của các kết nối TCP từ các máy khách trên Internet tới máy chủ cần bảo vệ. Quá trình giám sát được thực hiện nhờ sự ủy nhiệm xử lý gói tin SYN trên bộ chuyển mạch OFS, chỉ những kết nối TCP nào hồn thành q trình bắt tay ba bước (3HS) mới được tạo sự kiện packet-in và gửi đến bộ điều khiển để yêu cầu cài đặt mục luồng chuyển tiếp gói tin tới máy chủ nội bộ của hệ thống mạng. Các bước thực hiện kết nối giữa máy khách và máy chủ nội bộ được trình bày trong Hình 1.13 [28]. Theo đó, q trình tạo một kết nối TCP gồm 4 pha:
• Pha Phân loại: Gói tin SYN đến từ máy khách (bước 1) không được gửi tới máy chủ
mà được xử lý bởi module ủy nhiệm gói tin SYN tại bộ chuyển mạch. Nó trả lời máy chủ bằng một gói tin SYN-ACK (bước 2) với giá trị số hiệu khởi tạo phiên (Initial Sequence Number) được tạo ra nhờ thuật toán SYN Cookie [51].
Máy khách trả xác thực kết nối bằng một gói tin CliACK (bước 3). Nếu là kết nối lành tính, gói tin CliACK có giá trị số hiệu xác thực ACK_Num phù hợp với số hiệu tuần tự khởi tạo phiên SEQ_Num. Module ủy nhiệm gói tin SYN sử dụng thuật tốn SYN Cookie để kiểm tra sự phù hợp này và xác định kết nối là lành tính, nếu bộ chuyển mạch khơng nhận được gói tin CliACK tương ứng hoặc gói tin CliACK khơng hợp lệ, gói tin SYN được cho là tấn công và không được xử lý ở bước tiếp theo.
Hình 1.13. Q trình xử lý gói tin của một kết nối TCP trong cơ chế CM
• Pha báo cáo: Bộ chuyển mạch tạo sự kiện packet-in (bước 4) yêu cầu Bộ điều khiển
cài đặt mục luồng xử lý kết nối TCP theo chiều từ máy khách tới máy chủ (bước 5).
• Pha Di trú: Bộ chuyển mạch tạo một gói tin SYN và gửi tới máy chủ (bước 6). Sau khi
nhận được gói tin xác nhận từ máy chủ (bước 7), Bộ chuyển mạch tạo gói tin CliACK để xác thực kết nối (bước 8), đồng thời tạo một sự kiện packet-in tới Bộ điều khiển yêu cầu cài đặt mục luồng xử lý kết nối theo chiều từ máy chủ tới máy khách (bước 9,10).
• Pha Chuyển tiếp: Sau khi đã có mục luồng xử lý gói tin theo hai chiều, giữa máy chủ
và máy khách tiến hành trao đổi các gói tin dữ liệu (bước 11, 12).
Với cơ chế giám sát quá trình bắt tay ba bước trước khi cài đặt mục luồng trên bộ chuyển mạch, cơ chế CM của Avant-Guard giúp cho Bộ chuyển mạch loại bỏ được các mục luồng vô giá trị tạo bởi các gói tin SYN tấn cơng giả mạo địa chỉ IP trong tấn công TCP SYN Flood. Đồng thời, cơ chế này cũng ngăn khơng cho các gói tin tấn cơng SYN được chuyển tới các máy chủ nội bộ cần bảo vệ bên trong hệ thống mạng. Tuy nhiên, cơ chế CM có các nhược điểm sau:
• CM sử dụng kỹ thuật SYN Cookie, vốn là một giải pháp sử dụng cho trạm cuối (host based) [51] chống lại tấn công SYN flood, nên sẽ không phù hợp khi triển khai trên bộ chuyển mạch là thiết bị trung gian của kết nối(network based). Bởi khi đó, các kết nối lành tính sẽ bị chia cắt thành 2 kết nối TCP (giữa OFS và máy khách và giữa OFS và máy chủ). Để liên kết hai kết nối TCP này, OFS phải duy trì một vùng nhớ để lưu trữ trạng thái và độ sai khác các giá trị tham số kết nối (SEQ_Num/ACK_Num). Do cặp giá trị này thay đổi, OFS phải tiêu tốn tài nguyên cho tìm kiếm, mã hóa, kiểm tra, tính tốn checksum các gói tin trao đổi giữa máy chủ và máy khách. Điều này ảnh hưởng đến hiệu năng xử lý của OFS.
• Sự chia cắt kết nối TCP giữa hai thực thể đầu cuối có thể làm vơ hiệu hóa các tham số tùy chọn khác trong kết nối TCP như MSS, Selective ACKs, TCP Window Scaling,…[39] trong quá trình thực hiện giám sát bắt tay ba bước.
• Q trình tạo các gói tin SYN-ACK, xác thực gói tin CliACK trong kỹ thuật SYN Cookie địi hỏi tài ngun tính tốn bao gồm tạo gói tin, mã hóa và giải mã cookies, tính tốn checksum,… Cơ chế CM thực hiện đối với tất cả các gói tin SYN đến ngay cả đối với các gói tin yêu cầu kết nối tới một cổng bị đóng trên máy chủ. Điều này gây lãng phí tài nguyên tính toán của OFS, làm cho OFS dễ trở thành mục tiêu tấn công SYN flood và tấn công quét cổng. Ngồi ra, việc tích hợp cơ chế CM vào bộ chuyển mạch làm mất đi bản chất SDN, vì triết lý của SDN là cố gắng chuyển các phép tốn xử lý gói tin ra khỏi bộ chuyển mạch.
1.7. Kết luận chương
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ự đố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