Ứng dụng Deep learning trong việc phát hiện bất thường trên mạng (Luận văn thạc sĩ)Ứng dụng Deep learning trong việc phát hiện bất thường trên mạng (Luận văn thạc sĩ)Ứng dụng Deep learning trong việc phát hiện bất thường trên mạng (Luận văn thạc sĩ)Ứng dụng Deep learning trong việc phát hiện bất thường trên mạng (Luận văn thạc sĩ)Ứng dụng Deep learning trong việc phát hiện bất thường trên mạng (Luận văn thạc sĩ)Ứng dụng Deep learning trong việc phát hiện bất thường trên mạng (Luận văn thạc sĩ)Ứng dụng Deep learning trong việc phát hiện bất thường trên mạng (Luận văn thạc sĩ)Ứng dụng Deep learning trong việc phát hiện bất thường trên mạng (Luận văn thạc sĩ)Ứng dụng Deep learning trong việc phát hiện bất thường trên mạng (Luận văn thạc sĩ)
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - TRẦN NGỌC MINH ỨNG DỤNG DEEP LEARNING TRONG VIỆC PHÁT HIỆN BẤT THƯỜNG TRÊN MẠNG Chuyên ngành: Hệ thống thông tin Mã số: 60.48.01.04 TÓM TẮT LUẬN VĂN THẠC SĨ THÀNH PHỐ HỒ CHÍ MINH – NĂM 2018 Luận văn hồn thành tại: HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG Người hướng dẫn khoa học: PGS.TS Phạm Trần Vũ Phản biện 1: …………………………………………………… Phản biện 2: …………………………………………………… Luận văn bảo vệ trước Hội đồng chấm luận văn thạc sĩ Học viện Cơng nghệ Bưu Viễn thơng Vào lúc: …… …… ngày …… tháng …… năm …… Có thể tìm hiểu luận văn tại: - Thư viện Học viện Cơng nghệ Bưu Viễn thơng MỞ ĐẦU Trong thời đại bùng nổ thông tin, mạng internet trở thành phần sống đại ngày đóng vai trò quan trọng người, thấy internet chi phối lĩnh vực sống từ kinh tế, giải trí đến giáo dục đào tạo,… Đặc biệt ngày nay, internet sử dụng thành phần quan trọng mơ hình kinh doanh, doanh nghiệp khách hàng sử dụng dịch vụ, ứng dụng, website, thư điện tử hoạt động Vì vậy, vấn đề an tồn thơng tin sử dụng môi trường internet cần phải đặc biệt quan tâm Trong thực tế, có nhiều rủi ro xuất phát từ công mạng môi trường internet Theo thống kê số liệu công mạng từ Trung tâm ứng cứu khẩn cấp máy tính Việt Nam (VNCERT) ghi nhận có gần 10000 công mạng Việt Nam năm 2017 Các vụ cơng mạng tăng số lượng, quy mơ, hình thức ngày tinh vi Vì hệ thống khác thiết kế xây dựng để ngăn cản công này, đặc biệt hệ thống phát xâm nhập (Intrusion Detection System - IDS) giúp mạng chống lại cơng từ bên ngồi Tuy nhiên, hệ thống phát xâm nhập số hạn chế việc gói tin xấu phát sinh từ lỗi phần mềm, liệu DNS hỏng, gói tin tạo tỷ lệ cảnh báo sai cao đáng kể Ngồi ra, chi phí triển khai vận hành hệ thống tương đối lớn, khả phân tích lưu lượng bị mã hóa tương đối thấp Việc ứng dụng mạng nơ-ron, học sâu hệ thống phát xâm nhập hướng tiếp cận khắc phục hạn chế ngày thể tính ưu việt kỹ thuật học máy (machine learning) Deep Learning (học sâu) nhánh ngành Machine Learning dựa tập hợp thuật toán Nhiều nghiên cứu cho thấy deep learning hoàn toàn vượt trội phương pháp truyền thống hầu hết lĩnh vực Phương pháp học sâu tăng khả phát xâm nhập, đạt tỷ lệ phát cao tỷ lệ cảnh báo sai thấp Deep Learning kỹ thuật dựa tập hợp thuật toán cố gắng để mơ hình liệu trừu tượng hóa mức cao cách sử dụng nhiều lớp xử lý với cấu trúc phức tạp, cách khác bao gồm nhiều biến đổi phi tuyến tính học với lớp hình thành hệ thống tính phân cấp từ thấp đến cao cấp Có ba lý quan trọng bật kỹ thuật Deep Learning gần Đầu tiên, khả xử lý (ví dụ đơn vị GPU) tăng mạnh Thứ hai, giá phần cứng máy tính vừa phải, cuối cùng, đột phá gần nghiên cứu học máy Kỹ thuật Deep Learning nhà nghiên cứu dự đốn mang tính đột phá trí tuệ nhân tạo Một ứng dụng tiếng phần mềm AlphaGo (dự án Google Deepmind) đánh bại kỳ thủ cờ vây tiếng Lee Seldol thiết kế mơ hoạt động não người, phân tích học từ sai lầm để đưa phương án tốt sau lần chơi Điều mà dự án hướng tới áp dụng trí tuệ nhân tạo vào sống ngày Với nội dung nghiên cứu kỹ thuật học máy để tăng cường khả phân tích nhận diện bất thường môi trường mạng dựa sở thư viện mã nguồn mở Chính tác giả chọn đề tài “Ứng dụng Deep Learning việc phát bất thường mạng” Luận văn sâu nghiên cứu mơ hình này, thực nghiệm đánh giá tập liệu KDD99 có liên quan tới phát xâm nhập bất thường nhằm cho kết cụ thể Từ kết luận văn đề xuất hướng ứng dụng phù hợp CHƯƠNG – TỔNG QUAN 1.1 Hệ thống phát xâm nhập Hệ thống phát xâm nhập (Intrusion Detection System – IDS) [1] hệ thống giám sát lưu lượng mạng nhằm phát hiện tượng bất thường, hoạt động xâm nhập trái phép vào hệ thống IDS phân biệt công từ bên (nội bộ) hay công từ bên (từ tin tặc) Hệ thống phát xâm nhập (IDS) có hai loại [2]: - NIDS: hệ thống phát xâm nhập mạng - HIDS: hệ thống phát xâm nhập host Các IDS chia thành hai loại: phát dựa dấu hiệu (misuse-based) phát dựa bất thường (anomaly-based) IDS dựa dấu hiệu: để phát công cách tìm kiếm mẫu cụ thể, chẳng hạn chuỗi byte lưu lượng mạng hay chuỗi lệnh độc hại biết phần mềm malware sử dụng [3] IDS dựa bất thường [4]: phát xâm nhập liên quan đến sai lệnh so với hệ thống thông thường hành vi người dùng Hệ thống phát xâm phạm phải có khả phân biệt hoạt động thông thường người dùng hoạt động bất thường để tìm công nguy hiểm kịp thời Phát hành vi xâm nhập mạng máy tính, lạm dụng cách giám sát hoạt động hệ thống phân loại hành vi bình thường hay bất thường 1.2 Phát bất thường 1.2.1 Phát bất thường Phát bất thường (cũng phát ngoại lai) việc xác định mục, kiện quan sát khác biệt đáng kể so với liệu lại Bất thường gọi ngoại lai, sai lệch bất thường khai phá liệu lý thuyết thống kê 1.2.2 Phân loại kỹ thuật phát bất thường Hầu hết kỹ thuật phát bất thường sử dụng nhãn để xác định xem cá thể bình thường hay bất thường để đưa định cuối Các kỹ thuật phát bất thường chia thành phương pháp dựa tính khả dụng cho nhãn: 1.2.2.1 Phát bất thường giám sát 1.2.2.2 Phát bất thường bán giám sát 1.2.2.3 Phát bất thường không giám sát 1.3 Tổng quan kỹ thuật phát bất thường Phát bất thường vấn đề quan trọng hệ thống phát xâm nhập Phát bất thường thu hút trở thành lĩnh vực nghiên cứu nhà khoa học giới quan tâm Một số nhà khoa học áp dụng kỹ thuật Machine Learning xây dựng mơ hình dựa tập liệu huấn luyện vào phát xâm nhập Dưới đây, số cơng trình nghiên cứu học máy: Ming.Y với nghiên cứu “Real Time Anomaly Detection Systems for Denial of Service Attacks by Weighted k-Nearest Neighbor Classifiers” vào năm 2011 Thuật toán k-Nearest Neighbor dựa vào khoảng cách gần đối tượng cần xếp lớp với đối tượng tập liệu Tác giả đề xuất thuật toán di truyền kết hợp với k-Nearest Neighbor để chọn thuộc tính trọng số Kết thử nghiệm với nhiều công Dos áp dụng để đánh giá hệ thống phát bất thường [8] Johansen Lee cơng trình nghiên cứu “CS424 network security: Bayesian Network Intrusion Detection (BINDS)” đề xuất xây dựng hệ thống phát xâm nhập dựa mô hình Mạng Bayesian để phân biệt cơng từ mạng hoạt động bình thường cách so sánh số mẫu lưu lượng mạng [9] Nghiên cứu “Artificial Neural Networks Architecture For Intrusion Detection Systems and Classification of Attacks” Mohammed Sammany, Marwa Sharawi, Mohammed El-Beltagy, Imane Saroit đưa mơ hình mạng neural sử dụng Multi-layered Perceptron (MLP) để phát xâm nhập Kết nghiên cứu cho thấy mơ hình MLP áp dụng vào hệ thống phát xâm nhập để phát kết nối mạng bất thường phân loại cơng với độ xác cao [10] Cơng trình nghiên cứu tác giả Paulo M Mafra, Vinicius Moll, Joni da Silva Fraga “Octopus-IIDS: An Anomaly Based Intelligent Intrusion Detection System” trình bày mơ hình mạng neural nhân tạo Máy học Vector Hỗ trợ (Support Vector Machine -SVM) sử dụng phương pháp phân lớp để phát bất thường áp dụng hệ thống phát xâm nhập có tên gọi Octopus-IIDS Kết thử nghiệm tác giả cho thấy tỷ lệ phát cao, giảm tỷ lệ false positiveNgoài ra, kỹ thuật dùng để phân tích lưu lượng mạng phân loại hình thức cơng [11] “ On the Capability of an SOM based Intrusion Detection System” H.G Kayacik, A.N Zincir-Heywood M.I Heywood sử dụng kỹ thuật SOM (Self-Organizing Feature Map) lớp để biểu diễn liệu nhiều chiều, vào khơng gian chiều đặc trưng liệu đầu vào giữ lại đồ Tác giả đề xuất phương pháp SOM vào hệ thống phát xâm nhập IDS [12] Rui Zhang, Shaoyan Zhang, Yang Lan, Jianmin Jiang nghiên cứu “Network Anomaly Detection Using One Class Support Vector Machine” đề xuất phương pháp phát bất thường mạng dựa One-Class Support Vector Machine (OCSVM) Kỹ thuật có hai bước: Đầu tiên, liệu xử lý trước để tạo vector theo thuật toán OCSVM Sau tiền xử lý, vector tập liệu huấn luyện sử dụng để tạo dò OCSVM có khả học hành vi liệu Cuối cùng, tác giả sử dụng dò 15 (A) Giai đoạn mơ hình huấn luyện 16 (B) Giai đoạn phát bất thường Hình 2.7: Quy trình huấn luyện phát bất thường Trong luận văn này, tác giả sử dụng mơ hình Autoencoder với lớp đầu ra, lớp ẩn lớp đầu vào hình 2.7 Hình 2.9: Mơ hình Autoencoder đề xuất 2.4 Kết luận chương 17 CHƯƠNG - THỰC NGHIỆM VÀ ĐÁNH GIÁ 3.1 Môi trường thực nghiệm Cài đặt Python, Tensorflow Keras cho Deep Learning - Cài đặt Jupyter notebook: conda install jupyter - Cài đặt Tensorflow lệnh sau: pip install tensorflow - Cài đặt Keras: pip install keras Cấu hình máy thực nghiệm: Tồn thực nghiệm thực Dell Vostro3669 Cấu hình: - Bộ xử lý Intel® Core (TM) i5-7400 CPU @ 3.00GHz (4 CPUs) - Bộ nhớ RAM GB - Đồ hoạ Intel® HD Graphics 630 4178 MB 3.2 Bộ liệu KDD99 Bộ liệu thực nghiệm tập liệu KDD99 [17] 3.3 Tiến hành thực nghiệm Thực nghiệm tiến hành dựa thư viện mã nguồn mở TensorFlow công cụ hỗ trợ code Deep Learning 18 Các bước tiến hành thực nghiệm: - Thực nghiệm tập liệu KDD99 - Sử dụng phương pháp Autoencoder để thử nghiệm với liệu KDD99 - Xây dựng mơ hình Autoencoder để huấn luyện kiểm thử - Đánh giá kết đạt 3.4 Kết đánh giá Xây dựng mơ hình mạng Autoencoder cài đặt chạy: 19 Hình 3.1: Kết xử lý cho 100 epoch Hình 3.2: Biểu đồ lỗi cho epoch 20 Hình 3.3: Biểu đồ Độ xác cho 100 epoch Biểu đồ độ lỗi tập huân luyện tập kiểm xử lý 100 epoch cho thấy tỷ lệ lỗi thấp hình 3.2 ❖ Phương pháp đánh giá: Các tiêu chí sử dụng để đánh giá hiệu hệ thống phát xâm nhập bất thường: - Accuracy (Độ xác) tỷ lệ số điểm dự đoán tổng số điểm tập liệu kiểm thử: A = 𝑇𝑃+𝑇𝑁 𝑇𝑃+𝐹𝑁+𝐹𝑃+𝑇𝑁 - Recall tỷ lệ số điểm true positive số điểm thực positive (TP + FN): Recall = TPR = 𝑇𝑃 𝑇𝑃 + 𝐹𝑁 21 TPR: True Positive Rate - Precision (P) thước đo hệ thống có khả phát bình thường hay bất thường: P = - 𝑇𝑃 𝑇𝑃 + 𝐹𝑃 F1- score harmonic mean Precision Recall, sử dụng để đánh giá phân lớp có cơng thức sau: 𝐹1 = 1 + 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑅𝑒𝑐𝑎𝑙𝑙 - Tính Accuracy mơ hình Q trình, kiểm thử mơ hình chạy cho lần, cho kết Độ xác (Accuracy) sau: Bảng 3.3: Kết độ xác - Accuracy Số lần Accuracy 0.99946187 0.99960151 0.99957537 0.99928875 0.99951658 Trung bình 0.99948882 Kết Độ xác trung bình cho lần chạy kiểm thử: Accuracy ≈ 0.9995 Tỷ lệ % Độ xác tỷ lệ số lượng 22 bất thường dự đoán tổng số lượng traffic tập liệu kiểm thử: Accuracy ≈ 99.95% Hình 3.4: Kết phương pháp đánh giá mơ hình Q trình chạy thực nghiệm ước tính với thời gian 30 phút cho kết tỷ lệ Accuracy ≈ 99.95% thể hiệu thuật toán; tỷ lệ phát Recall (hay 23 TPR) cho 22 kiểu công đạt kết cao Tỷ lệ F1-score cao cho thấy phân lớp mơ hình tốt Ngồi ra, tỷ lệ Precsion phát liệu mạng bình thường hay bất thường hệ thống đạt kết cao hình 3.4 • Đánh giá độ xác dự đốn Đánh giá tính xác dự đốn mơ hình machine learning sử dụng sai số bình phương trung bình (RMSE - Root Mean Square Error) Có cơng thức sau: RMSE = √ ∑𝑛𝑖=1(𝑝𝑖 − 𝑟𝑖 )2 𝑛 Kết tỷ lệ RMSE = 0.0050683119, tỷ lệ lỗi thấp cho thấy hệ thống đạt hiệu tốt Bảng 3.4: Kết số thuật toán khác [18] Thuật toán Tác giả Accuracy Decision Tree Lin et al, 2012 0.9885 Naive Bayes Guo et al, 2014 0.9148 RNN Sheikhan et al, 2012 0.9410 Rule Based Gowrison et al, 2013 0.999 SVM Lin et al, 2012 0.9903 24 Từ bảng kết trên, so sánh với thuật tốn khác nhận thấy hiệu suất mơ hình Autoencoder có độ xác cao phát Do đó, ứng dụng Autoencoder vào hệ thống phát xâm nhập bất thường cách tiếp cận hợp lý Phát bất thường dựa Deep learning xây dựng mơ hình mạng nơ-ron với lớp ẩn tự động tìm hiểu đặc tính liệu cải thiện độ xác hệ thống phát bất thường 3.5 Kết luận chương Trong chương này, cài đặt thử nghiệm Deep learning sử dụng mơ hình Autoencoder tập liệu KDD99 Kết cho thấy độ xác hiểu kỹ thuật cao Do đó, ứng dụng kỹ thuật Deeep Learning vào phát bất thường mạng luận văn hướng nghiên cứu hoàn toàn phù hợp 25 KẾT LUẬN Luận văn nghiên cứu mơ hình mạng neural, ứng dụng Autoencoder vào hệ thống phát xâm nhập bất thường cho kết đánh giá hiệu suất tập liệu thử nghiệm KDD99 Mơ hình Autoencoder xây dựng nghiên cứu cải tiến hiệu chỉnh cho kết khả quan, áp dụng vào hệ thống thực tế Phương pháp Deep learning xây dựng mơ hình học tính dựa kỹ thuật Autoencoder học tốt tính cải thiện độ xác phát bất thường Với phát triễn phức tạp ngày tăng sở hạ tầng mạng tiến hóa cơng, xác định ngăn chặn công thực tế gặp nhiều khó khăn Lưu lượng mạng phức tạp khơng thể đốn trước Mơ hình thay đổi theo thời gian, dị thường liên tục phát triển Kỹ thuật công mẫu thay đổi, thơng tin liệu, lưu lượng mạng truy cập bình thường khơng giá trị Do đó, xây dựng mơ hình mạng học sâu để phát bất thường thực tế gặp nhiều thách thức khó khăn 26 Hướng phát triển luận văn: Tiếp tục thử nghiệm cải tiến để giảm thời gian huấn luyện có kết tốt hơn, thu thập tập liệu khác để đánh giá Xem xét tới việc cập nhật tập liệu thời gian huấn luyện lại mơ hình, mức độ thay đổi tham số Nghiên cứu đánh giá để triển khai thực tế, vừa đảm bảo độ xác vừa đảm bảo thời gian thực Ngồi ra, sau mơ hình Autoencoder ứng dụng thành cơng, tác giả xem xét để áp dụng mơ hình mạng neural khác CNN hay kết hợp với mơ hình khác Từ có cách tiếp cận deep learning nhiều lĩnh vực nói chung hệ thống phát xâm nhập bất thường nói riêng 27 DANH MỤC CÁC TÀI LIỆU THAM KHẢO [1] Pathan (ed), Al-Sakib (2014) The state of the art in intrusion prevention and detection [2] Mohit Tiwari, Raj Kumar, Akash Bharti, Jai Kishan, “INTRUSION DETECTION SYSTEM”, International Journal of Technical Research and Applications e-ISSN: 2320-8163, Volume 5, Issue (2017), PP 38-44 [3] Brandon Lokesak (December 4, 2008) “A Comparison Between Signature Based and Anomaly Based Intrusion Detection Systems” (PPT) www.iup.edu [4] Anazida Zainal, Mohd Aizaini Maarof and Siti Mariyam, Shamsuddin, “Research issues in adaptive intrusion detection”, Faculty of Computer Science and Information System 81310 Skudai,Universiti Teknologi Malaysia, Proceedings of the Postgraduate Annual Research Seminar 2006 [5] Chandola, V Banerjee, A Kumar (2009), “Anomaly detection: A survey”, ACM Computing Surveys 41, pp 1–58 [6] D E Denning, “An Intrusion-Detection Model”, 1986 IEEE Symposium on Security and Privacy (SP), Oakland, CA, 1986, pp 118 28 [7] Wang, Ke (2011), “Anomalous Payload-Based Network Intrusion Detection” (PDF), Recent Advances in Intrusion Detection, pp 04-22 [8] Ming.Y, “Real Time Anomaly Detection Systems for Denial of Service Attacks by Weighted k-Nearest Neighbor Classifiers”, Journal Expert Systems with Applications: An International Journal, Volume 38 Issue 4, April, 2011, Pages 3492-3498 [9] Johansen, Lee “CS424 network security: Bayesian Network Intrusion Detection (BINDS)”, 2003 [10] Mohammed Sammany, Marwa Sharawi, Mohammed ElBeltagy, Imane Architecture Saroit, For “Artificial Intrusion Neural Detection Networks Systems and Classification of Attacks”, 2007, Cairo Univeristy, Egypt [11] Paulo M Mafra, Vinicius Moll, Joni da Silva Fraga, “Octopus-IIDS: An Anomaly Based Intelligent Intrusion Detection System”, Proceedings of Computers and Communications (ISCC) [12] H.G Kayacik, A.N Zincir-Heywood M.I Heywood, “ On the Capability of an SOM based Intrusion Detection System” , Proc IEEE, IJCNN 29 [13] Rui Zhang, Shaoyan Zhang, Yang Lan, Jianmin Jiang, “Network Anomaly Detection Using One Class Support Vector Machine”, Proceedings of the International Multi Conference of Engineers and Computer Scientists [14] Hoàng Ngọc Thanh, “SỬ DỤNG KỸ THUẬT MÁY HỌC TRONG CÁC HỆ THỐNG PHÁT HIỆN XÂM NHẬP MẠNG”, Khoa công nghệ thông tin, Trường đại học Bà Rịa Vũng Tàu [15] Yann LeCun, Yoshua Bengio3 & Geoffrey Hinton, “Deep learning”, doi:10.1038/nature14539 [16] G E Hinton, R R Salakhutdinov, “Reducing the dimensionality of data with neural network Science”, Science 28 Jul 2006: Vol 313, Issue 5786, pp 504-507, DOI: 10.1126/science.1127647 [17] KDD 1999 Dataset, http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html [18] Atilla Ozg, Hamit Erdem, “The impact of using large training data set on classification accuracy”, Baskent University, Ankara, CC BY 4.0 Open Access 2017, https://doi.org/10.7287/peerj.preprints.2838v1 ... thống phát xâm nhập IDS, khái niệm phát bất thường đưa số kỹ thuật phát bất thường Trình bày lý chọn đề tài nghiên cứu phát bất thường sử dụng Deep Learning 10 CHƯƠNG - ỨNG DỤNG DEEP LEARNING TRONG. .. máy tính, lạm dụng cách giám sát hoạt động hệ thống phân loại hành vi bình thường hay bất thường 1.2 Phát bất thường 1.2.1 Phát bất thường Phát bất thường (cũng phát ngoại lai) việc xác định... TRONG VIỆC PHÁT HIỆN BẤT THƯỜNG TRÊN MẠNG Deep Learning lĩnh vực Machine Learning sử dụng mạng nơ-ron nhiều lớp Mạng nơ-ron hay gọi Mạng nơ-ron nhân tạo (Artificial Neural Network – ANN) 2.1 Mạng