Tổng quan nghiên cứu

Trong bối cảnh mạng Internet phát triển nhanh chóng và trở thành hạ tầng quan trọng chi phối nhiều lĩnh vực như kinh tế, giáo dục, thương mại điện tử, an ninh mạng ngày càng trở thành vấn đề cấp thiết. Theo báo cáo của các nhà mạng lớn, năm 2020 đã ghi nhận hơn 32.000 cuộc tấn công mạng trên 81 quốc gia, gây ra hàng nghìn vụ đánh cắp và vi phạm dữ liệu, thiệt hại kinh tế lên đến hàng tỷ đô la. Các cuộc tấn công ngày càng đa dạng về hình thức và tinh vi hơn, đòi hỏi các hệ thống phát hiện xâm nhập (Intrusion Detection Systems - IDS) phải được nâng cao hiệu quả và khả năng nhận diện các cuộc tấn công mới.

Mục tiêu nghiên cứu của luận văn là đánh giá và so sánh hiệu quả của các thuật toán học máy trong việc phát hiện xâm nhập mạng dựa trên tập dữ liệu thực tế CICIDS 2017, đồng thời đề xuất phương pháp lựa chọn đặc trưng tối ưu nhằm nâng cao hiệu suất phát hiện. Nghiên cứu tập trung vào 12 loại tấn công phổ biến, bao gồm DoS, DDoS, Botnet, PortScan, FTP-Patator, SSH-Patator, Web Attack, Infiltration, Heartbleed, và các biến thể DoS khác. Phạm vi nghiên cứu bao gồm dữ liệu thu thập trong 5 ngày từ 03/07/2017 đến 07/07/2017, với hơn 3 triệu mẫu luồng dữ liệu mạng.

Ý nghĩa của nghiên cứu thể hiện qua việc cung cấp cái nhìn tổng quan về ứng dụng các thuật toán học máy trong phát hiện xâm nhập, đồng thời góp phần nâng cao độ chính xác và giảm thiểu chi phí tính toán cho các hệ thống IDS hiện đại, đáp ứng yêu cầu bảo mật ngày càng cao trong môi trường mạng phức tạp.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Luận văn dựa trên các lý thuyết và mô hình học máy phổ biến trong lĩnh vực phát hiện xâm nhập mạng, bao gồm:

  • Lý thuyết phát hiện bất thường (Anomaly Detection): Phân loại các mẫu dữ liệu thành bình thường và bất thường dựa trên các tiêu chí như điểm bất thường, ngữ cảnh bất thường và bất thường chung. Đây là cơ sở để phát hiện các cuộc tấn công mới chưa từng xuất hiện.

  • Các thuật toán học máy giám sát: Bao gồm Random Forest, AdaBoost, K-Nearest Neighbors (KNN), Naive Bayes, Quadratic Discriminant Analysis (QDA), Multilayer Perceptron (MLP), và ID3. Các thuật toán này được lựa chọn dựa trên khả năng phân loại và xử lý dữ liệu lớn, phức tạp.

  • Mô hình cây quyết định và rừng ngẫu nhiên (Random Forest): Sử dụng các cây quyết định nhị phân với phép đo tạp chất Gini hoặc entropy để phân loại dữ liệu, đồng thời giảm phương sai bằng cách lấy trung bình dự đoán của nhiều cây.

  • Thuật toán AdaBoost: Tăng trọng số cho các mẫu bị phân loại sai trong quá trình huấn luyện nhằm cải thiện độ chính xác của mô hình.

  • Mạng Bayes và Naive Bayes: Mô hình xác suất có điều kiện dựa trên định lý Bayes, giả định các đặc trưng độc lập để tính toán xác suất hậu nghiệm.

  • Phân tích phân biệt tuyến tính và bậc hai (LDA, QDA): Sử dụng phân phối Gaussian để mô hình hóa các lớp và xác định ranh giới phân loại.

  • Mạng nơ-ron nhân tạo đa lớp (MLP): Mạng perceptron nhiều lớp với các hàm kích hoạt phi tuyến để phân loại dữ liệu phức tạp.

  • Thuật toán ID3: Thuật toán cây quyết định dựa trên hàm entropy để lựa chọn thuộc tính phân chia dữ liệu tốt nhất.

Phương pháp nghiên cứu

  • Nguồn dữ liệu: Sử dụng tập dữ liệu CICIDS 2017, bao gồm hơn 3 triệu mẫu luồng dữ liệu mạng với 85 đặc trưng, ghi nhận các loại tấn công và luồng dữ liệu bình thường trong 5 ngày.

  • Tiền xử lý dữ liệu: Loại bỏ các mẫu dữ liệu thiếu hoặc không hợp lệ (khoảng 288.602 mẫu), xử lý các giá trị đặc biệt như "Infinity" và "NaN", chuyển đổi dữ liệu dạng chuỗi sang dạng số bằng LabelEncoder.

  • Lựa chọn đặc trưng: Áp dụng thuật toán Random Forest Regressor để đánh giá tầm quan trọng của từng đặc trưng, lựa chọn các đặc trưng có trọng số cao nhất cho từng loại tấn công và cho toàn bộ tập dữ liệu.

  • Phân chia dữ liệu: Tập dữ liệu được chia ngẫu nhiên theo tỷ lệ 70% huấn luyện và 30% kiểm tra, thực hiện lặp lại 10 lần để đảm bảo tính ổn định của kết quả.

  • Phương pháp phân tích: Triển khai và so sánh hiệu quả của 7 thuật toán học máy (Random Forest, AdaBoost, KNN, Naive Bayes, QDA, MLP, ID3) trên các tập dữ liệu đã lựa chọn đặc trưng, đánh giá dựa trên các chỉ số Accuracy, Precision, Recall và F1-score.

  • Timeline nghiên cứu: Nghiên cứu được thực hiện trong khoảng thời gian từ tháng 9/2019 đến tháng 10/2020, bao gồm các giai đoạn thu thập, tiền xử lý dữ liệu, triển khai thuật toán, đánh giá và phân tích kết quả.

Kết quả nghiên cứu và thảo luận

Những phát hiện chính

  1. Hiệu quả lựa chọn đặc trưng:

    • Lựa chọn đặc trưng theo từng loại tấn công giúp giảm số lượng đặc trưng từ 85 xuống còn 48, sau khi loại bỏ trùng lặp còn 18 đặc trưng chính.
    • Đặc trưng quan trọng nhất bao gồm các thông số như Bwd Packet Length Std, Flow Bytes/s, Total Length of Fwd Packets, Flow IAT Min, chiếm hơn 90% tổng trọng số tầm quan trọng.
  2. Hiệu suất các thuật toán học máy trên từng loại tấn công:

    • Thuật toán ID3 đạt F1-score cao nhất với 7/12 loại tấn công có kết quả trên 0.9, thời gian xử lý nhanh hơn so với AdaBoost và Random Forest.
    • KNN có hiệu suất cao nhất (F1-score ~0.98) khi áp dụng trên tập 18 đặc trưng, nhưng thời gian xử lý lâu hơn đáng kể.
    • Naive Bayes và QDA có hiệu suất thấp nhất, đặc biệt QDA chỉ đạt khoảng 0.3-0.5 F1-score trên nhiều loại tấn công.
  3. Hiệu quả các thuật toán trên tập dữ liệu tổng hợp:

    • Khi gộp tất cả các loại tấn công thành một nhãn duy nhất "tấn công", các thuật toán như Random Forest, ID3, AdaBoost đạt F1-score trên 0.94, trong khi Naive Bayes và MLP đạt khoảng 0.85-0.93.
    • Việc giảm số lượng đặc trưng từ 85 xuống còn 7 đặc trưng quan trọng giúp giảm đáng kể thời gian xử lý mà vẫn giữ được hiệu suất cao.
  4. So sánh với nghiên cứu trước:

    • Kết quả của luận văn tương đương hoặc vượt trội hơn so với nghiên cứu của Sharafaldin et al. (2018) trên tập dữ liệu CICIDS 2017, đặc biệt với các thuật toán Random Forest, ID3 và AdaBoost.

Thảo luận kết quả

Kết quả nghiên cứu cho thấy việc lựa chọn đặc trưng dựa trên trọng số quan trọng của Random Forest giúp giảm đáng kể chi phí tính toán mà không làm giảm hiệu suất phát hiện xâm nhập. Thuật toán ID3 thể hiện sự cân bằng tốt giữa độ chính xác và thời gian xử lý, phù hợp cho các hệ thống phát hiện xâm nhập thời gian thực. KNN tuy có hiệu suất cao nhưng chi phí tính toán lớn, hạn chế ứng dụng trong môi trường mạng lớn.

Hiệu suất thấp của Naive Bayes và QDA có thể do giả định độc lập giữa các đặc trưng hoặc phân phối Gaussian không phù hợp với dữ liệu thực tế phức tạp. MLP cho thấy hiệu quả phụ thuộc vào số lượng mẫu dữ liệu, với các loại tấn công có ít mẫu như Heartbleed và Infiltration thì hiệu suất giảm đáng kể.

Việc gộp tất cả các loại tấn công thành một nhãn duy nhất giúp đơn giản hóa mô hình nhưng có thể làm mất thông tin chi tiết về từng loại tấn công, do đó cần cân nhắc khi áp dụng trong thực tế. Các kết quả có thể được trình bày qua biểu đồ cột so sánh F1-score giữa các thuật toán trên từng loại tấn công và biểu đồ đường thể hiện thời gian xử lý tương ứng.

Đề xuất và khuyến nghị

  1. Xây dựng hệ thống phát hiện xâm nhập phân tầng:

    • Áp dụng mô hình phân tầng với lớp đầu tiên sử dụng các thuật toán nhẹ như Naive Bayes, QDA để phát hiện nhanh các bất thường.
    • Lớp tiếp theo sử dụng các thuật toán có độ chính xác cao hơn như ID3, AdaBoost để phân loại chi tiết hơn.
    • Thời gian thực hiện: 6-12 tháng, chủ thể: các tổ chức an ninh mạng và doanh nghiệp CNTT.
  2. Tối ưu lựa chọn đặc trưng theo từng loại tấn công:

    • Phát triển công cụ tự động lựa chọn đặc trưng dựa trên trọng số quan trọng để giảm chi phí tính toán và nâng cao hiệu quả phát hiện.
    • Thời gian thực hiện: 3-6 tháng, chủ thể: nhóm nghiên cứu và phát triển phần mềm an ninh mạng.
  3. Mở rộng tập dữ liệu huấn luyện:

    • Thu thập và bổ sung thêm các mẫu dữ liệu cho các loại tấn công ít mẫu như Heartbleed, Infiltration để cải thiện hiệu suất các thuật toán như MLP.
    • Thời gian thực hiện: liên tục, chủ thể: các trung tâm nghiên cứu và tổ chức bảo mật.
  4. Phát triển mô hình học máy kết hợp đa thuật toán:

    • Nghiên cứu và triển khai mô hình ensemble kết hợp các thuật toán học máy để tận dụng ưu điểm từng phương pháp, nâng cao độ chính xác và khả năng phát hiện.
    • Thời gian thực hiện: 12 tháng, chủ thể: các viện nghiên cứu và doanh nghiệp công nghệ.

Đối tượng nên tham khảo luận văn

  1. Nhà nghiên cứu và sinh viên ngành An ninh mạng, Khoa học máy tính:

    • Lợi ích: Hiểu rõ các thuật toán học máy ứng dụng trong phát hiện xâm nhập, phương pháp lựa chọn đặc trưng hiệu quả.
    • Use case: Phát triển đề tài nghiên cứu, luận văn thạc sĩ, tiến sĩ về an ninh mạng.
  2. Chuyên gia phát triển hệ thống IDS/IPS:

    • Lợi ích: Áp dụng các thuật toán học máy tối ưu vào hệ thống phát hiện xâm nhập thực tế, nâng cao hiệu suất và giảm chi phí vận hành.
    • Use case: Thiết kế, cải tiến hệ thống IDS/IPS cho doanh nghiệp, tổ chức.
  3. Doanh nghiệp cung cấp dịch vụ an ninh mạng:

    • Lợi ích: Nắm bắt xu hướng công nghệ mới, lựa chọn giải pháp phát hiện xâm nhập phù hợp với môi trường mạng đa dạng.
    • Use case: Triển khai hệ thống giám sát an ninh mạng, bảo vệ hạ tầng CNTT.
  4. Cơ quan quản lý và hoạch định chính sách an ninh mạng:

    • Lợi ích: Hiểu rõ các phương pháp phát hiện xâm nhập hiện đại, đánh giá hiệu quả các giải pháp công nghệ.
    • Use case: Xây dựng tiêu chuẩn, quy định về an ninh mạng, hỗ trợ các dự án phát triển hạ tầng an toàn thông tin.

Câu hỏi thường gặp

  1. Tại sao cần lựa chọn đặc trưng trong phát hiện xâm nhập?
    Lựa chọn đặc trưng giúp giảm số lượng biến đầu vào, giảm chi phí tính toán và tránh hiện tượng quá khớp, từ đó nâng cao hiệu suất và độ chính xác của mô hình học máy. Ví dụ, trong nghiên cứu này, số đặc trưng giảm từ 85 xuống còn 18 vẫn giữ được hiệu quả cao.

  2. Thuật toán nào phù hợp nhất cho phát hiện xâm nhập mạng?
    Thuật toán ID3 và Random Forest cho kết quả cân bằng giữa độ chính xác và thời gian xử lý, phù hợp cho hệ thống phát hiện xâm nhập thời gian thực. KNN có hiệu suất cao nhưng chi phí tính toán lớn, còn Naive Bayes và QDA có hiệu suất thấp hơn.

  3. Tập dữ liệu CICIDS 2017 có ưu điểm gì so với các tập dữ liệu khác?
    CICIDS 2017 là tập dữ liệu thực tế, đa dạng các loại tấn công và giao thức mạng, được đánh nhãn chi tiết, phù hợp cho nghiên cứu và phát triển hệ thống IDS hiện đại. Tuy nhiên, kích thước lớn và chưa có tập huấn luyện riêng là những thách thức khi sử dụng.

  4. Làm thế nào để xử lý dữ liệu thiếu hoặc không hợp lệ trong tập dữ liệu mạng?
    Cần loại bỏ hoặc sửa chữa các mẫu dữ liệu thiếu, giá trị vô hạn hoặc không xác định (NaN, Infinity) trước khi huấn luyện mô hình. Ví dụ, trong nghiên cứu này, khoảng 288.602 mẫu bị loại bỏ và các giá trị đặc biệt được thay thế bằng số thích hợp.

  5. Có thể áp dụng mô hình học máy này trong môi trường mạng thực tế không?
    Có thể, nhưng cần xây dựng hệ thống phân tầng với các thuật toán phù hợp từng lớp để cân bằng giữa hiệu suất và chi phí tính toán. Ngoài ra, cần cập nhật liên tục dữ liệu và mô hình để phát hiện các cuộc tấn công mới.

Kết luận

  • Luận văn đã nghiên cứu và đánh giá hiệu quả của 7 thuật toán học máy trong phát hiện xâm nhập mạng dựa trên tập dữ liệu thực tế CICIDS 2017 với hơn 3 triệu mẫu.
  • Lựa chọn đặc trưng dựa trên Random Forest giúp giảm đáng kể số lượng biến đầu vào mà vẫn giữ được hiệu suất cao, tối ưu chi phí tính toán.
  • Thuật toán ID3 và Random Forest thể hiện hiệu quả cân bằng giữa độ chính xác và thời gian xử lý, phù hợp cho ứng dụng thực tế.
  • Kết quả nghiên cứu vượt trội hoặc tương đương với các nghiên cứu trước đây trên cùng tập dữ liệu, góp phần nâng cao khả năng phát hiện xâm nhập mạng.
  • Đề xuất xây dựng hệ thống phát hiện xâm nhập phân tầng, mở rộng tập dữ liệu huấn luyện và phát triển mô hình học máy kết hợp đa thuật toán trong các nghiên cứu tiếp theo.

Áp dụng mô hình phân tầng vào hệ thống IDS thực tế, mở rộng thu thập dữ liệu và nghiên cứu các thuật toán học sâu để nâng cao khả năng phát hiện các cuộc tấn công mới.