Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 91 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
91
Dung lượng
1,75 MB
Nội dung
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SĨ Phát xâm nhập mạng bất thường dựa phân tích lưu lượng mạng sử dụng kỹ thuật machine learning VŨ MẠNH TUÂN tuanvu71193@gmail.com Ngành Công nghệ Thông tin Giảng viên hướng dẫn: PGS.TS Nguyễn Linh Giang Viện: Công nghệ thông tin Truyền thông HÀ NỘI - 2020 TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SĨ Phát xâm nhập mạng bất thường dựa phân tích lưu lượng mạng sử dụng kỹ thuật machine learning VŨ MẠNH TUÂN tuanvu71193@gmail.com Ngành Công nghệ Thông tin Giảng viên hướng dẫn: PGS.TS Nguyễn Linh Giang Chữ ký GVHD Viện: Công nghệ thông tin Truyền thơng HÀ NỘI - 2020 CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ Họ tên tác giả luận văn : VŨ MẠNH TUÂN Đề tài luận văn: Phát xâm nhập mạng bất thường dựa phân tích lưu lượng mạng sử dụng kỹ thuật Machine Learning Chun ngành: Mạng máy tính An tồn thơng tin Mã số SV: CA190190 Tác giả, Người hướng dẫn khoa học Hội đồng chấm luận văn xác nhận tác giả sửa chữa, bổ sung luận văn theo biên họp Hội đồng ngày 30/10/2020 với nội dung sau: − − − − Chỉnh sửa , bỏ ví dụ khơng liên quan đến chủ đề an ninh mạng Tính tốn lại giá trị confusion matrix Phân tích kết thực nghiệm thu Đánh giá phương án sử dụng Ngày tháng năm 2020 Giáo viên hướng dẫn Tác giả luận văn CHỦ TỊCH HỘI ĐỒNG LỜI CAM ĐOAN Tôi xin cam đoan luận văn tốt nghiệp với đề tài “Phát xâm nhập mạng bất thường dựa phân tích lưu lượng mạng sử dụng kỹ thuật Machine Learning ” cơng trình nghiên cứu tôi, hướng dẫn PGS.TS Nguyễn Linh Giang Tơi trích dẫn đầy đủ tài liệu, cơng trình nghiên cứu liên quan nước quốc tế phần tài liệu tham khảo Ngoại trừ tài liệu tham khảo dẫn chứng, luận văn hồn tồn cơng trình nghiên cứu riêng tơi Tơi xin hồn tồn chịu trách nhiệm chịu hình thức kỷ luật theo quy định cho lời cam đoan Hà Nội, ngày… tháng … năm 2020 Học Viên Vũ Mạnh Tuân LỜI CẢM ƠN Đầu tiên xin dành lời cảm ơn đến PGS.TS Nguyễn Linh Giang hướng dẫn , đưa lời khuyên hỗ trợ cho q trình hồn thành luận văn Tiếp theo xin chân thành cảm ơn thầy cô Viện Công nghệ thông tin truyền thông, trường Đại học Bách Khoa Hà Nội giảng dạy, truyền đạt kiến thức q giá suốt q trình tơi học tập, nghiên cứu trường Tôi xin cảm ơn người thân gia đình tồn thể bạn bè, người đồng nghiệp Cảng hàng không quốc tế Nội Bài giúp đỡ, động viên vấp phải khó khăn, bế tắc Cuối tơi xin cảm ơn đề tài KC.01.15/16-20 hỗ trợ trình thực luận văn Mặc dù cố gắng luận văn chắn không tránh khỏi thiếu sót, tơi mong nhận ý kiến đánh giá phê bình từ phía Thầy Cơ để luận văn hồn thiện Tơi xin chân thành cảm ơn! MỤC LỤC DANH MỤC HÌNH VẼ iv DANH MỤC BẢNG BIỂU vi DANH MỤC VIẾT TẮT iii ĐẶT VẤN ĐỀ Lý lựa chọn đề tài : Tính cấp thiết đề tài : Mục tiêu phạm vi nghiên cứu : Cấu trúc luận văn : CHƯƠNG : TỔNG QUAN VỀ CÁC MƠ HÌNH HỌC MÁY ÁP DỤNG TRONG HỆ THỐNG PHÁT HIỆN XÂM NHẬP MẠNG BẤT THƯỜNG 1.1 Kiến trúc hệ thống Network Intrustion Detection System : 1.2 Tìm hiểu mơ hình Machine Learning : 1.2.1 Hồi quy tuyến tính : 1.2.1.1 Mơ hình hồi quy tuyến tính : 1.2.1.2 Hàm mát : 1.2.1.3 Gradient descent : 1.2.2 Mơ hình Multilayer Neural network : 1.2.2.1 Layer : 1.2.2.2 Node neural : 10 1.2.2.3 Các hàm Activation Function : 11 1.2.2.4 Cấu trúc mô hình Multilayer Neural network : 12 1.2.3 Recurrent neural network biến thể : 15 1.2.3.1 Recurrent neural network : 15 1.2.3.2 Các mơ hình kiến trúc RNN thường gặp : 17 1.2.4 Support vector machine (SVM) : 18 1.2.4.1 Tìm hiểu SVM : 18 1.2.4.2 Phát biểu toán ứng dụng SVM : 19 1.2.4.3.Soft-margin support vector machine: 20 1.3 Khảo sát đánh giá số nghiên cứu khoa học để làm rõ mục tiêu luận văn : 23 1.3.1 So sánh hiệu LSTM GRU : 24 1.3.2 Đề xuất mơ hình mạng neuron kết hợp với SVM : 25 CHƯƠNG : KHẢO SÁT MƠ HÌNH LSTM VÀ GRU TÌM HIỂU CHI TIẾT VỀ TẬP DỮ LIỆU MẠNG KYOTO DATASET 28 i 2.1 Tập liệu thực nghiệm Kyoto Dataset : 28 2.1.1 Giới thiệu Kyoto Dataset : 28 2.1.2 So sánh Kyoto Dataset với liệu mạng : 29 2.1.3 Các đặc trưng liệu Kyoto dataset : 31 2.2 Long Short Term Memory : 33 2.2.1 Giới thiệu mơ hình mạng LSTM : 33 2.2.2 Tìm hiểu cấu trúc mạng LSTM : 36 2.3 Gated Recurrent Unit : 38 CHƯƠNG : MƠ HÌNH ĐỀ XUẤT LSTM KẾT HỢP VỚI SVM ÁP DỤNG CHO BÀI TOÁN PHÁT HIỆN XÂM NHẬP MẠNG 40 3.1 Giới thiệu ngơn ngữ lập trình Python thư viện Tensorflow : 40 3.1.1 Ngơn ngữ lập trình Python: 40 3.1.2 Thư viện Tensorflow : 40 3.2 Mơ hình mạng neural LSTM kết hợp với SVM : 42 CHƯƠNG : PHÂN TÍCH , XỬ LÝ TẬP DỮ LIỆU KYOTO DATASET 2015 THỰC NGHIỆM VÀ ĐÁNH GIÁ MƠ HÌNH ĐỀ XUẤT 49 4.1 Trích rút tập liệu Kyoto Dataset 2015 : 49 4.2 Phân tích liệu : 51 4.3 Chuẩn hóa xử lý liệu : 55 4.3.1 Xử lý liệu thô : 57 4.3.2 Chuẩn hóa liệu : 57 4.3.2.1 Label-Encoding : 58 4.3.2.2 Kỹ thuật Standalization : 59 4.3.2.3 Data Binning : 61 4.3.3 Chuyển đổi định dạng file từ CSV sang NPY : 62 4.3.4 One-hot Encoding : 62 4.4 Thực nghiệm đánh giá mơ hình đề xuất : 63 4.4.1 Các phương pháp đánh giá : 63 4.4.2 Tìm hiểu thơng số hyper-parameter sử dụng mơ hình : 64 4.4.3 Cài đặt môi trường thực nghiệm : 66 4.4.4.Thực nghiệm tập liệu Kyoto Dataset 2013 : 67 4.4.5.Thực nghiệm tập liệu Kyoto Dataset 2015 : 70 4.5 Kết thực nghiệm : 74 KÊT LUẬN 76 ii DANH MỤC VIẾT TẮT TỪ VIẾT TẮT TIẾNG ANH TIẾNG VIỆT AI Artificial Intelligence Trí tuệ nhân tạo NIDS Hệ thống phát xâm nhập mạng CPU Network intrusion detection system Central Processing Unit GPU Graphics Processing Unit Bộ vi xử lý đồ họa RAM Random Access Memory Bộ nhớ lưu trữ tạm thời ANN Artificial Neural Network Mạng thần kinh nhân tạo RNN Recurrent Neural Network Mạng nơ ron hồi quy LSTM Long Short Term Memory Mạng nơ ron nhớ ngắn dài hạn GRU Gated Recurrent Units Mạng nơ ron hồi tiếp có cổng CNN Convolutional Neural Network Mạng nơ-ron tích chập SVM Support Vector Machine Một thuật toán phân lớp TPR True positive rate TNR True nagative rate Tỉ lệ phân loại gói tin gán nhãn ‘độc hại’ Tỉ lệ phân loại gói tin gán nhãn “bình thường” FPR False positive rate Tỉ lệ phát nhầm gói tin độc hại thực tế bình thường FNR False negative rate Tỉ lệ loại trừ nhầm gói tin bình thường thực tế độc hại Bộ chip xử lý máy tính iii DANH MỤC HÌNH VẼ Hình 1.1 : Mơ hình áp dụng Machine Learning triển khai hệ thống NIDS Hình 1.3 : Mơ hình mạng neurral network có L layer Hình 1.4 : Mô tả cách thức hoạt động neural 10 Hình 1.5 : Mơ hình Multilayer Neural network 12 Hình 1.6 : Tiến trình tính tốn mạng neural network [7] 13 Hình 1.7 : Tiến trình lan truyền tiến 14 Hình 1.8 : Tiến trình lan truyền ngược 15 Hình 1.9 : Mơ hình biểu diễn mạng Recurrent Neural Network [8] 16 Hình 1.10 : Mơ tả kiến trúc Recurrent Neural Network [10] 17 Hình 1.11 : Mơ tả lớp liệu xanh đỏ , trường hợp có vơ số đường thẳng phân tách lớp liệu 18 Hình 1.12 : Ví dụ minh họa lớp liệu xanh đỏ sử dụng mặt phân chia có phương trình : + = 19 Hình 1.13 : SVM với tốn liệu có nhiễu nhỏ 20 Hình 1.14 : SVM với toán liệu gần tách biệt 21 Hình 1.15 : Trường hợp áp dụng Soft-margin support vector machine 21 Hình 1.16 :So sánh RNN-IDS với thuật toán khác phân loại đa lớp 24 Hình 1.17 :So sánh RNN-IDS với thuật toán khác phân loại nhị phân 24 Hình 1.18 : Bảng so sánh GRU-SVM GRU-Softmax 26 Hình 2.1: Bảng so sánh đặc trưng tập liệu mạng 30 Hình 2.2 : Điểm benmark tập liệu KDD99 Kyoto Dataset 30 Hình 2.3 : Mơ hình mạng Recurrent Neural Network dùng hàm hidden layer 34 Hình 2.4 : Mơ hình mạng Long Short Term Memory với cổng chức 34 Hình 2.5 : Chú thích tốn tử mạng Long Short Term Memory 34 Hình 2.6 : Mô tả cấu trúc nhớ dài hạn cell state LSTM 35 Hình 2.7 : Mơ tả cấu trúc lớp cổng quên LSTM 36 Hình 2.8 : Mơ tả cấu trúc lớp cổng đầu vào LSTM 37 Hình 2.9 : Mơ tả bước cập nhập lại trạng thái cell state LSTM 37 Hình 2.10 : Mô tả cấu trúc lớp cổng đầu vào LSTM 38 Hình 2.11 : Mơ hình mạng Gated Recurrent Unit với cổng chức [22] 38 iv Hình 3.1 : Mơ đồ thị xây dựng thư viện Tensorflow 41 Hình 3.3 : Kiến trúc mơ hình đề xuất LSTM-SVM 44 Hình 3.4 :Biểu diễn graph TensorBoard mô lại bước tính tốn logic mơ hình LSTM-SVM 46 Hình 4.1 : Tập liệu Kyoto Dataset 2015 sau tải 49 Hình 4.2 : Các bước trích rút tập liệu thực nghiệm 50 Hình 4.3 : Biểu đồ thống kê số lượng nhãn gói tin trường liệu 54 Hình 4.4: Giản đồ mơ bước 56 xử lý liệu mơ hình đề xuất LSTM-SVM 56 Hình 4.5: Biểu đồ matrix confusion LSTM-SVM tập huấn luyện Kyoto Dataset 2013 69 Hình 4.6 :Biểu đồ matrix confusion LSTM-SVM tập kiểm thử Kyoto Dataset 2013 70 Hình 4.7: Biểu đồ phân bố nhãn gói tin tập huấn luyện Kyoto Dataset 2015 71 Hình 4.8:Biểu đồ phân bố nhãn gói tin tập kiểm thử Kyoto Dataset 2015 72 Hình 4.9: Biểu đồ matrix confusion LSTM-SVM tập huấn luyện Kyoto Dataset 2015 73 Hình 4.10:Biểu đồ matrix confusion LSTM-SVM tập kiểm thử Kyoto Dataset 2015 74 v 4.4.3 Cài đặt môi trường thực nghiệm : Phần thực nghiệm người viết tiến hành so sánh mơ hình đề xuất LSTMSVM với mơ hình tham chiếu GRU-SVM nghiên cứu tác giả Abien Fred M Agarap [2] dựa phương pháp đánh giá đề cập phần 4.4.1 Mục đích việc so sánh muốn đánh giá hiệu biến thể phổ biến RNN LSTM GRU toán phát bất thường lưu lượng mạng Tập liệu thực nghiệm sử dụng : Kyoto Dataset 2013 Kyoto Dataset 2015 Đây tập liệu data network thu thập gán nhãn nhà nghiên cứu từ Đại học Kyoto ,người dùng tải theo đường liên kết : http://www.takakura.com/Kyoto_data/new_data201704/ Các thông số hyper-parameter sử dụng mô hình đề xuất mơ hình tham chiếu tham khảo từ nghiên cứu tác giả Abien Fred M Agarap sau : Hyperparameters Batch Size GRU-SVM(tham chiếu) 256 GRU-SVM(thực nghiệm) 256 LSTM-SVM(đề xuất) 256 Cell Size 256 256 256 Dropout Rate 0.85 0.85 0.85 Epoch 5 Learning Rate 1e -5 1e -5 1e -5 SVM C 0.5 0.5 0.5 Bảng 4.5 : Các thông số hyper-parameter sử dụng thực nghiệm Tất nghiên cứu khảo sát viết thực nghiệm Google Colab – sản phẩm miễn phí Google Research, cho phép chạy chương trình cài đặt Python để chạy thử nghiệm toán liên quan đến machine learning , Data anaylist , object detection … Google Colab cung cấp cho người dùng miễn phí cấu hình chip Intel Xeon Processor core- 2.3 GHz 13 GB RAM Luận án sử dụng ngôn ngữ Python với số thư viện hỗ trợ lập trình theo kèm : Thư viện tensorflow phiên 1.15.2 để cài đặt mơ hình thuật tốn LSTM-SVM, GRU-SVM Các thư viện khác Scikit-learn, numpy, matplotlib, pandas sử dụng để xử lý , chuẩn hóa , phân tích liệu đánh giá hiệu mơ hình thuật tốn 66 4.4.4.Thực nghiệm tập liệu Kyoto Dataset 2013 : Để ước lượng hiệu mơ hình GRU-SVM , đề xuất thực nghiệm hai giai đoạn : (1) training phase (pha huấn luyện) (2) test phase ( pha kiểm thử ) Mơ hình đề xuất LSTM-SVM tiến hành thực nghiệm giai đoạn Tập liệu Kyoto Dataset 2013 sau chuyển đổi từ file txt sang csv có kích thước lớn lên đến 16 GB liệu Với mục đích nghiên cứu đánh giá khoa học , tác giả Abien Fred M Agarap [2] sử dụng tập liệu với 25% ( sấp sỉ 4GB liệu ) tổng số mẫu liệu tập datatset Pha huấn luyện sử dụng khoảng 80% số lượng ( 3.2 GB liệu tương đương với 14.856.316 mẫu gói tin mạng ) tập liệu Sau tiến hành bước chuẩn hóa liệu loại bỏ gói tin trùng lặp , tập liệu train data giảm xuống từ 14.856.316 mẫu 1.898.322 mẫu ( 40 MB) Pha kiểm thử sử dụng khoảng 20% số liệu lại Dữ liệu tập test data sau thực bước chuẩn hóa loại bỏ gói tin trùng lặp , kích thước liệu giảm xuống từ 3.714.078 mẫu gói tin mạng 420.759 mẫu (9MB) Bảng phân bố lớp liệu tập train data test data cụ thể sau : Class Training Data Testing Data Normal 794.512 157.914 Attack 1.103.728 262.694 67 Kết thực nghiệm so sánh thu sau : Parameter Training Data Testing Data Epoch True Positives – Training True negatives – Training False Positives – Training False negatives –Training True Positives – Testing True negatives – Testing False positives – Testing False negatives – Testing GRU-SVM(tham chiếu) 1,898,240 420,608 GRU-SVM(thực nghiệm) 1,898,240 420,608 4,625,761 LSTM-SVM(đề xuất) 1,898,240 420,608 4,795,043 3,061,366 3,056,195 889,327 911,194 916,365 862,419 892,879 723,597 1,040,975 1,279,800 678,925 537,750 192,635 110,645 251,820 140,535 272,495 33,670 Bảng 4.6:Kết thực nghiệm thu tập huấn luyện tập kiểm thử liệu Kyoto Dataset 2013 Dựa kết thu , sử dụng thông số confusion-matrix để đánh giá mơ hình GRU-SVM ( tham chiếu) GRU-SVM(thực nghiệm) với LSTM-SVM tập huấn luyện (train data) sau : Parameters GRU-SVM(thực nghiệm) 80.99% LSTM-SVM(đề xuất) Accuarcy GRU-SVM(tham chiếu) 81.54% Recall 84.37% 83.82% 86.88 % Precision 83.54% 83.96% F1-Score 83.68% 85.4% 82.73% Bảng 4.7 : Các thông số so sánh thu tập huấn luyện Kyoto Dataset 2013 68 Hình 4.5: Biểu đồ matrix confusion LSTM-SVM tập huấn luyện Kyoto Dataset 2013 Tương tự , sử dụng thông số confusion-matrix để đánh giá mơ hình GRU-SVM ( tham chiếu) GRU-SVM(thực nghiệm) với LSTM-SVM tập kiểm thử (test data) sau : Parameters Accuracy GRU-SVM(tham chiếu) 84.15% GRU-SVM(thực nghiệm) 81.78% LSTM-SVM(đề xuất) 86.43% Recall 89.3005% 79.25% 97.44 % Precision 90.39% 83.56% F1-Score 84.45% 89.97% Bảng 4.8 : Các thông số so sánh thu tập kiểm thử Kyoto Dataset 2013 69 Hình 4.6 :Biểu đồ matrix confusion LSTM-SVM tập kiểm thử Kyoto Dataset 2013 Trong nghiên cứu tác giả Abien Fred M Agarap [2], mơ hình tham chiếu GRU-SVM thực nghiệm máy tính với phần cứng Intel Core(TM) i5-6300HQ CPU @ 2.30GHz x 4, 16GB- DDR3 RAM, NVIDIA GeForce GTX 960M 4GB DDR5 GPU Với hỗ trợ GPU , tổng thời gian để mơ hình huấn luyện dự đốn kết 18 phút Quá trình thực nghiệm luận án chạy Google Colab , chương trình chạy CPU nên thời gian huấn luyện phân loại kéo dài khoảng tiếng 30 phút Các mơ hình neural network đại phụ thuộc nhiều vào khả tính tốn CPU, GPU Tuy nhiên bỏ qua khác biệt phần cứng máy tính , mơ hình đề xuất LSTM-SVM với số accuracy tập huấn luyện tập kiểm thử [ 82.73% ; 86.43% ] cho kết tốt so với mơ hình tham chiếu GRU-SVM [81.54% ; 84.15%] 4.4.5.Thực nghiệm tập liệu Kyoto Dataset 2015 : Dữ liệu thô ban đầu lưu dạng file txt với kích thước 21.8 GB liệu Tuy nhiên mục đích luận án mang tính chất nghiên cứu lý hạn chế phần cứng , người viết sử dụng 2.5 GB liệu tổng số liệu Kyoto Dataset 2015 để thực nghiệm 70 Ở pha huấn luyện , tập liệu huấn luyện sử dụng có kích thước 2GB với tổng số ghi 13.108.153 dòng Số lượng nhãn ghi phân bố theo tỉ lệ : Label -1 -2 Tỉ lệ % 65.36% 34.62% 0.01% Với (-1 ,1, -2) nhãn liệu mô tả chương – phần Sau tiến hành bước xử lý chuẩn hóa liệu (trong phần 4.3) , số lượng ghi tập huấn luyện thu nhỏ lại 780.061 dòng Số lượng nhãn ghi phân bố theo tỉ lệ : Label Tỉ lệ % 47.13% 52.87% Hình 4.7: Biểu đồ phân bố nhãn gói tin tập huấn luyện Kyoto Dataset 2015 Ở pha kiểm thử , tập liệu kiểm thử sử dụng có kích thước 500 MB với tổng số ghi 3.277.227 dòng Số lượng nhãn ghi phân bố theo tỉ lệ sau : Label -1 -2 Tỉ lệ % 71.56% 28.43% 0.01% Sau tiến hành bước xử lý chuẩn hóa liệu (trong phần 4.3) , số lượng ghi tập kiểm thử thu nhỏ lại 455.916 dòng Số lượng nhãn ghi phân bố lại theo tỉ lệ : 71 Label Tỉ lệ % 46.05% 53.95% Hình 4.8:Biểu đồ phân bố nhãn gói tin tập kiểm thử Kyoto Dataset 2015 Kết thực nghiệm so sánh mô tả sau : Parameter GRU-SVM LSTM-SVM Training Data 780.061 780.061 Testing Data 455.916 455.916 Epoch 5 True positive1.385.046 1.405.013 Training True negative1.356.225 1.325.172 Training False Positives 481.795 512.848 Training False negatives 677.094 657.127 -Training False positives 176.530 175.635 Testing False negatives 401.870 307.325 – Testing True positive827.250 921.795 Testing True negative872.750 873.645 Testing Bảng 4.9: Kết thực nghiệm thu tập huấn luyện tập kiểm thử liệu Kyoto Dataset 2015 72 Dựa kết thu , sử dụng thông số accuracy confusion-matrix để đánh giá mơ hình GRU-SVM với LSTM-SVM tập huấn luyện (train data) sau : Parameters GRU-SVM LSTM-SVM Accuracy 70.286% 70% Recall 67.16% 68.13 % Precision 74.2% 73.26% F1-Score 70.5% 70.6% Bảng 4.10 : Các thông số so sánh thu tập huấn luyện Kyoto Dataset 2015 Hình 4.9: Biểu đồ matrix confusion LSTM-SVM tập huấn luyện Kyoto Dataset 2015 Dựa kết thu , sử dụng thông số accuracy confusion-matrix để đánh giá mơ hình GRU-SVM với LSTM-SVM tập kiểm thử (test data) sau : 73 Parameters GRU-SVM LSTM-SVM Accuracy 74.613% 78.802% Recall 67.30% 75% Precision 82.41% 84% F1-Score 74.1% 79.25% Bảng 4.11 : Các thông số so sánh thu tập kiểm thử Kyoto Dataset 2015 Hình 4.10:Biểu đồ matrix confusion LSTM-SVM tập kiểm thử Kyoto Dataset 2015 4.5 Kết thực nghiệm : Dựa kết thực nghiệm tập huấn luyện tập kiểm thử liệu Kyoto Dataset 2013 Kyoto Dataset 2015, ta nhận thấy mơ hình đề xuất LSTM-SVM cho thấy khả phát gói tin độc hại tốt so với mơ hình tham chiếu GRU – SVM 74 Với hệ thống Network Intructions Detection System , tỉ lệ phát gói tin độc hại tỉ lệ bỏ sót gói tin độc hại hai thơng số quan trọng để đánh giá tính hiệu hệ thống NIDS Hai thông số tương đương với tỉ lệ Precision Recall đề cập Precision cao đồng nghĩa với việc độ xác điểm tìm cao Recall cao đồng nghĩa với việc True Positive Rate cao, tức tỉ lệ bỏ sót điểm thực positive thấp Một mơ hình phân lớp tốt mơ hình có Precision Recall cao, tức gần tốt Ta tiến hành sử dụng cách đo chất lượng phân lớp dựa vào Precision Recall F1-score Đây thước đo đáng tin cậy hiệu mơ hình tốn phân loại , đặc biệt tập liệu thực nghiệm số tin gán nhãn “độc hại” chiếm tỉ lệ lớn tin gán nhãn “bình thường” Qua phân tích kết thu q trình thực nghiệm , thấy tập kiểm thử KyotoDataset 2013, số [Accuracy , F1-score] = [86.43% , 89.97%] LSTM-SVM tốt nhiều so với [Accuracy , F1-score] = [81.78% % , 84.45%] GRU-SVM Tương tự tập kiểm thử KyotoDataset 2015 , số [Accuracy , F1-score]= [78.802% , 79.25%] LSTM-SVM tốt [Accuracy , F1-score] = [74.613% , 74.1%] GRU-SVM Lý giải thích LSTM với cấu trúc cổng : input , output forget gate nhớ : nhớ ngắn hạn ( hidden state) , nhớ dài hạn ( cell state ) phức tạp nhiều neural xử lý hẳn so với cấu trúc cổng : reset , update gate có nhớ cell state GRU Các cell GRU sử dụng tham số để huấn luyện cell LSTM , sử dụng biến nhớ , dẫn đến cần liệu để huấn luyện , thời gian huấn luyện dự đoán kết nhanh so với LSTM Nhưng trái lại với tập liệu lớn LSTM lại có khả nhớ dài cho kết dự đốn với độ xác cao 75 KÊT LUẬN Sau khoảng thời gian tìm hiểu, nghiên cứu tài liệu thuật toán Machine Learning hệ thống NIDS đại , tơi hồn thành luận văn với đề tài “Phát xâm nhập mạng bất thường dựa phân tích lưu lượng mạng sử dụng kỹ thuật Machine Learning ” Luận văn đạt kết sau: Tìm hiểu kiến trúc trúc hệ thống Network Intruction Detection System Khảo sát đánh giá mơ hình học máy : SVM , ANN , RNN , LSTM , GRU Giới thiệu phương pháp phân tích xử lý liệu mạng, cài đặt mơ hình thuật tốn thư viện lập trình Python Qua việc dẫn chứng nghiên cứu khoa học ( phần 1.5 – chương 1) để nêu bật tính hiệu mơ hình mạng neural RNN việc sử dụng SVM thay hàm Softmax cho tốn phân loại , luận văn trình bày kết hợp biến thể mơ hình RNN LSTM kết hợp với phân lớp SVM ( mơ tả phần 1.4) , đóng góp hướng việc cải thiện hiệu suất hệ thống Network Intruction Detection System Cuối , mục đích luận văn khơng nhằm khẳng định LSTM hiệu GRU hầu hết toán mà muốn chứng minh với tập liệu data network (dữ liệu mạng - trường liệu thường metadata protocol, service, duration….) LSTM cho thấy khả phát bất thường lưu lượng mạng tốt so với GRU Kết kiểm chứng qua phần thực nghiệm đánh giá ( phần 4.4 – chương 4) so sánh mơ hình đề xuất LSTM-SVM với mơ hình tham chiếu GRU-SVM tác giả Abien Fred M Agarap [2] hai liệu mạng Kyoto Dataset 2013 2015 Mặc dù có cố gắng thời gian nghiên cứu kiến thức có hạn , hạn chế phần cứng chưa đủ tốt nên nghiên cứu chưa đạt kết mong muốn Trong tương lai muốn tiếp tục cải thiện nghiên cứu theo hướng sau : Cải thiện thêm phần cứng, vấn đề dung lượng Ram hạn chế Google Colab (13GB) việc sử dụng CPU nên tốn nhiều thời gian để huấn luyện mô hình Phần trích rút liệu Kyoto Dataset 2015 để thực nghiệm với số lượng gói tin nhỏ (do nhớ Ram ko đủ tải) , chưa khai thác hết khả xử lý lượng lớn liệu LSTM Trong phần nghiên cứu đề cập đến việc thay hàm Softmax phân lớp Soft margin-support vector machine kết hợp với biến thể mơ hình RNN (LSTM,GRU) để giải toán phân loại nhị phân ( có lớp liệu ) Để mở rộng mơ hình , áp dụng 76 cho toán phân loại đa lớp ( số lớp liệu nhiều ) , ta sử dụng phân lớp multi-class SVM kết hợp với khơng mơ hình LSTM ,GRU mà cịn mơ hình deep learning khác ANN , autoencoder, CNN… , mở rộng thêm phương pháp nghiên cứu , cải thiện hệ thống Network Intruction Detection System tương lai Cách tiếp cận toán khơng cịn phát bất thường lưu lượng mạng mà chuyển hướng sang nghiên cứu phát xác loại malware , công độc hại cụ thể : DoS ( công từ chối dịch vụ ), Probe ( công cách rà quét , thu thập thông tin hệ thống mạng ) , User-to-Root ( công leo thang đặc quyền , cách chiếm quyền kiểm sốt máy tính người dùng )… 77 TÀI LIỆU THAM KHẢO [1] "Biggest Cyber Attacks and Their Cost for the Global Economy," [Online] Available: https://www.technology.org/2019/07/17/biggest-cyber-attacksand-their-cost-for-the-global-economy/ [2] A F M Agarap, "A Neural Network Architecture Combining Gated Recurrent Unit (GRU) and Support Vector Machine (SVM) for Intrusion Detection in Network Traffic Data," in 2018, 10th International Conference on Machine Learning and Computing, Macau, China, 2018 [3] J Song, H T Y Okabe and M Eto, "Statistical analysis of honeypot data and building of Kyoto 2006+ dataset for NIDS evaluation," in 1st Workshop on Building Analysis Datasets and Gathering Experience Returns for Security (BADGERS 2011), Salzburg, Austria, 2011 [4] "Linear_regression," [Online] Available: https://en.wikipedia.org/wiki/Linear_regression [5] "Hồi quy Tuyến tính," [Online] Available: https://d2l.aivivn.com/chapter_linear-networks/linear-regression_vn.html [6] V H Tiệp, “Multilayer neural network backpropagation,” Machine Learning bản, Nhà Xuất Bản Khoa học & kỹ thuật, 2018, pp 194-203 [7] A MOAWAD, "Neural networks and back-propagation explained in a simple way," 2018 [Online] Available: https://medium.com/datathings/neural-networks-and-backpropagationexplained-in-a-simple-way-f540a3611f5e [8] M Pezeshki, "Sequence Modeling using Gated Recurrent Neural Networks," 2015 [Online] Available: https://arxiv.org/pdf/1501.00299.pdf [9] C YIN, Y ZHU, J FEI and X HE, "A Deep Learning Approach for Intrusion," IEEE Access, 11 2017 [10] A Karpathy, "The Unreasonable Effectiveness of Recurrent Neural Networks," 2015 [Online] Available: http://karpathy.github.io/2015/05/21/rnn-effectiveness/ [11] V H Tiệp, “Support vector machine,” Machine Learning bản, Nhà Xuất Bản Khoa học & kỹ thuật, 2018, pp 329-338 [12] V H Tiệp, “Soft-margin support vector machine,” Machine Learning bản, Nhà Xuất Bản Khoa học & kỹ thuật, 2018, pp 340 - 354 78 [13] T T Tín T V Lăng, “Cải thiện khả phát công mạng kỹ thuật học sâu,” Tạp chí Khoa học & Cơng nghệ Số 1, 2018 [14] T T Hương P V Hạnh, “MỘT CÁCH TIẾP CẬN KẾT HỢP MẠNG NƠ-RON HỒI QUY,” TẠP CHÍ KHOA HỌC ĐẠI HỌC ĐÀ LẠT, tập 9, p 2, 2019 [15] “Vanishing & Exploding Gradients Problems in Deep Neural Networks,” [Trực tuyến] Available: https://viblo.asia/p/vanishing-exploding-gradientsproblems-in-deep-neural-networks-part-1-eW65G2gRlDO [16] J Chung, C Gulcehre, K C Cho and Y Bengio, "Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling," in NIPS 2014 Deep Learning and Representation Learning Workshop, Montréal CANADA, 2014 [17] "KDD Cup 1999 Data," [Online] Available: http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html [18] I Sharafaldin, A Gharib, A H L and A A G , "Towards a Reliable Intrusion Detection Benchmark Dataset," Software Networking , January 2017, 2017 [19] J SONG, H Takakura and Y Okabe, "Description of Kyoto University Benchmark Data" [20] C Olah, "Understanding LSTM Networks," 2015 [Online] Available: https://colah.github.io/posts/2015-08-Understanding-LSTMs/ [21] “Bộ nhớ Ngắn hạn Dài (LSTM),” [Trực tuyến] Available: https://d2l.aivivn.com/chapter_recurrent-modern/lstm_vn.html [22] S Rathor, "Simple RNN vs GRU vs LSTM : Difference lies in More Flexible control," 2018 [Online] Available: https://medium.com/@saurabh.rathor092/simple-rnn-vs-gru-vs-lstmdifference-lies-in-more-flexible-control-5f33e07b1e57 [23] “Nút Hồi tiếp có Cổng (GRU),” [Trực tuyến] Available: https://d2l.aivivn.com/chapter_recurrent-modern/gru_vn.html [24] Y A Ando, H Gomi and H Tanaka, "Detecting Fraudulent Behavior Using Recurrent," in Computer Security Symposium 2016, Coeur d'Alene, Idaho, USA, 2016 [25] S Glen, "Interquartile Range (IQR): What it is and How to Find it," [Online] Available: https://www.statisticshowto.com/probability-andstatistics/interquartile-range/ 79 80 ... CHỈNH SỬA LUẬN VĂN THẠC SĨ Họ tên tác giả luận văn : VŨ MẠNH TUÂN Đề tài luận văn: Phát xâm nhập mạng bất thường dựa phân tích lưu lượng mạng sử dụng kỹ thuật Machine Learning Chuyên ngành: Mạng. ..TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SĨ Phát xâm nhập mạng bất thường dựa phân tích lưu lượng mạng sử dụng kỹ thuật machine learning VŨ MẠNH TUÂN tuanvu71193@gmail.com Ngành Công... ĐOAN Tôi xin cam đoan luận văn tốt nghiệp với đề tài ? ?Phát xâm nhập mạng bất thường dựa phân tích lưu lượng mạng sử dụng kỹ thuật Machine Learning ” cơng trình nghiên cứu tôi, hướng dẫn PGS.TS