Phát hiện xâm nhập dựa trên mạng LSTM và AutoEncoder
lượt xem 5
download
Bài viết Phát hiện xâm nhập dựa trên mạng LSTM và AutoEncoder đề xuất một phương pháp DL cho phát hiện tấn công mạng sử dụng mạng bộ nhớ dài hạn (Long-Short Term MemoryLSTM) và bộ mã hóa tự động (AutoEncoder-AE).
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Phát hiện xâm nhập dựa trên mạng LSTM và AutoEncoder
- PHÁT HIỆN XÂM NHẬP DỰA TRÊN MẠNG LSTM VÀ AUTOENCODER Phan Thanh Sơn, Mai Thị Hoàng Yến, Trần Ngọc Nam, Lê Trần Văn Chương Khoa Công nghệ Thông tin, Trường Đại học Công Nghệ TP. Hồ Chí Minh (HUTECH) GVHD: TS. Văn Thiên Hoàng TÓM TẮT Ngày nay, cùng với sự phát triển nhanh chóng của các ứng dụng hoạt động trong môi trường mạng, thì hệ thống phát hiện xâm nhập (Network Intrusion Detection System- IDS) đóng vai trò quan trọng trong việc giảm thiểu những mối đe dọa cho các hệ thống thông tin này. Mặt khác, công nghệ máy học (Machine Learning-ML) và học sâu (Deep LearningDL) ngày càng được áp dụng rộng rãi và chứng minh hiệu quả trong lĩnh vực an ninh mạng, đặc biệt là các hệ thống phát hiện xâm nhập thế hệ mới (IDS). Trong bài báo này, chúng tôi đề xuất một phương pháp DL cho phát hiện tấn công mạng sử dụng mạng bộ nhớ dài hạn (Long-Short Term Memory- LSTM) và bộ mã hóa tự động (AutoEncoder-AE). Trong đó, LSTM được sử dụng để thu thập các mẫu tuần tự trong dữ liệu mạng và kết hợp với bộ mã hóa tự động AE để nâng cao hiểu quả hoạt động không đối xứng của mạng LSTM trong việc tái tạo với các mẫu huấn luyện để làm nổi bật các đặc trưng của loại tấn công mạng. Phương pháp đề xuất được thực nghiệm đánh giá trên bộ dữ liệuNSL-KDD. Các kết quả thực nghiệm với độ chính xác cao đã chứng minh tính khả khi và hiệu năng của phương pháp đề xuất. Từ khóa: AutoEncoder, IDS, LSTM, Phát hiện, Tấn công, Xâm nhập mạng. 1. GIỚI THIỆU IDS là công cụ cần thiết để đảm bảo khả năng sẵn có, tính bảo mật và tính toàn vẹn của dữ liệu. IDS có hai loại: Hệ thống phát hiện dựa trên chữ ký và dựa trên sự bất thường. Trong hệ thống dựa vào chữ ký, lưu lượng độc hại có thể được phát hiện dựa trên các quy tắc được xác định trước. Tuy nhiên, các cuộc tấn công mạng ngày càng tinh vi, hệ thống phát hiện dựa vào chữ ký không quá phù hợp, cần phát triển các kỹ thuật phát hiện tấn công dựa vào sự bất thường của luồng dữ liệu mạng. Do vậy, các IDS dựa trên dị thường đã thu hút được sự chú ý của cộng đồng nghiên cứu. Có nhiều phương pháp để nhận diện tấn công loại tấn công mạng dựa vào sự bất thường. Trong đó, các kỹ thuật máy học ML được phát triển nhiều trong thời gian gần đây [1]. Mô hình tìm ra mẫu trong dữ liệu sai lệch so với các luồng dữ liệu bình thường khác [2]. Hầu hết các công trình hiện nay đều dựa trên các phương pháp phát hiện dị thường được áp dụng Artificial Neural Networks (ANN) cho các nhiệm vụ phân loại. Dữ liệu được gắn nhãn được sử dụng trong giai đoạn đào tạo. Sau đó, mô hình được áp dụng trên dữ liệu thử nghiệm để phân loại nó thành một trong các lớp dị thường. Tang và cộng sự [3] đã đề xuất sử dụng mạng neural Self Organizing Map (SOM) để phát hiện tấn công mạng dựa trên luồng dữ liệu 73
- mạng và đạt độ chính xác là 83%. Latah và cộng sự [4] đề xuất một hệ thống phân loại hỗn hợp năm giai đoạn để nâng cao tỷ lệ phát hiện các lưu lượng tấn công mạng. Mô hình này kết hợp ba bộ phân loại học máy khác nhau, bao gồm phương pháp K-Nearest Neighbor (KNN), Ex-treme Learning Machine (ELM) và Hierarchical Extreme Learning Machine (H-ELM). Độ chính xác của phương pháp được trình bày là 94.18%. Prasath và cộng sự [5] đề xuất phương pháp phân loại mạng Meta-heuristic Bayesian network classification (MHBNC) để phát hiện các gói tin đến mạng là lưu lượng truy cập bình thường hoặc tấn công mạng. Mô hình MHBNC được đề xuất đã đạt được độ chính xác là 82,99%. Một trong những ưu điểm chính của các kỹ thuật nói trên là khả năng xử lý các tập dữ liệu nhiều chiều với hiệu suất cao. Tuy nhiên, những phương pháp này chủ yếu dựa vào dữ liệu được gắn nhãn và dữ liệu cân bằng nhưng phần lớn dữ liệu không cân bằng, dữ liệu bất thường khó thu thập được hơn so với dữ liệu bình thường. Hướng tiếp cận khác là dựa vào mạng neural AE để phát hiện sự bất thường. Nhóm tác giải Hawsking [6] đã sử dụng AE để phát hiện trường hợp ngoại lệ. Trong những năm gần đây, AE thường được sử dụng như là thuật toán hỗ trợ để giảm số chiều đặc trưng. AE có khả năng tạo các đặc trưng với số chiều nhiều hơn để tăng độ chính xác trong việc phát hiện sự bất thường và đạt hiệu quả cao hơn so với Kernel Principal Component Analysis (kernel PCA) [7]. Hơn nữa, AE dễ đào tạo và không yêu cầu tính toán phức tạp như Kernel Principal Component Analysis (kernel PCA) [8]. Bài báo này, đề xuất kỹ thuật học sâu sử dụng kết hợp LSTM và AE để mô hình hóa lưu lượng dữ liệu. Mô hình mạng học sâu này, cho phép học tự động các tính năng phân biệt từ các đặc trưng của luồng dữ liệu mạng. Các phần tiếp theo chúng tôi sẽ trình bày nội dung thuật toán đề xuất: Phần 2 sẽ trình bày chi tiết thuật toán đề xuất, kết quả thực nghiệm được trình bày trong phần 3 và kết luận trong phần 4. 2. PHƯƠNG PHÁP ĐỀ XUẤT Phương pháp đề xuất kết hợp mô hình mạng neural LSTM với bộ tiền xử lý dữ liệu AE để nhận diện các loại tấn công mạng. Mô hình AE để trích xuất đặc trưng và dùng mạng neural LSTM để huấn luyện mạng phân biệt (Xem hình 1). Hình 1. Sơ đồ phương pháp đề suất 2.1 Thuật toán AE cho tiền xử lý dữ liệu Vì các luồng dữ liệu trong hai tập dữ liệu NSL_KDDTrain+.txt vàNSL_KDDTest+.txt vẫn chưa qua xử lý, số chiều còn khá nhiều và phức tạp nên sẽ gây khó khăn trong việc phân loại, xử lý các đặc trưng và mất nhiều 74
- thời gian, tài nguyên trong quá trình huấn luyện mô hình. Vì vậy, đầu tiên chúng tôi sẽ sử dụng AutoEncoder để xử lý đầu vào bằng cách trích xuất đặc trưng các dữ liệu có trong tập NSL_KDD. Dữ liệu sẽ được xử lý thông qua encoder với hàm kích hoạt là “Swish” [9] có những ưu điểm vượt trội hơn so với hàm “LeakyReLU” hoặc “ReLU” ở những bài toán trước đó đã sử dụng để giảm chiều không gian, bỏ đi những dữ liệu không cần thiết và chỉ lấy những dữ liệu đặc trưng nhất. Sau đó dữ liệu sẽ được nén lại thông qua vectơ đặc trưng ít chiều hơn so với ban đầu. Tiếp theo, trong không gian tiềm ẩn (Botteneck) chính là “encoding_dim” vectơ đặc trưng nơi chứa những thông tin quan trọng trong giai đoạn encoder. Trong giai đoạn này, chính vì Botteneck chứa những thông tin cô đọng nhất nên chiều của nó sẽ nhỏ hơn so với ban đầu, nếu Botteneck càng nhỏ thì sẽ càng tránh được overfitting và Botteneck sẽ chọn lọc những thông tin quan trọng hơn trong suốt quá trình xử lý. Tuy nhiên, Botteneck quá nhỏ, lưu trữ được quá ít thông tin thì sẽ rất khó khăn trong phần decoder. Sau đó, trong giai đoạn decoder sẽ giải mã ngược những dữ liệu ở giai đoạn Botteneck để tạo ra dữ liệu mới tương tự như dữ liệu ban đầu. Thuật toán AE như sau: Bảng 2.1 Mô hình xử lý dữ liệu đầu vào Autoencoder Thuật toán Autoencoder(X_train_scaler) Input X train scaler – input NSL-KDD reshape Output A set of attack network feature-extraction Init encoder = Sequential { Dense (activation=’swish’, input) Dense(encoding_dim} Initialize Init decoder = Sequential { Dense (activation=’sigmoid’, input)} Init Autoencoder = Sequential (encoder, decoder) return encoder 2.2 Mạng LSTM cho việc phát hiện loại tấn công mạng Sau khi được xử lý đầu vào bằng AutoEncoder thì trong giai đoạn tiếp theo chúng tôi sẽ sử dụng mạng LSTM với 50 node và Activation Function softmax để huấn luyện dữ liệu đặc trưng. Sử dụng mạng LSTM để tránh việc Vanishing Gradient trong quá trình huấn luyện. LSTM sử dụng cơ chế hoạt động của các cổng để điều 75
- chỉnh lượng thông tin. LSTM sẽ sử dụng ba cổng trong một tế bào: Forget gate, Input gate và Output gate. Đầu tiên, ở cổng Forget gate sẽ quyết định xem là những thông tin nào cần lượt bỏ và thông tin nào sẽ được giữ lại. Trong giai đoạn Input gate sẽ quyết định thông tin nào sẽ được cập nhật và thêm vào tế bào. Cuối cùng, giai đoạn Output gate sẽ sàng lọc và quyết định thông tin muốn xuất ra cho tế bào tiếp theo. Bảng 2.2 Mô hình mạng LSTM Thuật toán LSTM (X_train_lstm, X_test_lstm) Input look_back = X_train_extract.shape[1] Output A set of Data Discriminator MultiClassModel model = Sequential() model.add(Input(shape=(1, look_back))) model.add(LSTM(units=50)) Initialize model.add(Dense(label_num, activation="softmax")) Model
- 3.1 Các độ đo đánh giá thực nghiệm Ngoài ra, chúng tôi cũng sử dụng một số công thức để có thể đánh giá độ hiệu quả như sau: TP TP Precision = Recall = TP + FP TP + FN 2 x Precision x Recall TP + TN F − score = Accuracy = Precision + Recall TP + TN + FP + FN Trong đó, True Positive (TP) đại diện cho số lượng như bình thường. Tính toán sai số bản ghi như dữ liệu lưu lượng truy cập bình thường và bất thường. Phân tích độ chính xác, được phân loại chính xác là một cuộc tấn công. True Negative (TN) đại diện cho giá trị phủ định đúng, F-score là độ chính xác cho tất cả các phương pháp được xem xét. Số lượng các trường hợp được phân loại chính xác là bình thường. False Positive (FP) thể hiện số lượng dự đoán được phân loại không chính xác của một cuộc tấn công. False Negative (FN) đại diện cho số lượng dự đoán bình thường nhưng không chính xác. 3.2 Cơ sở dữ liệu NSL-KDD Tập dữ liệu NSL-KDD chứa các file đại diện cho bốn loại tấn công: DoS, U2R, R2L và Probe. Các luồng dữ liệu còn lại đại diện cho lưu lượng bình thường. Các file trong tập dữ liệu NSL-KDD bao gồm 43 tính năng mô tả các thuộc tính của luồng lưu lượng trong mạng. Trong bài báo này, chúng tôi sử dụng KDDTrain + .TXT làm tập huấn luyện và KDDTest + .TXT làm tập thử nghiệm [1]. 3.3 Các biểu đồ đánh giá kết quả thực nghiệm Đây là ma trận độ lỗi thông qua mô hình AE-LSTM. Ở đây, chúng ta sẽ xét đến đường chéo chính (6076, 1748, 533, 9043). Một mô hình tốt sẽ cho Confusion matrix có các phần tử trên đường chéo chính có giá trị lớn, các phần tử còn lại có giá trị nhỏ. Nói cách khác đường chéo chính càng có màu sáng so với phần còn lại sẽ càng tốt. 77
- (a) (b) Hình 4. Confusion Matrix (a) và Biểu đồ ROC curve (b). Mô hình Receiver Operating Characteristics (ROC) cho ta biết tính hiệu quả của mô hình hay không. Một mô hình hiệu quả khi có False Positive Rate (FPR) thấp và True Positive Rate (TPR) cao, tức là tồn tại một điểm trên ROC curve gần với tọa độ (0,1) trên đồ thị. Curve càng gần thì mô hình càng hiệu quả. Đường chính giữa là đường Area Under the Curve(AUC). Đại lượng này chính là diện tích nằm dưới ROC curve màu. Giá trị này là một số dương nhỏ hơn hoặc bằng 1. Giá trị này càng lớn thì mô hình càng tốt. Để chứng minh điều này, chúng ta cùng xem đường ROC curve của DoS thì vùng diện tích của nó xấp xỉ bằng 1 (area = 0.9607) chứng tỏ độ bao phủ của chúng khá cao. Như chúng ta thấy trong bảng chủ thích, thì Probe sẽ có độ chính xác theo sau loại tấn công Dos với (area = 0.9336) và R2L là nhỏ nhất (area = 0.9185). 4. KẾT LUẬN Trong bài báo này, chúng tôi trình bày một phương pháp tiếp cận để phân loại các cuộc tấn công dựa trên cơ sở mô hình máy học bộ dữ liệu NSL-KDD. Dựa trên các số liệu thực nghiệm đã được thống kê và ghi nhận lại có thể kết luận mô hình có hiệu quả và độ chính xác cao hơn đáng kể so với các mô hình RNN khác. Cùng với đó, sự cải tiến trong Activation Function giúp cho bộ nhớ tiêu tốn và thời gian huấn luyện mô hình giúp giả thiểu tài nguyên tiêu tốn. Tập dữ liệu đã được đào tạo và thử nghiệm cho bốn lớp tấn công. Kết quả được đánh giá dựa trên một tiêu chuẩn tham số như Precision, Recall, F-score, Accuracy. Trong tương lai, chúng tôi sẽ cải thiện thêm mô hình LSTM với các Activation Funtion khác để giúp cho mô hình tối ưu hơn và chúng tôi dự định áp dụng mô hình vào trong hệ thống IDS thực tế để có thể đánh giá được hiệu suất của mô hình. 5. TÀI LIỆU THAM KHẢO [1] C. Yin, Y. Zhu, J. Fei, and X. He. 2017. A deep learning approach for intrusiondetection usingrecurrent neural networks. IEEE Access 5, 21954–21961. 78
- [2] T. A. Tang, L. Mhamdi, D. McLernon, S. A. R. Zaidi, and M. Ghogho. 2018. Deeprecurrent neural network for intrusion detection in SDN-based networks. In Proc.4th IEEE Conference on Network Softwarization and Workshops (NetSoft). IEEE,202–206. [3] T. A. Tang, L. Mhamdi, D. McLernon, S. A. R. Zaidi, and M. Ghogho. 2016. Deep learning approach for network intrusion detection in software defined networking. In Proc. International Conference on Wireless Networks and Mobile Communications (WINCOM). IEEE, 258–263. [4] M. Latah and L. Toker. 2018. An Efficient Flow-based Multi-level Hybrid Intrusion Detection System for Software-Defined Networks. arXiv preprint arXiv:1806.03875. [5] M. K. Prasath and B. Perumal. 2019. A meta-heuristic Bayesian network classification for intrusion detection. International Journal of Network Management 29, 3, e2047. [6] Simon Hawkins, Hongxing He, Graham Williams, and Rohan Baxter. 2002. Outlier detection using replicator neural networks. In International Conference on Data Warehousing and Knowledge Discovery. Springer, 170–180. [7] Mayu Sakurada and Takehisa Yairi. 2014. Anomaly detection using autoencoders with nonlinear dimensionality reduction. In Proceedings of the MLSDA 2014 2nd Workshop on Machine Learning for Sensory Data Analysis. 4–11. [8] Raghavendra Chalapathy and Sanjay Chawla. 2019. Deep learning for anomaly detection: A survey. arXiv preprint arXiv:1901.03407. [9] Prajit Ramachandran, Barret Zoph, Quoc V. Le. 2017. Searching for Activation Functions. Neural and Evolutionary Computing (cs.NE); Computer Vision and Pattern Recognition (cs.CV); Machine Learning (cs.LG). 1–13. 79
CÓ THỂ BẠN MUỐN DOWNLOAD
-
An toàn mạng: Hệ phát hiện xâm nhập - Võ Việt Minh Nhật
45 p | 276 | 95
-
CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG PHÁT HIỆN XÂM NHẬP
6 p | 397 | 91
-
Bài giảng Kỹ thuật theo dõi, giám sát an toàn mạng: Chương 3 - Nguyễn Ngọc Điệp
55 p | 79 | 14
-
Bài giảng Kỹ thuật theo dõi, giám sát an toàn mạng: Phần 2
103 p | 52 | 11
-
Giáo trình Cơ sở an toàn thông tin: Phần 2
65 p | 28 | 7
-
ALID-GAN: Phương pháp hỗ trợ học chủ động cho hệ thống phát hiện xâm nhập dựa trên mạng sinh đối kháng
6 p | 27 | 5
-
Một tiếp cận máy học để phân lớp các kiểu tấn công trong hệ thống phát hiện xâm nhập mạng
7 p | 47 | 5
-
Một giải pháp phát hiện xâm nhập trái phép dựa trên phương pháp học sâu
9 p | 68 | 5
-
Tối ưu hoá hệ đa chuyên gia nhị phân để nâng cao xác suất phát hiện tấn công
7 p | 22 | 4
-
Một phương thức phát hiện bất thường trong lưu lượng mạng
4 p | 44 | 4
-
Ứng dụng mạng nơron nhân tạo trong phát hiện xâm nhập mạng dựa vào tần suất lời gọi hệ thống với bộ dữ liệu ADFA-LD
8 p | 58 | 4
-
Cải tiến phát hiện tấn công sử dụng văn phạm nối cây trong lập trình gen
22 p | 61 | 3
-
Nghiên cứu phương pháp phát hiện sớm xâm nhập bất thường mạng DDOS dựa trên các thuật toán học máy
8 p | 23 | 3
-
Phương pháp phát sinh dữ liệu tấn công đánh lừa IDS học máy dựa trên mạng sinh đối kháng
6 p | 26 | 2
-
Phát hiện mã độc dựa trên điện toán đám mây
9 p | 49 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn