Ứ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ĩ)
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Trang 2HỌ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 sẽ được bảo vệ trước Hội đồng chấm luận văn thạc
sĩ tại Học viện Công nghệ Bưu chính Viễn thông
Vào lúc: …… giờ …… ngày …… tháng …… năm ……
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 3MỞ ĐẦU
Trong thời đại bùng nổ thông tin, mạng internet đã trở
thành một phần của cuộc sống hiện đại và ngày càng đóng vai trò quan trọng đối với con người, chúng ta có thể thấy được internet đã và đang chi phối hầu như mọi lĩnh vực của cuộc sống từ kinh tế, giải trí đến giáo dục và đào tạo,… Đặc biệt ngày nay, internet được sử dụng như một thành phần quan trọng trong các mô hình kinh doanh, trong đó cả doanh nghiệp
và khách hàng đều sử dụng các dịch vụ, ứng dụng, website, thư điện tử trong các hoạt động của mình Vì vậy, vấn đề an toàn thông tin khi sử dụng môi trường internet cần phải được đặc biệt quan tâm Trong thực tế, có khá nhiều rủi ro xuất phát
từ các cuộc tấn công mạng trên môi trường internet Theo thống kê số liệu tấn 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 cuộc tấn công mạng Việt Nam trong năm 2017 Các vụ tấn công mạng tăng cả số lượng, quy mô, còn hình thức ngày càng tinh vi Vì vậy các hệ thống khác nhau đã được thiết kế và xây dựng để ngăn cản các cuộc tấn công này, đặc biệt là các hệ thống phát hiện xâm nhập (Intrusion Detection System - IDS) giúp các mạng chống lại các cuộc tấn công từ bên ngoài
Trang 4Tuy nhiên, hệ thống phát hiện xâm nhập còn một số hạn chế như việc các gói tin xấu phát sinh từ lỗi phần mềm, dữ liệu DNS hỏng, và các gói tin này có thể tạo ra tỷ lệ cảnh báo sai cao đáng kể Ngoài ra, chi phí triển khai và vận hành hệ thống tương đối lớn, khả năng 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 trong các hệ thống phát hiện xâm nhập là hướng tiếp cận đã khắc phục được các hạn chế trên và ngày càng thể hiện tính ưu việt của kỹ
thuật học máy (machine learning)
Deep Learning (học sâu) là một nhánh của ngành Machine Learning dựa trên tập hợp các thuật toán Nhiều nghiên cứu cho thấy deep learning hoàn toàn vượt trội hơn các phương pháp truyền thống trong hầu hết các lĩnh vực Phương pháp học sâu tăng khả năng phát hiện xâm nhập, đạt tỷ lệ phát hiện cao nhất và tỷ lệ cảnh báo sai thấp nhất
Deep Learning là kỹ thuật dựa trên tập hợp các thuật toán cố gắng để mô hình dữ liệu trừu tượng hóa ở mức cao bằng cách
sử dụng nhiều lớp xử lý với cấu trúc phức tạp, hoặc bằng cách khác bao gồm nhiều biến đổi phi tuyến và tính năng học với các lớp hình thành một hệ thống các tính năng phân cấp từ thấp đến cao cấp Có ba lý do quan trọng nổi bật đối với kỹ
Trang 5thuật Deep Learning gần đây Đầu tiên, khả năng xử lý (ví dụ như đơn vị GPU) tăng mạnh Thứ hai, giá cả phần cứng máy tính vừa phải, và cuối cùng, sự đột phá gần đây của nghiên cứu học máy
Kỹ thuật Deep Learning được các nhà nghiên cứu dự đoán
sẽ mang tính đột phá trong trí tuệ nhân tạo Một trong những ứng dụng nổi tiếng là phần mềm AlphaGo (dự án Google Deepmind) đánh bại kỳ thủ cờ vây nổi tiếng Lee Seldol thiết
kế mô phỏng hoạt động não con người, có thể phân tích bài học từ những sai lầm để đưa ra phương án tốt hơn sau mỗi lần chơi Điều mà dự án này hướng tới là áp dụng trí tuệ nhân tạo vào cuộc sống hằng ngày Với nội dung là nghiên cứu về các
kỹ thuật học máy để tăng cường khả năng phân tích và nhận diện bất thường trong môi trường mạng dựa trên cơ sở các thư viện mã nguồn mở Chính vì vậy tác giả chọn đề tài là “Ứng dụng Deep Learning trong việc phát hiện bất thường trên mạng”
Luận văn sẽ đi sâu nghiên cứu các mô hình này, thực nghiệm
và đánh giá trên các tập dữ liệu KDD99 có được liên quan tới phát hiện xâm nhập bất thường nhằm cho ra kết quả cụ thể Từ kết quả này luận văn sẽ đề xuất hướng ứng dụng phù hợp
Trang 6CHƯƠNG 1 – TỔNG QUAN
1.1 Hệ thống phát hiện xâm nhập
Hệ thống phát hiện xâm nhập (Intrusion Detection System – IDS) [1] là một hệ thống giám sát lưu lượng mạng nhằm phát hiện hiện tượng bất thường, các hoạt động xâm nhập trái phép vào hệ thống IDS có thể phân biệt được những tấn công từ bên trong (nội bộ) hay tấn công từ bên ngoài (từ các tin tặc)
Hệ thống phát hiện xâm nhập (IDS) có hai loại chính [2]:
- NIDS: hệ thống phát hiện xâm nhập mạng
- HIDS: hệ thống phát hiện xâm nhập host
Các IDS được chia thành hai loại: phát hiện dựa trên dấu hiệu (misuse-based) và phát hiện dựa trên bất thường (anomaly-based)
IDS dựa trên dấu hiệu: để phát hiện các cuộc tấn công
bằng cách tìm kiếm các mẫu cụ thể, chẳng hạn như chuỗi byte trong lưu lượng mạng hay chuỗi lệnh độc hại đã biết được các phần mềm malware sử dụng [3]
IDS dựa trên bất thường [4]: phát hiện xâm nhập liên
quan đến các sai lệnh so với hệ thống thông thường hoặc trong
Trang 7hành vi người dùng Hệ thống phát hiện xâm phạm phải có khả năng phân biệt giữa các hoạt động thông thường của người dùng và hoạt động bất thường để tìm ra được các tấn công nguy hiểm kịp thời
Phát hiện các hành vi xâm nhập mạng và máy tính, lạm dụng bằng cách giám sát hoạt động của hệ thống và phân loại hành vi này là bình thường hay bất thường
1.2.2 Phân loại kỹ thuật phát hiện bất thường
Hầu hết các kỹ thuật phát hiện bất thường sử dụng các nhãn để xác định xem cá thể đó là bình thường hay bất thường
để đưa ra quyết định cuối cùng
Các kỹ thuật phát hiện bất thường có thể được chia thành 3 phương pháp dựa trên tính khả dụng cho các nhãn:
Trang 81.2.2.1 Phát hiện bất thường giám sát
1.2.2.2 Phát hiện bất thường bán giám sát
1.2.2.3 Phát hiện bất thường không giám sát
1.3 Tổng quan các kỹ thuật phát hiện bất thường
Phát hiện bất thường là một vấn đề quan trọng trong hệ thống phát hiện xâm nhập Phát hiện bất thường đã thu hút và trở thành lĩnh vực nghiên cứu được các nhà khoa học trên thế giới quan tâm
Một số nhà khoa học đã áp dụng các kỹ thuật Machine Learning xây dựng mô hình dựa trên tập dữ liệu huấn luyện vào phát hiện xâm nhập Dưới đây, là một số công trình nghiên cứu về 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 nhất giữa các đối tượng cần xếp lớp với các đối tượng trong tập dữ 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 và trọng số Kết quả thử nghiệm với nhiều cuộc tấn công Dos được áp dụng để đánh giá hệ
Trang 9thống phát hiện bất thường [8]
Johansen và Lee trong 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 hiện xâm nhập
dựa trên mô hình Mạng Bayesian để phân biệt các cuộc tấn công từ mạng hoạt động bình thường bằng cách so sánh các chỉ số của từng mẫu lưu lượng trên mạng [9]
Nghiên cứu “Artificial Neural Networks Architecture For Intrusion Detection Systems and Classification of Attacks” của 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 hiện xâm nhập Kết quả của nghiên cứu cho thấy mô hình MLP áp dụng vào hệ thống phát hiện xâm nhập
để phát hiện các kết nối mạng bất thường và phân loại các cuộc tấn công với độ chính xác cao [10]
Công trình nghiên cứu của các 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 và Máy học Vector
Hỗ trợ (Support Vector Machine -SVM) sử dụng phương pháp
Trang 10phân lớp để phát hiện bất thường áp dụng trong hệ thống phát hiện xâm nhập có tên gọi là Octopus-IIDS Kết quả thử nghiệm tác giả cho thấy tỷ lệ phát hiện cao, giảm tỷ lệ false
positiveNgoài ra, các kỹ thuật này được dùng để phân tích lưu
lượng mạng và phân loại các hình thức tấn công [11]
“ On the Capability of an SOM based Intrusion Detection System” của H.G Kayacik, A.N Zincir-Heywood
và M.I Heywood sử dụng kỹ thuật SOM (Self-Organizing Feature Map) 3 lớp để biểu diễn dữ liệu nhiều chiều, vào không gian ít chiều hơn và đặc trưng của dữ liệu đầu vào được giữ lại bản đồ Tác giả đề xuất phương pháp SOM vào hệ thống phát hiện xâm nhập IDS [12]
Rui Zhang, Shaoyan Zhang, Yang Lan, Jianmin Jiang
trong nghiên cứu “Network Anomaly Detection Using One
Class Support Vector Machine” đề xuất phương pháp phát
hiện bất thường trên mạng dựa trên One-Class Support Vector Machine (OCSVM) Kỹ thuật này có hai bước: Đầu tiên, dữ liệu được xử lý trước để tạo ra các bộ vector theo thuật toán OCSVM Sau khi tiền xử lý, bộ vector của tập dữ liệu huấn luyện được sử dụng để tạo ra bộ dò OCSVM có khả năng học các hành vi của dữ liệu Cuối cùng, tác giả sử dụng bộ dò
Trang 11được huấn luyện để phát hiện các bất thường trên mạng Kết quả thử nghiệm thể hiện được hiệu suất tốt của thuật toán [13]
Deep Learning là một bước đột phá của kỹ thuật Machine learning, có nhiều cải tiến mạnh mẽ trong lĩnh vực trí tuệ nhân tạo Những tiến bộ trong kỹ thuật học sâu có thể cải thiện khả năng hệ thống phát hiện xâm nhập đạt tỷ lệ phát hiện cao và tỷ lệ báo động giả thấp
Kết quả thực nghiệm trong vài năm trở lại đây đã chỉ ra rằng Deep Learning là thuật toán mạnh mẽ và tốt nhất khi làm việc trên Big Data
Do đó, tác giả áp dụng mô hình Deep learning xây dựng
hệ thống IDS dựa vào phát hiện bất thường là một hướng tiếp cận trong luận văn này
1.4 Kết luận chương
Giới thiệu tổng quan hệ thống phát hiện xâm nhập IDS, khái niệm phát hiện bất thường và đưa ra một số kỹ thuật phát hiện bất thường Trình bày lý do chọn đề tài nghiên cứu phát hiện bất thường sử dụng Deep Learning
Trang 12CHƯƠNG 2 - ỨNG DỤNG DEEP LEARNING TRONG VIỆC PHÁT HIỆN BẤT THƯỜNG TRÊN
MẠNG
Deep Learning là một lĩnh vực của Machine Learning
sử dụng mạng nơ-ron nhiều lớp Mạng nơ-ron hay còn được gọi là Mạng nơ-ron nhân tạo (Artificial Neural Network – ANN)
2.1 Mạng nơ-ron nhân tạo
Mạng nơron nhân tạo là một tập hợp các tế bào dây thần
kinh kết nối với nhau, đầu ra của nơ-ron có thể là đầu vào của nơ-ron khác
2.2 Deep Learning
Deep Learning cho phép các mô hình tính toán bao gồm nhiều lớp xử lý để học biểu diễn dữ liệu với nhiều mức trừu tượng Phương pháp này đã cải thiện đáng kể công nghệ tiên tiến trong nhận dạng giọng nói, nhận dạng đối tượng trực quan, phát hiện đối tượng và nhiều lĩnh vực khác như khám phá thuốc và bộ gen Học sâu phát hiện ra cấu trúc phức tạp trong các tập dữ liệu lớn bằng cách sử dụng thuật toán
Trang 13backpropagation (lan truyền ngược) để chỉ ra cách một máy nên thay đổi các tham số bên trong được sử dụng để tính toán biểu diễn trong mỗi lớp từ biểu diễn trong lớp trước Deep learning đã mang lại những đột phá trong xử lý hình ảnh, video, nhận dạng giọng nói và âm thanh [15]
Deep Learning có rất nhiều thuật toán như Convolutional Neural Networ (CNN), Deep Belief Network (DBN), Deep
Neural Network (DNN), Recurrent Neural Network (RNN),
Boltzman Machine (BM) và một trong số đó là mô hình Autoencoder được tác giả giới thiệu dưới đây
2.2.1 Autoencoder
Autoencoder [16] là một loại phương pháp Deep learning để học thông qua các mã (code) hiệu quả được đề xuất bởi G E Hinton vào năm 2006 Thông qua việc nghiên cứu, cho thấy mô hình Autoencoder có những ưu điểm vượt trội trong “học” các tính năng tốt Cấu trúc Autoencoder được chia thành một phần của bộ mã hóa và bộ giải mã, bao gồm cả lớp đầu vào, lớp ẩn, lớp đầu ra
Autoencoder là mạng nơ-ron được huấn luyện để sao chép đầu vào thành đầu ra của nó, với mục đích giảm kích thước chiều dữ liệu, quá trình giảm số biến ngẫu nhiên đang
Trang 14được xem xét Autoencoder có chức năng mã hóa để tạo ra
một lớp ẩn (hoặc nhiều lớp) chứa một mã để mô tả đầu vào
Sau đó một bộ giải mã tạo ra một sự tái thiết của đầu vào từ
lớp ẩn Một bộ mã hóa tự động sau đó có thể trở nên hữu ích
bằng cách có một lớp ẩn nhỏ hơn lớp đầu vào, buộc nó tạo ra
một biểu diễn nén dữ liệu trong lớp ẩn bằng cách tìm hiểu mối
tương quan trong dữ liệu Điều này tạo điều kiện cho việc phân
loại, trực quan hóa, giao tiếp và lưu trữ dữ liệu Autoencoder
là một hình thức học tập không giám sát, có nghĩa là
autoencoder chỉ cần dữ liệu không được gắn nhãn, một bộ dữ
liệu đầu vào hơn là các cặp đầu vào, đầu ra
Mục đích của Autoencoder là thử và tìm hiểu hàm được
hiển thị trong phương trình:
ℎ𝑊,𝑏(𝑥) ≈ 𝑥 (1)
Trong đó: W là trọng số, b là bias
Quá trình học được mô tả như là một hàm giảm thiểu
lỗi tái thiết, có phương trình:
L(x,d(f(x))) (2) Trong đó: L là hàm mất mát; d là hàm giải mã; f là hàm
mã hóa
Trang 152.3 Mô hình phát hiện bất thường sử dụng Autoencoder
Để khắc phục khó khăn trong việc trích xuất các đặc trưng từ dữ liệu và cải thiện độ chính xác của hệ thống phát hiện bất thường, tác giả đề xuất một phương pháp phát hiện bất thường dựa trên kỹ thuật Autoencoder thực nghiêm trên
bộ dữ liệu KDD99
Ý tưởng xây dựng mô hình mạng nơ-ron sâu với lớp
ẩn để tự động tìm hiểu các đặc tính của dữ liệu trước khi phát hiện các hành vi bất thường Các đặc tính được học từ mạng lưới này có thể làm tăng khả năng phân biệt các hành vi khác nhau Mô hình Autoencoder thực chất là mạng neural dùng để học không giám sát, học cách biểu diễn cho một tập các dữ liệu thông thường với mục đích giảm chiều dữ liệu, giúp dự đoán đầu ra từ một đầu vào ban đầu, với lớp ẩn học số node nhỏ hơn node đầu vào
Autotencoder xây dựng mô hình học các đặc tính của
dữ liệu dựa trên mạng neural nhiều lớp Thay vì các thuộc tính được thiết kế giả lập, các đặc tính được học từ mạng lưới này
sẽ được nhập vào mô hình phân loại để phát hiện các hành vi bất thường Trong hình 2.7, phương pháp phát hiện bất thường
Trang 16sử dụng mô hình Autoencoder này bao gồm hai giai đoạn:
- Giai đoạn 1: huấn luyện với mô hình Autoencoder cho
việc học và phân loại đặc tính Việc huấn luyện mô hình học các đặc tính được thực hiện bằng phương pháp không có giám sát, trong khi mô hình phân loại được huấn luyện với dữ liệu gắn nhãn Mô hình học hỏi đặc tính được huấn luyện phù hợp có thể được áp dụng trực tiếp để tìm hiểu đặc tính của dữ liệu mới Xử lý trước
dữ liệu trong giai đoạn này mục đích để chuẩn hóa dữ liệu đầu vào, cũng như kiểu dữ liệu chuyển đổi hình 2.7 (A)
- Giai đoạn 2: phát hiện các hành vi bất thường như
trong hình 2.7 (B), đầu tiên xử lý trước dữ liệu đầu vào,
và sau đó mô hình học các đặc tính được huấn luyện trong giai đoạn đầu tiên được sử dụng để tìm hiểu các đặc tính của dữ liệu Cuối cùng, các đặc tính này được nhập vào trình phân loại để dự đoán thông tin bình thường hay bất thường