Tóm tắt Luận văn Thạc sĩ Kỹ thuật: Phát hiện xâm nhập mạng sử dụng học máy

18 11 0
Tóm tắt Luận văn Thạc sĩ Kỹ thuật: Phát hiện xâm nhập mạng sử dụng học máy

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mục tiêu nghiên cứu của đề tài: Nghiên cứu về mạng học sâu AE (Autoencoder) và áp dụng vào khâu tiền xử lý dữ liệu trong Hệ thống phát hiện xâm nhập mạng (IDS) để xác định tấn công xâm nhập, góp phần tăng mức độ hiệu quả, chính xác trong hoạt động của hệ thống IDS. Mời các bạn tham khảo!

HỌC VIỆN CƠNG NGHỆ BƢU CHÍNH VIỄN THƠNG - Dƣơng Đỗ Nhuận TÓM TẮT LUẬN VĂN THẠC SỸ KỸ THUẬT (Theo định hƣớng ứng dụng) HÀ NỘI – 2020 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: TS Hồng Xn Dậu Phản biện 1: PGS TS Đỗ Trung Tuấn Phản biện 2: TS Phùng Văn Ổn 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: 9giờ 15 ngày 09 tháng năm 2021 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 1 LỜI CẢM ƠN Em xin gửi lời cảm ơn tri ân tới thầy cô giáo, cán Học viện Cơng nghệ Bưu Viễn thơng giúp đỡ, tạo điều kiện tốt cho em trình học tập nghiên cứu chương trình Thạc sĩ Em xin gửi lời cảm ơn sâu sắc tới TS Hoàng Xuân Dậu tận tình hướng dẫn, giúp đỡ động viên em để hoàn thành tốt Luận văn “PHÁT HIỆN XÂM NHẬP MẠNG SỬ DỤNG HỌC MÁY “ Do vốn kiến thức lý luận kinh nghiệm thực tiễn cịn nên luận văn khơng tránh khỏi thiếu sót định Em xin trân trọng tiếp thu ý kiến thầy, cô để luận văn hồn thiện có hướng phát triển sau Trân trọng cảm ơn Tác giả Dƣơng Đỗ Nhuận Danh mục ký hiệu, chữ viết tắt Từ viết tắt/ Ý nghĩa/ Từ đầy đủ Ký hiệu ANN Mạng Nơron nhân tạo - Artificial Neural Network GD Một thuật toán tối ưu lặp (iterative optimization algorithm) sử dụng toán Machine Learning Deep Learning Gradient Descent SAE Phương pháp học đặc trưng đầu cách xếp chồng Autoencoder lên - Stacked Autoencoder DAE Một phương pháp học đặc trưng đầu vào phát triển từ Autoencoder Denoise Autoencoder SDAE Một phương pháp học đặc trưng đầu vào cách xếp chồng Denoise Autoencoder lên - Stacked Denoise Autoencoder IDS Hệ thống phát xâm nhập - Intrusion Detection System SVM Tht tốn học có giám sát liên quan đến để phân loại phân tích hồi quy - Support Vector Machine RF Thuật tốn học có giám sát tạo định mẫu liệu chọn ngẫu nhiên, dự đoán từ chọn giải pháp tốt cách bỏ phiếu - Random Forest KNN Một kĩ thuật học có giám sát dùng để phân loại quan sát cách tìm điểm tương đồng quan sát với liệu sẵn có - Knearest Neighbors SGD Thuật tốn dùng để tối ưu hàm mục tiêu J(θ), với tham số tương ứng θ ∈ Rd, cách cập nhật tham số θ theo hướng ngược lại với với gradient tham số hàm mục tiêu ∇θJ(θ) - Stochastic Gradient Descent AUC Một phương pháp tính tốn hiệu suất mơ hình phân loại theo ngưỡng phân loại khác - Area Under The Curve TP True Positive FN False Negative FP False Positive TN True Negative NIDS Hệ thống phát mức mạng – Network Intrusion Detection System HIDS Hệ thống phát xâm nhập mức máy trạm chủ – Host Intrusion Detection System R2L Hình thức cơng từ xa - Remote to Local DoS Hình thức cơng từ chối dịch vụ - Denial of Service U2R Hình thức công leo thang đặc quyền - User to Root DT Thuật tốn phân cấp có cấu trúc, dùng để phân lớp đối tượng dựa vào dãy luật - Decision Tree NB Thuật toán Naive Baves Danh mục bảng Bảng 3.1 Các thuộc tính tập liệu Phishing Website Data Bảng 3.2 Các kiểu công tập liệu NSL-KDD Bảng 3.2 Các thuộc tính tập liệu NSL-KDD Bảng 3.3 Bảng so sánh AUC sử dụng SAE, SDAE không sử dụng Phishing Data Website Bảng 3.5 Bảng so sánh AUC sử dụng SAE, SDAE không sử dụng NSL-KDD Danh mục hình Hình 2.1 Sơ đồ cấu trúc mạng Autoencoder Hình 2.2 Sơ đồ cấu trúc mạng Stacked Autoencoder Hình 2.3 Sơ đồ cấu trúc mạng Denoise Autoencoder Hình 2.4 Sơ đồ cấu trúc mạng Stacked Denoise Autoencoder Hình 2.5 Mơ hình ứng dụng SAE SDAE vào hệ thống IDS MỤC LỤC LỜI CẢM ƠN Danh mục ký hiệu, chữ viết tắt Danh mục bảng Danh mục hình CHƢƠNG I 1.1 Khái quát công xâm nhập mạng 1.2 Một số dạng cơng xâm nhập điển hình vào hệ thống CNTT 1.2.1 Asymmetric Routing 1.2.2 Buffer Overflow Attacks (Tấn công tràn đệm) 1.2.3 Common Gateway Interface Scripts 1.2.4 Protocol-Specific Attacks (Tấn công theo giao thức mạng) 1.2.5 Traffic Flooding (Tấn công tràn lưu lượng mạng) 1.2.6 Trojans 1.2.7 Worms (Sâu máy tính) 1.3 Các biện pháp phòng chống công, xâm nhập mạng 1.4 Khái quát phát xâm nhập mạng 1.4.2 Phân loại CHƢƠNG II 2.1.Khái quát học máy học sâu 2.1.1 Khái quát học máy 2.1.2 Khái quát học sâu 2.2 Học sâu sử dụng Autoencoder ứng dụng tiền xử lý liệu 2.2.1 Học sâu sử dụng Autoencoder 2.2.2 Phân loại Autoencoder 2.2.3 Ứng dụng Autoencoder tiền xử lý liệu 11 Xây dựng mơ hình phát xâm nhập dựa Autoencoder 11 CHƢƠNG III 13 3.1 Phƣơng pháp cài đặt thử nghiệm 13 3.2 Giới thiệu tập liệu 13 3.2.1 Phishing Website Data 13 3.2.2 NSL-KDD 13 3.3 Trích chọn đặc trƣng sử dụng AE 13 3.4 Huấn luyện phát 13 3.5 Kết nhận xét 13 3.5.1 Kết liệu Phishing Website Data 13 3.5.2 Kết liệu NSL-KDD 14 KẾT LUẬN 16 CHƢƠNG I TỔNG QUAN VỀ PHÁT HIỆN XÂM NHẬP MẠNG 1.1 Khái quát công xâm nhập mạng Tấn công xâm nhập mạng hành vi mạng máy tính khơng có cho phép Phát cơng xâm nhập mạng dựa người phịng thủ có hiểu biết rõ ràng cách công thực 1.2 Một số dạng cơng xâm nhập điển hình vào hệ thống CNTT 1.2.1 Asymmetric Routing Trong phương pháp này, kẻ công cố gắng sử dụng nhiều đường dẫn (route) đến thiết bị mạng nhắm mục tiêu Ý tưởng để công tổng thể tránh bị phát cách để phần đáng kể gói tin vi phạm bỏ qua số phân đoạn mạng định cảm biến xâm nhập mạng chúng 1.2.2 Buffer Overflow Attacks (Tấn công tràn đệm) Cách tiếp cận cố gắng ghi đè phần cụ thể nhớ máy tính kết nối mạng, thay liệu bình thường vị trí nhớ lệnh mà sau thực thi phần công 1.2.3 Common Gateway Interface Scripts Giao diện cổng chung (CGI) thường sử dụng mạng để hỗ trợ tương tác máy chủ máy khách Web Nhưng cung cấp lỗ hổng dễ dàng chẳng hạn "backtracking" - thông qua kẻ cơng truy cập tệp hệ thống mạng cho an toàn 1.2.4 Protocol-Specific Attacks (Tấn công theo giao thức mạng) Khi thực hoạt động mạng, thiết bị tuân theo quy tắc thủ tục cụ thể Các giao thức - chẳng hạn ARP, IP, TCP, UDP, ICMP giao thức ứng dụng khác - vơ tình để lại lỗ hổng cho xâm nhập mạng thông qua mạo danh giao thức ("giả mạo") thông báo giao thức không định dạng Ví dụ: Giao thức phân giải địa (ARP) không thực xác thực tin nhắn, cho phép kẻ công thực công "man-in-the-middle" 1.2.5 Traffic Flooding (Tấn công tràn lưu lượng mạng) Một phương pháp xâm nhập mạng khéo léo đơn giản nhắm vào hệ thống phát xâm nhập mạng cách tạo tải trọng lớn để hệ thống sàng lọc tất liệu vào mạng Trong môi trường mạng hỗn loạn tắc nghẽn, kẻ cơng thực công không bị phát chí gây tình trạng "khơng mở được" (fail-open) khơng bị phát 1.2.6 Trojans Các chương trình tự thể lành tính (khơng có hành vi ăn cắp, phá hoại liệu) không tự tái tạo giống vi-rút sâu Thay vào đó, chúng mở cửa hậu cho hành vi cơng khác, cho phép kẻ cơng bên ngồi kiểm sốt hệ thống 1.2.7 Worms (Sâu máy tính) Sâu loại phần mềm độc hại có khả tự lây nhiễm từ máy sang máy khác mà khơng cần chương trình chủ, vật chủ, trợ giúp người dùng Khi sâu lây nhiễm vào máy, sử dụng máy làm “bàn đạp” để tiếp tục rà quét, công máy khác 1.3 Các biện pháp phịng chống cơng, xâm nhập mạng - Chiến lược an tồn hệ thống - Tính logic, khoa học, an toàn mức cao yếu tố cần thiết hệ thống thông tin - Quyền tối thiểu (Least Privilege) - Phòng thủ theo chiều sâu (Defense in Depth): - Điểm thắt (Choke Point): Chiến lược buộc kẻ công sử dụng kênh hẹp, mà quản trị viên giám sát kiểm sốt, tăng cường hình thức giám sát, bảo đảm ATTT nâng cao - Liên kết yếu (Weakest Link): Mỗi hệ thống thông tin ln có điểm yếu Ta cần phải liên tục gia cố, tăng cường bảo mật cho yếu điểm hệ thống - Lập trường thất bại an toàn (Fail-Safe Stance): Trong chế này, hệ thống bị cố ATTT bị lỗi, chặn truy cập từ người dùng hợp pháp người dùng bất hợp pháp đến vấn đề xử lý xong - Phòng thủ đa dạng (Diversity of Defense): Ý tưởng đằng sau đa dạng hệ thống phòng thủ việc sử dụng cân hệ thống bảo mật từ nhà cung cấp khác làm giảm nguy xảy lỗ hổng phổ biến lỗi cấu hình ảnh hưởng đến hệ thống - Đơn giản hóa (Simplicity): Đơn giản hóa yếu tố cần thiết hệ thống thông tin Có 02 lý cho cần thiết sau Thứ nhất, hệ thống đơn giản dễ hiểu Thứ hai, chương trình, hệ thống phức tạp nguy lỗi, nguy tồn lỗ hổng bảo mật cao 1.4 Khái quát phát xâm nhập mạng 1.4.1 Giới thiệu Phát xâm nhập mạng trình theo dõi kiện xảy hệ thống thông tin phân tích chúng để tìm dấu hiệu xâm nhập trái phép hành vi công xảy ra, hành vi mối đe dọa xảy ra, vi phạm sách bảo mật, sách sử dụng chấp nhận vi phạm tiêu chuẩn bảo mật gây ảnh hưởng đến hệ thống 1.4.2 Phân loại Có 02 phương pháp phân loại hệ thống IDS phân loại theo nguồn liệu phân loại theo phương pháp phân tích liệu Đối với phân loại theo nguồn liệu, có 02 loại hệ thống IDS 1.4.2.1 Hệ thống phát xâm nhập mức mạng (Network – based IDS) NIDS hệ thống độc lập, xác định truy cập trái phép cách kiểm tra luồng thông tin mạng giám sát nhiều máy NIDS truy cập vào luồng thông tin mạng cách kết nối vào Hub, Switch cấu hình Port mirroring sử dụng Network tap để bắt gói tin, phân tích nội dung gói tin từ sinh cảnh báo phát công Nhược điểm hệ thống NIDS giới hạn băng thơng xảy tượng tắc nghẽn cổ chai lưu lượng mạng sử dụng mức cao 1.4.2.1 Hệ thống phát xâm nhập mức máy (Host – based IDS) HIDS thường phần mềm chạy thiết bị đầu cuối làm việc để giám sát tất hoạt động máy Hệ thống phân tích thơng tin thu nội hệ thống Nhược điểm HIDS việc thu thập liệu xảy máy ghi vào log làm giảm hiệu mạng, ảnh hưởng đến tài nguyên sử dụng máy Đối với phân loại theo phương pháp phân tích liệu IDS chia làm 02 dạng phát dấu hiệu dựa chữ ký (Signature-based IDS) dựa vào bất thường (Anomalybased IDS) 1.4.2.3 Phát xâm nhập dựa chữ ký (Signature-based IDS) Hệ thống IDS loại dựa vào dấu hiệu xâm nhập Những dấu hiệu thơng tin kết nối nguy hiểm biết trước Hệ thống mô hình hóa dấu hiệu xâm nhập biết việc so sánh thông tin gói tin đến với dấu hiệu để phát hoạt động đáng ngờ đưa cảnh báo cho hệ thống Ưu điểm kỹ thuật hiệu việc phát công biết với tỷ lệ cảnh báo sai thấp Tuy nhiên, nhược điểm kỹ thuật phát công biết, khơng có khả phát cơng chưa biết chữ ký không tồn CSDL 1.4.2.4 Phát xâm nhập dựa vào bất thường (Anomaly-based IDS) Ý tưởng cách tiếp cận xuất phát từ giả thiết “Dấu hiệu công khác biệt với dấu hiệu trạng thái mạng coi bình thường” Khi đó, việc phát tiến hành qua hai giai đoạn: giai đoạn huấn luyện (pha huấn luyện) gia đoạn phát (pha phát hiện) Tại pha huấn luyện xây dựng hồ sơ hoạt động bình thường (thơng số chuẩn) Sau pha phát tiến hành so khớp quan sát (gói tin) với hồ sơ từ xác định dấu hiệu bất thường Ưu điểm kỹ thuật hiệu việc phát mối nguy hiểm trước Những năm gần đây, hướng tiếp cận thu hút nhiều quan tâm nhà nghiên cứu Nhược điểm kỹ thuật phát dựa bất thường tỷ lệ cảnh báo sai thường cao địi hỏi lượng lớn tài ngun tính tốn cho xây dựng hồ sơ, mơ hình phát 8 CHƢƠNG II PHÁT HIỆN XÂM NHẬP DỰA TRÊN HỌC SÂU 2.1.Khái quát học máy học sâu 2.1.1 Khái quát học máy Học máy (machine learning) lĩnh vực trí tuệ nhân tạo liên quan đến việc nghiên cứu xây dựng kĩ thuật cho phép hệ thống "học" tự động từ liệu để giải vấn đề cụ thể 2.1.2 Khái quát học sâu Học sâu (Deep Learning) nhánh lĩnh vực Học máy (Machine Learning) dựa tập hợp thuật toán để cố gắng mơ hình hóa liệu trừu tượng hóa mức cao cách 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 Cốt lõi Deep Learning bao gồm mơ hình mạng neural nhiều lớp q trình huấn luyện mạng để xác định tham số cho mơ hình Trong Deep Learning, có 03 dạng học học có giám sát, học nửa giám sát học khơng giám sát 2.2 Học sâu sử dụng Autoencoder ứng dụng tiền xử lý liệu 2.2.1 Học sâu sử dụng Autoencoder Autoencoder loại ANN dùng để học khơng có giám sát thơng qua mã code với ý tưởng mơ hình mạng neural có số nút mã trung gian (hidden layer) nhỏ số nút đầu vào mơ hình học đặc tính ẩn (features) liệu Chính mà Autoencoder học cách biểu diễn cho tập liệu giúp dự đoán đầu từ đầu vào ban đầu Trong thực tế Autoencoder ứng dụng thành công để giảm chiều liệu, tất nhiên khơng làm đặc tính quan trọng liệu Cấu trúc Autoencoder chia thành mã hóa giải mã, bao gồm input layer, hidden layer, output layer Autoencoder có nhiều hidden layer có chức mã hóa để tạo liệu có chứa thuộc tính mơ tả đầy đủ liệu đầu vào Sau đó, giải mã tạo tái thiết mã hóa để tạo đầu giống với đầu vào Một autoencoder mã hóa liệu dầu vào cách có 01 hidden layer có số nút nhỏ input layer buộc phải tìm mối tương quan thành phần liệu để tìm thuộc tính Điều tạo điều kiện cho việc phân loại, trực quan hóa, giao tiếp lưu trữ liệu Mục đích autoencoder thử tìm hiểu hàm hiển thị phương trình: h(W , b( x))  x (1) Trong W trọng số, b bias Hình 2.1 Sơ đồ cấu trúc mạng Autoencoder Trường hợp đơn giản nhất, có 01 tầng ẩn, tầng encoder autoencoder lấy input ánh xạ tới : (2) z gọi code, biến tiềm ẩn biểu diễn tiềm ẩn Cịn δ hàm kích hoạt (activation function) sigmoid function (hàm tốn học có biểu đồ hình chữ S nằm ngang) W ma trận trọng số b (bias) vector sai lệch Sau đó, giai đoạn giải mã autoencoder lấy z để tái thiết x’ giống x: (3) Ở đây, δ’, W’ b’ giải mã khác với δ, W, b mã hóa tùy thuộc vào việc thiết kế autoencoder Mạng Autoencoder tính toán số liệu đầu vào dựa trọng số lưu trình huấn luyện để đưa kết đầu tương ứng Denoise Autoencoder (DAE) phát triển từ Autoencoder mạnh mẽ Đầu vào DAE liệu bị làm nhiễu học đặc trưng liệu từ liệu nhiễu Nhưng sau trình giải mã, đầu liệu ban đầu trước bị làm nhiễu Trước đào tạo mạng Autoencoder, ta cần thiết lập tham số sau:  Code size: Số lượng nút hidden layer (tầng ẩn) Kích thước hidden layer nhỏ liệu nén nhiều  Số lớp: Ta thấy nerural network có nhiều hidden layer biểu diễn function phức tạp Tuy nhiên, nhược điểm phức tạp để huấn luyện  Số lượng nút lớp: Số lượng nút lớp giảm theo lớp encoder tăng trở lại decoder  Loss function: Mục đích trình huấn luyện mạng AE DAE để tìm weight (trọng số) đúng, thuật tốn cần tìm weight để tạo đầu giống với đầu vào Phương trình để tính độ sai lệch gọi loss function  Learning rate (tốc độ học): Tốc độ hội tụ GD phụ thuộc vào learning rate Với learning rate nhỏ tốc độ hội tụ chậm Với learning rate lớn, thuật tốn tiến nhanh tới gần đích sau vài vịng lặp Tuy nhiên, thuật tốn khơng hội tụ bước nhảy lớn, khiến quẩn quanh đích  Chỉ số AUC (Area Under the ROC Curve): AUC cung cấp phương pháp đánh giá kết hợp hiệu suất tất ngưỡng phân loại khả thi Khoảng giá trị AUC từ đến 01 mô hình mà dự đốn 100% sai có giá trị AUC 0.0; mơ hình mà dự đốn 100% có giá trị AUC 1.0 2.2.2 Phân loại Autoencoder - Autoencoder chưa hồn thành (Undercomplete Autoencoder): Autoencoder có kích thước mã kích thước input gọi undercomplete Autoencoder Một tính chất undercomplete autoencoder nắm bắt đặc tính đặc trưng liệu huấn luyện - Regularized Autoencoder (Autoencoder quy tắc): Ta huấn luyện kiến trúc autoencoder thành cơng kích thước mã sức chứa q trình encoder q trình decoder mơ hình hóa dựa độ phức tạp phân phối liệu Regularized autoencoder cung cấp khả Regularized autoencoder phi tuyến overcomplete học điều hữu ích phân phối liệu - Stacked Autoencoder (SAE): Stacked Autoencoder giống với Autoencoder bình thường có đủ 03 thành phần chủ yếu mạng là: input layer, hidden layer, output layer, có 02 q trình encoder decoder 10 Hình 2.2 Sơ đồ cấu trúc mạng Stacked Autoencoder Stacked Autoencoder (SAE) xếp chồng lên AE có nhiều hidden layer Regularized Autoencoder Undercomplete Autoencoder Ta xem xét Stacked Autoencoder với n lớp Sử dụng ký hiệu W1(k),W 2(k), b1(k), b1(k) biểu diễn tham số W(1), W(2), b(1), b(2) cho hidden layer thứ k Một cách tốt để có tham số cho SAE đào tạo theo layer-wise training (đào tạo khôn ngoan) Trước tiên, đào tạo lớp có tham số W1(1), W2(1), b1(1), b2(1) Sử dụng lớp để chuyển đổi data thành vectơ Vectơ đầu lớp làm đầu vào cho lớp thứ hai Huấn luyện lớp thứ hai vectơ lớp đầu thu tham số W1(2) , W2(2), b1(2), b2(2) Cứ vậy, sử dụng đầu lớp làm đầu vào cho lớp - Denoise Autoencoder (DAE) phát triển từ Autoencoder mạnh mẽ Đầu vào DAE liệu bị làm nhiễu học đặc trưng liệu từ liệu nhiễu Nhưng sau trình giải mã, đầu liệu ban đầu trước bị làm nhiễu Từ đó, ta thấy khả khái quát hóa DAE tốt so với Autoencoder Hơn nữa, DAE xếp chồng lên để có feature tốt Đào tạo mạng SDAE theo layer-wise DAE với hidden layer đào tạo độc lập Sau đào tạo mạng SDAE, lớp giải mã loại bỏ lớp mã hóa tạo đặc trưng giữ lại Vì có khả phục hồi liệu trước bị làm nhiễu nên DAE thường dùng để khôi phục ảnh liệu bị hỏng Denoise Autoencoder có chứa 03 lớp: input layer, hidden layer output layer, input layer hidden layer lớp encoder output layer hidden layer lớp decoder Số lượng nút input layer tương ứng với số chiều liệu đầu vào Encoder DAE thu hàm biến đổi phi tuyến: (4) Hình 2.3 Sơ đồ cấu trúc mạng Denoise Autoencoder Quá trình giải mã tái cấu trúc DAE sử dụng mapping function (thuật toán học máy hình thức hóa biểu thức ánh xạ liệu đầu vào thành liệu đầu ra): (5) d Trong đó, x’ € R đầu trình giải mã DAE, trình tái cấu trúc liệu ban đầu x trước bị làm nhiễu Output layer có số nút với input layer Trong trình đào tạo DAE ta có loss function tính theo lỗi bình phương trung bình khơng tính theo liệu đầu vào input layer mà tính theo liệu trước bị làm nhiễu Mục tiêu trình học giảm loss function tìm weight phù hợp ta cần sử dụng thuật toán tối ưu Stochastic Gradient Descent - Stacked Denoise Autoencoder DAE xếp chồng lên để xây dựng deep network (mạng học sâu) có nhiều 01 hidden layer SDAE bao gồm hai phần: encoder decoder Trong phần encoder đầu lớp đóng vai trò liệu đầu vào lớp mã hóa thứ hai Giả sử có L lớp ẩn encoder, có hàm kích hoạt lớp mã hóa thứ k: (16) 11 Trong phần decode, đầu lớp thứ đầu vào lớp thứ hai, có hàm kích hoạt lớp decode thứ k: (0) Đầu vào x trúc liệu ban đầu x (17) decode đầu z Đầu decode trình tái cấu L Hình 2.4 Sơ đồ cấu trúc mạng Stacked Denoise Autoencoder 2.2.3 Ứng dụng Autoencoder tiền xử lý liệu Trong đề tài sử dụng mạng học sâu Autoencoder (AE) số thuật toán học máy để xác định công xâm nhập mạng Ứng dụng mạng học sâu có 02 ưu điểm chính: - Thứ nhất, kết mạng học sâu không chịu chi phối việc định nghĩa đặc trưng liệu, điều có nghĩa liệu đầu vào không cần phải trải qua công đoạn tiền xử lý trích chọn feature, đưa vào gần liệu thô - Thứ hai, thân mạng học sâu sử dụng thuật toán thống kê với quy mô siêu lớn, đưa vào nhiều liệu độ xác cao Có hai giai đoạn trình phát xâm nhập là: Learning Feature Classifier Trong giai đoạn Learning Feature, liệu mạng đưa vào mạng AE DAE Ta có mã chứa đặc trưng đại diện liệu Các đặc trưng mơ tả liệu đầu vào, giúp cho việc phân loại nhanh xác nhờ vào khả học AE DAE Ngồi ra, ta sử dụng mạng SDAE để khôi phục liệu bị hỏng Trong giai đoạn Classifier, ta lấy liệu trích xuất từ giai đoạn Learning Feature sử dụng thuật toán phân loại SVM, RF, DT, KNN, NB để xác định liệu đầu vào bình thường hay bất thường Xây dựng mơ hình phát xâm nhập dựa Autoencoder Trước q trình Learning Feature tạo đặc trưng liệu đầu vào, ta cần phải huấn luyện mạng để mạng có trọng số phù hợp liệu xuất lớp output giống với liệu đầu vào lớp input tức loss function nhỏ Vậy trình huấn luyện tiến hành theo bước sau: - Bước Chuẩn hóa liệu đầu vào: Để huấn luyện mạng, ta dùng liệu dán nhãn NSS-KDD, Phishing Sau đó, ta đưa tất liệu số chia liệu theo tỷ lệ 70% để train 30% để test Dữ liệu train test chia thành phần X_train, Y_train, X_test, Y_test Trong X_train data dùng để train, Y_train label X_train gồm 02 loại bao gồm normal: attack: 1, X_test liệu để test, Y_test label X_test - Bước Xây dựng mạng SAE SDAE: Từ phương pháp huấn luyện mạng AE DAE, loại Autoencoder nội dung ứng dụng Autoencoder tiền xử lý liệu, ta có mơ hình mạng Nơron phát xâm nhập mạng dựa SAE SDAE xây dựng với cấu trúc: 12 Input Layer, 02 Hidden Layer Output Layer (như hình dưới) Mục đích việc huấn luyện xác định trọng số giảm loss function Trước huấn luyện, ta cần xác định tham số cần thiết trình huấn luyện: learning rate = 1e - 4, batch_size = 100, num_epoch = 1000, step = 20 tức lần chạy xong 20 epoch Hình 2.5 Mơ hình ứng dụng SAE SDAE vào hệ thống IDS - Bước Tiến hành huấn luyện: Đối với SDAE ta phải làm nhiễu liệu trước huấn luyện Mỗi lần huấn luyện 20 epoch, epoch huấn luyện 100 mẫu liệu Sau huấn luyện xong lần, ta xem xét loss function đạt tiêu chuẩn khơng, sau sử dụng mạng SA DAE để chuyển đổi X_train, X_test thành Z_train, Z_test chứa đặc trưng liệu Sau đó, Z_train, Y_train, Z_test, Y_test classifier để học cách phân loại thuật toán phân loại Bước Tiến hành phân loại: Sau sử dụng SAE SDAE để có đặc trưng, ta sử dụng Z_train, Y_train cho thuật toán phân loại để học Sau đó, ta dùng để phân loại Z_test Các thuật toán tạo Y_predict kết phân loại Z_test Sau đó, ta so sánh với Y_test với Y_predict Kết phân loại tính theo số AUC 13 CHƢƠNG III CÀI ĐẶT VÀ THỬ NGHIỆM 3.1 Phƣơng pháp cài đặt thử nghiệm Để tiến hành trình thực hành xây dựng hệ thống huấn luyện sử dụng ngơn ngữ lập trình Python làm ngơn ngữ để xây dựng hệ thống Trong ngơn ngữ python, có hỗ trợ thư viện dành cho deep learning như: Tensorflow, sklearn,…, thư viện thao tác liệu pandas, numpy, sử dụng PyQt để xây dựng ứng dụng Tensorflow thư viện mã nguồn mở cung cấp khả xử lý tính tốn dựa biểu đồ mô tả thay đổi liệu Trong đó, node phép tính tốn học cịn cạnh biểu thị luồng liệu Ngồi ra, ta sử dụng thư viện Sklearn thư viện mã nguồn mở hỗ trợ hầu hết thuật toán học máy cách đơn giản mà không cần phải cài đặt, lập trình lại Các bước tiến hành thí nghiệm bao gồm: - Bước 1: Lựa chọn liệu chuẩn hóa liệu; - Bước 2: Xây dựng mạng SAE SDAE thư viện tensorflow; - Bước 3: Huấn luyện mạng SAE SDAE thuật toán phân loại; - Bước 4: Cho liệu test chạy qua mạng SAE SDAE thu mã chứa đặc trưng Tiếp tục sử dụng mã để thực trình phân lớp liệu; - Bước 5: Đánh giá kết kết luận; 3.2 Giới thiệu tập liệu 3.2.1 Phishing Website Data Phishing Website Data liệu chứa đặc trưng quan trọng việc phát trang bị công phishing Bộ liệu có tổng cộng 30 đặc trưng 2.456 mẫu liệu, mẫu liệu gán nhãn dán cơng bình thường Các đặc trưng bao gồm 03 trạng thái: Nghi ngờ, phishing hợp pháp Bộ liệu chia chia thành 02 phần, phần để huấn luyện chiếm 70% phần để testing chiếm 30% 3.2.2 NSL-KDD Tập liệu NSL-KDD dùng để huấn luyện bao gồm 125.973 ghi tập liệu kiểm tra gồm 22.544 ghi Mỗi ghi có 41 thuộc tính dán nhãn bình thường cơng cách xác với kiểu cơng cụ thể Tập liệu huấn luyện chứa 22 kiểu công thêm 17 kiểu liệu kiểm 3.3 Trích chọn đặc trƣng sử dụng AE Ta xây dựng mơ hình mạng Nơron phát xâm nhập mạng dựa SAE SDEA cấu trúc: Input Layer, 02 Hidden Layer, Output Layer Số nút layer phụ thuộc vào số lượng đặc trưng loại liệu Các tham số cần thiết trình huấn luyện: learning rate = 1e-4, batch_size = 100, num_epoch = 1000, step = 20 tức lần chạy 20 epoch 3.4 Huấn luyện phát - Trong pha huấn luyện phát hiện, ta sử dụng hàm có sẵn thư viện tensorflow để chuyển đổi X_train, X_test thành Z_train, Z_test chứa đặc trưng liệu - Sau đó, Z_train, Y_train, Z_test, Y_test classifier để học cách phân loại thuật toán phân loại: SVM, DT, RF, NB, KN 3.5 Kết nhận xét 3.5.1 Kết liệu Phishing Website Data Sau trình xây dựng huấn luyện mạng SAE SDAE với liệu Phishing Website Data, xem xét kết loss function, AUC trình classifier nhận thấy rằng: Khi sử dụng liệu Phishing Website Dataset có 30 feature cấu trúc mạng tối ưu mạng có 02 hidden layer số lượng nút layer [25, 15] Tôi thử huấn luyện với số lượng hidden layer 03 04 hidden 01 hidden layer kết AUC không tốt sử dụng 02 hidden layer 14 Để so sánh việc sử dụng mạng SAE SDAE không sử dụng mạng q trình phân loại, tơi tiến hành so sánh số thời gian phân lớp, độ xác AUC chúng Sau so sánh, nhận thấy việc sử dụng mạng SAE SDAE để học đặc trưng liệu cho kết AUC tốt việc không sử dụng mạng SAE SDAE Tuy nhiên, việc sử dụng mạng học sâu có kết khác thuật toán phân loại khác Qua bảng liệu AUC liệu Phishing Website Data bên ta nhận thấy rằng, việc phân loại liệu khơng có đặc trưng nhận từ SAE SDAE có số UAC không cao so với liệu học đặc trưng SAE SDAE Đặc biệt, thuật toán Naive Bayes số UAC tăng khoảng 20 % mạng SAE thuật toán khác tăng từ 02 đến 03% Đối với mạng SDAE, thuật toán Naive Bayes tăng khoảng 23% thuật toán khác tăng từ 02 đến 03 % Nhưng ta nhận thấy số AUC mạng SDAE cao mạng SAE liệu Bảng 3.4 Bảng so sánh AUC sử dụng SAE, SDAE không sử dụng liệu Phishing Data Website Thuật toán SVM Random Naive Bayes K-Neighbors Decision Deep learning Forest Tree 0.909 0.947 0.706 0.944 0.937 Không dùng SAE 0.930 0.970 0.921 0.970 0.955 SDAE 0.931 0.972 0.930 0.974 0.954 Sau huấn luyện mạng SAE SDAE với liệu huấn luyện có epoch =20 (thực việc học tồn liệu 20 lần), ta tiến hành thực học đặc trưng liệu test phân loại chúng Tiếp theo, tiến hành tính AUC dựa kết phân loại Ta thực tổng cộng 1000 epoch Ta nhận thấy trình phân loại cho kết tương đối tốt từ đợt huấn luyện Với thuật toán NB SVM số AUC 02 mạng không biến động nhiều suốt q trình ngược lại thuật tốn DT, KN RF số AUC biến đổi liên tục khơng ổn định Đặc biệt thuật tốn DT độ biến thiên nhiều Qua phân tích đồ thị giá trị hàm loss function 02 mạng, ta nhận thấy khả hội tụ 02 mạng nhanh, từ epoch sau có kết tốt độ biến thiên hàm loss Điều có nghĩa 02 mạng SAE DAE học đặc trưng tốt từ đợt huấn luyện Thời gian huấn luyện dựa thời gian phân loại mẫu (sample) liệu Đối với sử dụng mạng học sâu, tơi tính thời gian phân loại thời gian học đặc trưng cộng với thời gian phân nhóm mẫu Tơi nhận thấy thuật tốn KN NB sử dụng mạng SAE SDAE có thời gian phân loại tốt khơng sử dụng Cịn thuật tốn khác hồn tồn ngược lại Đó nhược điểm việc áp dụng mạng học sâu thuật toán 3.5.2 Kết liệu NSL-KDD Bộ liệu NSL-KDD bao gồm 41 feature nên trình huấn luyện, xây dựng mạng SAE SDAE với cấu trúc 02 hidden layer [30,15] Bộ liệu dán 02 loại dãn nhán công không công Tương tự liệu Phishing Website Data, thuật toán NB sử dụng mạng SAE SDAE với liệu NSL-KDD tăng nhiều khoảng 30% 02 mạng Các thuật toán khác tăng từ 02 đến 07% ngoại trừ thuật tốn SVM khơng tăng 15 Bảng 3.5 Bảng so sánh AUC sử dụng SAE, SDAE không sử dụng liệu NSL-KDD Thuật toán SVM Random Naive Bayes KDecision Deep learning Forest Neighbors Tree 0.789 0.813 0.587 0.777 0.822 Không dùng 0.854 0.838 0.810 0.844 0.865 SAE 0.855 0.846 0.815 0.836 0.870 SDAE Ta nhận thấy giá trị hàm loss function 02 mạng huấn luyện liệu NSL-KDD hội tụ điểm cực tiểu nhanh nhờ thuật toán SGD độ biến thiên mạng không nhiều Loss function mạng SAE tốt SDAE Thời gian phân loại liệu NSL-KDD sử dụng mạng SAE SDAE giống với liệu Phishing Website Data, thuật toán NB KN thuật tốn có thời gian phân loại tốt sử dụng mạng SAE SDAE Các thuật tốn khác khơng tối ưu thời gian sử dụng mạng học sâu 16 KẾT LUẬN Trong trình nghiên cứu, tơi tìm hiểu chi tiết sở lý thuyết để thực đồ án như: Lý thuyết mạng Nơron, Deep Learning, phát xâm nhập mạng Trong học sâu, tơi vào tìm hiểu cấu trúc mạng Autoencoder Đối với toán phát xâm nhập mạng, thường sử dụng thuật toán phân lớp để phân loại liệu đầu vào, xem xét chúng để đưa kết luận chúng có phải cơng hay khơng Việc đưa liệu bình thường vào để phân loại đem lại hiệu không cao tốn thời gian phân loại Chính vậy, tơi sử dụng mạng học sâu AE Khi sử dụng 01 hidden layer với AE, nhận thấy kết AUC không tốt nên sử dụng mạng với nhiều hidden layer Tôi ứng dụng 02 mạng vào hệ thống IDS chia trình phát thành 02 phần: Learning feature (học đặc trưng) classifier (phân loại) Sau trình xây dựng thực huấn luyện mạng, tơi nhận thấy rằng: Sử dụng mạng học sâu SAE SDAE đem lại hiệu cao việc phát xâm nhập mạng Trong luận văn này, sử dụng thuật toán phân lớp SVM, RF, KNN, NB, DT Kết tốt sử dụng thuật toán NB Với thuật toán khác, kết tăng tăng Về thời gian, có 02 thuật toán phân lớp tốt NB KNN sử dụng với mạng học sâu Tỷ lệ AUC thuật toán ngoại trừ thuật toán NB tăng số thuật tốn (RF, DT) có thời gian phân loại không tốt nhiều so với việc không sử dụng mạng SAE, SDAE Đây hạn chế nghiên cứu Trong thời gian tới, tơi tiếp tục nghiên cứu, tìm hiểu thêm để cải tiến, tối ưu mạng với mục tiêu giảm thời gian phân loại sử dụng mạng học sâu, tăng số AUC thuật toán./ ... 16 CHƢƠNG I TỔNG QUAN VỀ PHÁT HIỆN XÂM NHẬP MẠNG 1.1 Khái quát công xâm nhập mạng Tấn công xâm nhập mạng hành vi mạng máy tính khơng có cho phép Phát cơng xâm nhập mạng dựa người phịng thủ có... huấn luyện mạng, nhận thấy rằng: Sử dụng mạng học sâu SAE SDAE đem lại hiệu cao việc phát xâm nhập mạng Trong luận văn này, tơi sử dụng thuật tốn phân lớp SVM, RF, KNN, NB, DT Kết tốt sử dụng thuật... giúp đỡ động viên em để hoàn thành tốt Luận văn “PHÁT HIỆN XÂM NHẬP MẠNG SỬ DỤNG HỌC MÁY “ Do vốn kiến thức lý luận kinh nghiệm thực tiễn cịn nên luận văn khơng tránh khỏi thiếu sót định Em xin

Ngày đăng: 09/06/2021, 21:21

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan