.4 Hoạt động của vịng lặp phát hiện

Một phần của tài liệu Các biện pháp nâng cao tính bảo mật của mạng doanh nghiệp sử dụng kỹ thuật mạng điều khiển bằng phần mềm (Trang 53 - 60)

1) Các mơ-đun dịng được chọn (Flow Collector) được lấy định kỳ trong các mục flow từ tất cả các Bảng flow của chuyển mạch. Các yêu cầu lựa chọn như vậy, cũng như đáp ứng tương ứng của chúng, được truyền thơng qua một kênh an tồn, tức là một kênh được phân lập từ các máy chủ kết nối với các thiết bị chuyển mạch. 2) Các module tính năng Extractor (Feature Extractor) nhận được các dòng đã thu được, chọn lọc các tính năng quan trọng đối với cơng việc phát hiện các tấn công DDoS, và tập hợp chúng trong 6 bộ dữ liệu đã được thông qua để phân loại.

3) Module Classifier phân loại cho một dạng 6-tuple tương ứng với một tấn công DDoS hoặc để phân luồng các flow. Trong công việc này, ta sử dụng phương pháp SOM để phân loại.

4.4.1 Thu thập các flow sử dụng NOX / OpenFlow

Đầu tiên, một chuyển mạch OF cần phải được chứng thực bằng bộ điều khiển NOX bằng cách tạo một ID cho nó . Chỉ sau khi đã hồn thành việc chứng thực thì tất cả các host kết nối đến chuyển mạch đó mới được phép trao đổi các gói tin. Mỗi gói được đưa đến trong một chuyển mạch OF có tiêu đề phù hợp với các mục flow trong bảng lưu lượng của chuyển mạch. Trong trường hợp một số mục phù hợp hoàn tồn với tiêu đề của gói, số liệu thống kê của nó sẽ được cập nhật (ví dụ, số byte và các gói dữ liệu được tăng lên). Ngược lại, nếu khơng có mục flow nào (trong Bảng flow của chuyển mạch) phù hợp với tiêu đề của gói thì mục này sẽ được chuyển tiếp đến bộ điều khiển. Đến lượt nó, bộ điều khiển có thể thêm, theo chính sách được xác định, một mục flow mới đến Bảng flow của mỗi chuyển mạch theo yêu cầu đã đề ra. Như vậy, lưu lượng truy cập được tạo ra bởi tất cả các host kết nối với một chuyển mạch OF tạo ra một Bảng flow của chuyển mạch đang nói đến ở đây.

Tập hợp của các mục flow từ một chuyển mạch OF được hình thành sau những khoảng thời gian định trước bởi bộ điều khiển. Từ tập hợp này các tính năng quan trọng được trích ra để phân loại lưu lượng truy cập là bình thường hay đã bị một cuộc tấn công. Khi tập hợp các mẫu lấy từ tất cả các thiết bị chuyển mạch OF được chứng thực bởi NOX, các ID của chuyển mạch được sử dụng để giúp các mô- đun phân loại xác định trong đó các thiết bị chuyển mạch OF nào đã bị nhận dạng tấn công DDoS.

Cài đặt khoảng thời gian để thu thập các mục flow là rất quan trọng. Nếu tập hợp các mục flow của một chuyển mạch được thực hiện trong khoảng thời gian khơng liên tục, thì sẽ tạo ra một thời gian trễ khi phát hiện một cuộc tấn cơng và do đó làm giảm thời gian sẵn sàng của cơ chế. Mặt khác, nếu khoảng thời gian cho tập

hợp này là quá ngắn, sẽ có sự gia tăng của các gói tin flow yêu cầu sẽ dẫn đến sự gia tăng trong chi phí của cơ chế phát hiện.

Theo mặc định, tất cả các chuyển mạch OpenFlow được đăng ký tại NOX được đưa thêm một cách tự động vào các vòng lặp phát hiện. Nhưng mạng lưới quản trị cũng có thể giới hạn tập hợp mẫu cho những thiết bị chuyển mạch có liên quan nhất.

Khi NOX quản lý thông tin các thiết bị chuyển mạch mạng một cách tập trung, ta có thể theo dõi tất cả các thiết bị chuyển mạch được lựa chọn và phân tích lưu lượng truy cập của chúng từ quan điểm của một tấn cơng DDoS. Phân tích này được thực hiện bởi bộ điều khiển. Bất cứ khi nào một bộ 6-tuple được phân loại theo SOM phát hiện một cuộc tấn công, một cảnh báo sẽ được gửi ngay cho người quản trị mạng.

4.4.2 Lựa chọn các tính năng của mạng để phát hiện tấn công DDoS

Ta sử dụng bốn tính năng -APf, PPf, GSf, và GDP [24][25]để tạo nên 6-tuple sử dụng trong phương pháp này. Cịn lại hai tính năng là ABf và ADf, được lựa chọn từ trong số các tính năng có nhiều khả năng ảnh hưởng quyết định đến dữ liệu một lưu lượng giao thơng là bình thường hay là một cuộc tấn công. Mô tả chi tiết hơn của từng trường của 6-tuple như sau.

1) Các gói tin trung bình trong mỗi dịng - Average of Packets per flow (APf): Một trong những tính năng chính của các cuộc tấn công DDoS là nguồn IP giả mạo, khiến cho nhiệm vụ truy tìm nguồn gốc của cuộc tấn cơng rất khó khăn. Một lưu ý là nếu các flow có số lượng gói nhỏ khoảng 3 gói dữ liệu trên một flow thì đó là một cuộc tấn cơng. Vì lưu lượng bình thường thường sẽ có số lượng gói tin cao hơn, mới cần tính tốn giá trị trung bình. Trước khi tính tốn giá trị này, ta đặt các dòng theo thứ tự tăng dần dựa trên số lượng các gói dữ liệu trên một flow. Công thức 4.3 được sử dụng để tính tốn giá trị trung bình, trong đó X là số gói dữ liệu trên flow, và n là số lượng các flow.

X((n +1)/2) , if n is odd; ( ) X(n/2) + X((n +1)/2) , otherwise 2 md X      (4.3)

2) Các Byte Trung bình trên mỗi dịng - Average of Bytes per flow (ABf): Một đặc thù của các cuộc tấn cơng DDoS là kích thước tải trọng của chúng, thường là rất nhỏ để tăng tính hiệu quả của loại tấn cơng này. Cho ví dụ, trong các cuộc tấn cơng TCP, các gói dài 120 byte được gửi tới nạn nhân. Các tính năng ABf cũng được tính như là một giá trị trung bình theo cơng thức 4.3, trong đó X bây giờ đại diện cho số byte.

3) Thời gian trung bình cho mỗi dịng - Average of Duration per flow (ADf): Tương tự, ở đây đề xuất việc sử dụng một giá trị trung bình của thời gian giành cho một flow trong Bảng các flow. Tính năng này làm giảm lỗi khi có một số lượng nhỏ các gói tin trao đổi giữa các ứng dụng. Công thức 4.3 cũng được sử dụng trong tính tốn này nhưng bây giờ X là thời gian của một dòng trong chuyển đổi và n số của flow.

4) Tỷ lệ các cặp flow - Percentage of Pair-flows (PPf): Tính năng này cho phép kiểm tra xem có bao nhiêu cặp flow xảy ra tại luồng flow trong một khoảng thời gian nhất định. Ví dụ, với bất kỳ hai cặp dịng, chẳng hạn như luồng 1 và luồng 3, các điều kiện sau đây đã được kiểm tra để xác minh các dịng này có tạo thành một cặp dịng hay khơng.

• Các IP nguồn của dịng 1 phải bằng các IP đích của dịng 3; • Các IP đích của dịng 1 phải bằng các IP nguồn của dịng 3; • Cả hai dịng phải có các giao thức truyền thơng tương tự nhau.

Một cuộc tấn cơng DDoS làm tăng số lượng các dịng đơn vào mạng lưới bởi vì chúng gửi các gói tin với một IP giả. Để tính tốn tỷ lệ phần trăm của sự xuất hiện này, ta sử dụng công thức 4.4.

2* _

_

Num Pair flows PPf

Num flows

5) Tăng trưởng của các dòng đơn - Growth of Single-flows (GSf): trong sự khởi đầu của một tấn công ồ ạt số flow đơn có thể tăng rất nhanh đến cực hạn. Để tính tốn sự tăng trưởng này ta sử dụng cơng thức 4.5.

_ 2* _

int

Num flows Num Pair flows GSf

erval

 

 (4.5)

6) Tăng trưởng của các cổng khác nhau - Growth of Different Ports (GDP): Giống như cách mà IP được tạo ra bởi các cuộc tấn công DDoS, các cổng cũng có thể được tạo ra một cách ngẫu nhiên bởi các cuộc tấn cơng. Vì vậy, tính tốn tỷ lệ tăng trưởng này bằng cách sử dụng công thức 4.6.

_ int Num Ports GDP erval  (4.6)

4.4.3 Phân luồng giao thông mạng

Như đã đề cập ở trên, các mô-đun phân loại được thực hiện bằng cách sử dụng SOM. Trước khi SOM có thể phân loại bất kỳ 6-tuple [23]được chọn bởi các mơ-đun trích xuất, nó cần phải được huấn luyện với một tập hợp đủ lớn các mẫu 6- tuple thu thập được trong các cuộc tấn cơng mạng cũng như lưu lượng truy cập bình thường. Bằng cách này, SOM có thể tạo ra một bản đồ topo ở đó các vùng khác nhau đại diện cho mỗi loại hình mạng. Sau đó, bất cứ khi nào SOM được kích thích với một 6-tuple trích xuất từ mục các dịng của một số chuyển mạch OF, nó có thể để phân loại mạng là bình thường hay đã bị tấn cơng. Số lượng 6 bộ dữ liệu sử dụng cho việc huần luyện giai đoạn này được trình bày trong Phần 4.6.

Để thực hiện theo phương pháp SOM cần một ma trận 40 × 40 của các tế bào thần kinh. Bảng 4.1 chỉ ra các thông số được sử dụng cho quá trình huấn luyện và các giá trị tương ứng của chúng.

Bảng 4.1 Các thông số huấn luyện SOM

Thông số Giá trị

Tỉ lệ huấn luyện ban đầu 0.5 Bán kính khu vực ban đầu 20

Giới hạn Epoch 3000

Để tính tốn các khu vực lân cận của sơ đồ topo, một hàm Gauss được sử dụng bởi vì nó tạo ra các thuật tốn SOM hội tụ nhanh hơn so với một khu vực lân cận của sơ đồ topo hình chữ nhật được tạo ra.

4.5 Thử nghiệm

Kịch bản thử nghiệm [23] này được xây dựng để được gần như thực tế và đáng tin cậy. Cách tiếp cận bao gồm trộn các loại khác nhau của truyền dẫn hợp pháp và thay đổi các thông số của truyền dẫn tấn công. Truyền dẫn hợp pháp được tạo ra trong các thử nghiệm là một thành phần của các giao thức khác nhau: 85% là TCP, UDP là 10%, và 5% ICMP. Những giá trị này dựa trên lưu lượng mạng thu thập trong suốt 7 năm của một liên kết cụ thể giữa Nhật Bản và Hoa Kỳ. Hơn 90% lưu lượng truy cập này, theo báo cáo, đã liên quan đến giao thức TCP/UDP, và khoảng 5% là ICMP. Hơn nữa, 80% lưu lượng TCP là giống như kết nối FTP trong đó một luồng dữ liệu liên tục được giữ giữa khách hàng và máy chủ, 20% khác là giống như kết nối Telnet, mà các tính năng chính của chúng bao gồm việc gửi một nhiễu của các gói nhỏ với một khoảng thời gian dài (tạm dừng) giữa chúng.

Công cụ Stacheldraht [20] đã được sử dụng để tạo ra lưu lượng truy cập cho các cuộc tấn cơng DDoS. Trong Bảng 4.2 trình bày các loại cuộc tấn cơng được đưa ra cho các giai đoạn huấn luyện và thử nghiệm, cùng với số lượng đáp ứng tương ứng của flow được tạo ra. Các giá trị trong ngoặc đơn có liên quan đến kích thước của gói tin gửi trong một cuộc tấn cơng, trong đó kích thước tối đa cho phép của tác giả là 1024 byte. Sự mô tả của mỗi tham số đó ảnh hưởng đến cuộc tấn cơng DDoS được trình bày trong bảng dưới đây. Chỉ có một trong những thơng số đã

được thay đổi trong mỗi khoảng thời gian trong khi những thông số khác giữ nguyên giá trị mặc định của chúng.

Bảng 4.2 Tấn công DDoS sử dụng trong huấn luyện và kiểm tra Attact Types Training Tests Attact Types Training Tests

TCP/SYN flood 6080 137612 UDP(60) flood 2967 52733 UDP(200) flood - 31858 UDP(400) flood 3598 40019 UDP(800) flood - 103165 ICMP(60) flood - 57973 ICMP(1024) flood 5113 55344

1) Tốc độ tấn công quy định số lượng các botnet của các gói tin được gửi trong một khoảng thời gian cụ thể. Giá trị mặc định của nó là vừa phải, nhưng nó cũng có thể khác nhau từ thấp đến cao.

2) Động lực của luồng tấn công điều chỉnh flow của các gói tin được gửi trong một cuộc tấn cơng. Nó có thể được thiết lập liên tục hoặc với một tạm dừng ở giữa các dịng của gói 'tấn cơng. Giá trị mặc định đã được thiết lập là liên tục.

3) Cuộc tấn cơng được định cấu hình botnet để gửi các flow của gói tin'của các cuộc tấn công khác theo chế độ đồng bộ hoặc chế độ xen kẽ. Kiểu mặc định là đồng bộ. 4) Tỷ lệ giao thơng hợp pháp cấu hình số dịng hợp pháp của các gói tin tham gia thí nghiệm, trong khi một phần của giao thức hỗn hợp và các gói tin TCP khơng thay đổi. Giá trị vừa phải là giá trị mặc định của tính năng này.

Các kịch bản thử nghiệm đã được thực hiện dựa trên kịch bản có sẵn, trong đó sử dụng mơ phỏng để xây dựng một mạng dựa trên nền tảng của NOX. Hình 5 mơ tả các cấu trúc liên kết được sử dụng cho các thí nghiệm. Mạng 1 tương ứng với mạng của nạn nhân bị tấn cơng và nó bao gồm ba chuyển mạch OpenFlow kiểm soát bởi các NOX. Các botnet tạo ra tấn công DDoS trong mạng 2, và flow với lưu

Một phần của tài liệu Các biện pháp nâng cao tính bảo mật của mạng doanh nghiệp sử dụng kỹ thuật mạng điều khiển bằng phần mềm (Trang 53 - 60)