Bài toán phát hiện bất thường trong môi trường mạng

Một phần của tài liệu Tiếp cận mờ trong khai phá dữ liệu (Trang 67 - 72)

3 Một số ứng dụng của mạng mờ tự mã hóa

3.3.2 Bài toán phát hiện bất thường trong môi trường mạng

Trong thời đại công nghiệp 4.0, cùng với sự bùng nổ của các thiết bị mạng là sự gia tăng các website phục vụ mọi ngành nghề. Rất nhiều website trong số đó tồn tại các lỗ hổng dễ dàng bị khai thác mà không có biện pháp phòng vệ hiệu quả. Các loại tường lửa ra đời nhằm ngăn chặn những hành vi khai thác trái phép tài nguyên này. Tuy nhiên, với sự phát triển quá nhanh của công nghệ, các tường lửa truyền thống không có khả năng giải quyết được vấn đề này nữa. Các dạng tấn công hiện nay là quá đa dạng và tinh vi, con người khó có thể nhận biết được. Chính vì vậy, trí tuệ nhân tạo được áp dụng như một nhân tố không thể thiếu trong việc phát triển tường lửa.

Phat hiện tấn công ứng dụng web là một lĩnh vực nghiên cứu với nhiều thách thức, đang được quan tâm trong nhiều năm trở lại. Kruegel và cộng sự [31] đã phát triển một IDS phân tích tấn công dựa trên đánh giá độ bất thường của các truy vấn trong nhật ký dữ liệu thu thập, phương pháp này không yêu cầu chương trình phát hiện thời gian thực, đồng thời tận dụng tối đa cấu trúc truy vấn nhằm làm bất lên sự bất thường. Ingham và cộng sự [23] đã giới thiệu một máy Otomat hữu hạn (DFA) sử dụng luật kết hợp nhằm giảm sự đa dạng ngôn ngữ của truy vấn và thuật toán Heuristics nhằm phát hiện và phân tách truy vấn bất thường. Tiếp đó, nhóm nghiên cứu của Wang đã giới thiệu một phương pháp phát hiện dựa trên tải trọng, gọi tắt là PAYL. Quá trình phát hiện tấn công là quá trình đánh giá sự tương quan giữa dữ liệu mới và bộ dữ liệu ban đầu. Một phương pháp khác được đề xuất bởi Chen [11], đã sử dụng 20 luật logic mờ để phát hiện tấn công XML với tỉ lệ nhận biết tiệm cận 100%. Nhìn chung, các phương pháp này đều dựa trên các nền tảng toán học cơ bản.

Hiện đại hơn, các phương pháp phát hiện bất thường công bố trong những năm gần đây do phần đều áp dụng trí tuệ nhân tạo. Để phát hiện được các truy vấn tấn công, các phương pháp truyền thống sẽ tiến hành trích chọn các đặc trưng của truy vấn HTTP giúp phân biệt sự sai khác giữa các truy vấn bình thường và bất thường. Các vec-tơ đặc trưng này là đầu vào cho các mô hình

phân lớp và ảnh hưởng trực tiếp đến độ chính xác của của chúng. Nguyễn Hải Thanh và cộng sự [42][53] đã trích chọn ra 30 đặc trưng đại diện cho một truy vấn HTTP, sau đó dùng các mô hình học có giám sát như C4.5, Random Forest, Random Tree, ... để phân loại truy vấn bất thường và bình thường. Tuy kết quả đánh giá trên bộ dữ liệu thử nghiệm tương đối tốt, nhưng các tác giả chưa chứng minh được tập đặc trưng này là phù hợp cho tất cả các hệ thống. Việc trích chọn tập đặc trưng phù hợp là một thách thức đối với các bài toán sử dụng phương pháp học máy truyền thống nói chung.

Trong những năm gần đây, các mô hình học sâu phát triển mạnh mẽ, được ứng dụng và đem lại kết quả vượt trội trong nhiều lĩnh vực khác nhau như nhận dạng tiếng nói, thị giác máy tính, xử lý ngôn ngữ tự nhiên, ... [40]. C. Jiabao Wang và nhóm nghiên cứu [56] đã áp dụng phương pháp học sâu Long-Short Term Memory (LSTM) kết hợp với Convolutional Neural Net- work (CNN) để xây dựng các bộ phân loại truy vấn HTTP với đầu vào trực tiếp là các truy vấn và cho kết quả vượt trội so với các phương pháp học máy truyền thống. Trong một nghiên cứu khác, Jingxi Liang và cộng sự [36] đã đề xuất một phương pháp tiền xử lý dữ liệu URL tokenizing, sau đó sử dụng mạng LSTM để phân loại truy vấn bình thường và bất thường. Bằng thực nghiệm, các tác giả đã chứng minh độ chính xác của phương pháp đề xuất trên bộ dữ liệu thử nghiệm và bộ dữ liệu thu thập trong môi trường thực tế. Tuy nhiên, URL tokenizing chỉ hoạt động đối với các loại tấn công trên URL, bỏ qua nhiều loại tấn công khai thác các lỗ hổng khác trong truy vấn HTTP.

Các phương pháp sử dụng kỹ thuật học có giám sát như trên cần một lượng lớn dữ liệu được gán nhãn để huấn luyện các mô hình phân loại. Tuy nhiên, trong thực tế việc thu thập và gán nhãn một lượng đủ lớn các truy vấn tấn công là không khả thi với phần lớn các hệ thống ở quy mô vừa và nhỏ. Trong khi việc thu thập và gán nhãn các truy vấn bình thường lại đơn giản hơn rất nhiều. Từ đó, Ali và cộng sự [55] đã đề xuất sử dụng mô hình học một lớp chỉ sử dụng các truy vấn bình thường đến hệ thống. Phương pháp đề xuất sử dụng n-grams kết hợp với Stacked AutoEncoder (SAE) để tự động trích chọn đặc trưng của các truy vấn, sau đó sử dụng Isolation Forest - một

kỹ thuật học không giám sát để mô hình hóa các truy vấn bình thường của hệ thống. Mạng Autoencode đã được chứng minh hiệu quả độc lập trong nhận biết bất thường màng nếu kết hợp với học kết hợp và tiền xử lý dữ liệu tốt. Phương pháp Regularized Autoencoder và Regularized Deep Autoencoder đã được chứng minh là những mô hình phù hợp nhất với hiện nay, với độ phân lớp cao [39] [54]. Tuy nhiên, vẫn còn một vài dạng thông tin tấn công mô hình chưa nhận biết được, do bỏ qua một số đặc trưng trong quá trình huấn luyện [39].

Từ những kiến thức đó, trong luận văn này, mạng mờ - tự mã hóa được đưa vào với mục đích tìm ra một mô hình giải quyết các hạn chế của bài toán trên, cho hiệu năng cao hơn. Đồng thời đây cũng là một chứng minh cho ảnh hưởng của logic mờ trong các bài toán học sâu

3.3.3 Dữ liệu truy vấn Web

Dữ liệu truy vấn Web, hay dữ liệu truy vấn HTTP/HTTPS, bao gồm phương thức, đường dẫn và có tham số đi kèm, quá trình tiền xử lý dữ liệu được thực thi với mục tiêu giảm thiểu được tính đa dạng, lưu lại được các thông tin quan trọng trong việc nhận biết tấn công. Liang và cộng sự [36] đã cho rằng các dấu hiệu bất thường có nhận biết được thông qua đường dẫn và cấu trúc tham số trong các truy vấn HTTP sử dụng phương thức GET. Kế thừa từ đó, chuẩn hóa Tokenizing dựa trên nghiên cứu từ trước của em được định nghĩa như sau [39]:

• Biến đổi tất cả chữ hoa thành chữ thường.

• Chuyển đối tất cả các tham số dạng số về <NV> và các tham số dạng chuỗi thành <SV>.

• Sử dụng <BD> để ngăn cách giữa phân HEADER và phần BODY trong các truy vấn POST, PUT.

Xét một ví dụ cụ thể, với một truy vấn đến hệ thống, thu được dữ liệu đầu vào như sau:

GET/tienda1/publico/anadir.jsp?id=3&nombre=Vino+Rioja &precio=100&cantidad=55&B1=A%F1adir+al+carrito

Sau quá trình xử lý dữ liệu, thu được truy vấn có dạng:

GET/tienda1/publico/anadir.jsp?id=<NV>&nombre=<SV>+<SV> &precio=<NV>&cantidad=<NV>&b1=<SV>%<SV>+<SV>+<SV>

Có thể thấy rằng các kí tự đặc biệt được giữ nguyên trong quá trình tiền xử lý dữ liệu. Những kí tự này là một phần quan trọng trong việc nhận biết các truy vấn bất thường, Dữ liệu được chuẩn hóa về dạng vec-tơ thông qua bảng mã ASCII và được tiến hành chuẩn hóa bằng thuật toán chuẩn hóa max-min, phục vụ cho các quá trình tiếp theo.

Trong luận văn, em sử dụng hai tập dữ liệu riêng biệt để đánh giá so sánh hiệu năng nhằm đạt được đánh giá khách quan nhất. Trong các nghiên cứu liên quan về phòng chống tấn công ứng dụng Web, bộ dữ liệu CSIC 2010 [39] được sử dụng phổ biến với nhiều nghiên cứu khác nhau. Bộ dữ liệu CSIC 2010 gồm tập hợp nhiều truy vấn HTTP của một website thương mại quốc tế, chứa khoảng 72000 truy vấn bình thường và 25000 truy vấn bất thường. Các truy vấn bất thường bao gồm nhiều loại tấn công như SQL injection, CRLF injection, Cross-site scripting, Buffer overflow và các loại tấn công sử dụng cấu trúc truy vấn bất thường khác. Bộ dữ liệu BKLA bao gồm các truy vấn được lọc và gán nhãn từ log các truy vấn đến một số Website của đại học Bách Khoa Hà Nội [39].

3.3.4 Đánh giá kết quả

Bảng 3.1: So sánh hiệu năng của mô hình RDA với các phương pháp khác trên bộ CSIC

Phương pháp Precision Recall F1-score

Regularized Autoencoder [39] 0.9329 0.9308 0.9305 Regularized Deep Autoencoder [39] 0.9464 0.9462 0.9463 Fuzzy Regularized Autoencoder 0.9353 0.9326 0.9318 Fuzzy Regularized Deep Autoencoder 0.9153 0.9148 0.9147

Bảng 3.2: So sánh hiệu năng của các mô hình trên bộ BKLA

Phương pháp Precision Recall F1-score

Regularized Autoencode [39] 0.9264 0.9264 0.9264 Regularized Deep Autoencoder [39] 0.9533 0.9528 0.9530 Fuzzy Regularized Autoencoder 0.9393 0.9393 0.9393 Fuzzy Regularized Deep Autoencoder 0.9057 0.9059 0.9039

Thông qua hai bảng dữ liệu trên, có thể thấy rằng lớp mờ hoạt động tốt với kiến trúc mạng đơn giản, ví dụ như Regularized Autoencoder. Việc thêm vào các lớp mờ vào một mạng đa lớp đã làm cho mô hình trở nên nhiễu và thiếu ổn định, dù cho việc nhiều này là không đáng kể.

Một vấn đề khác có thể đề cập đến, là về mặt thời gian, trong quá trình chạy mạng có thêm tính mờ không chiếm dụng quá nhiều tài nguyên, thậm chí còn có lúc hiệu năng tốt hơn so với mạng nhiều lớp Regularized Deep Autoencoder. Hiệu năng chung bình để xử lý bài toán là 51ms/ 1 truy vấn, với cầu hình máy đã trình bày, hoàn toàn đủ đáp ứng hiệu năng trong thực tế.

Nhìn chung lại, trong bài toán này, mạng học sâu không kết hợp Regular- ized Deep Autoencoder vẫn là mạng cho kết quả tốt nhất. Đồng thời không

thể khẳng định được việc kết hợp mờ làm bài toán phân lớp cho hiệu năng cao hơn. Nhưng thông qua thực nghiệm, có thể hiểu được rằng việc kết hợp mờ không làm giảm đi quá nhiều khả năng phân lớp của mô hình.

Một phần của tài liệu Tiếp cận mờ trong khai phá dữ liệu (Trang 67 - 72)

Tải bản đầy đủ (PDF)

(101 trang)