Phát hiện lưu lượng mạng bất thường trong điều kiện dữ liệu huấn luyện chứa ngoại lai
Tóm tắt: Phát hiện lưu lượng mạng bất thường
đối mặt với nhiều khó khăn, thách thức như: xác
định mức ngưỡng dùng để so sánh phát hiện bất
thường, trích chọn đặc trưng dữ liệu, giảm số dữ
liệu cần xử lý, độ chính xác cần thiết. Ngoài
ra, ngoại lai có thể gây ra sai lệch đáng kể trong
quá trình phát hiện. Bài báo này đề cập các vấn
đề phát hiện lưu lượng mạng bất thường trong
điều kiện dữ liệu huấn luyện chứa ngoại lai và đề
xuất một phương pháp cải tiến dựa trên thuật toán
phân tích thành phần chính PCA gọi tên là dPCA.
Kết quả thử nghiệm được đánh giá dựa trên tập
dữ liệu Kyoto Honeypot.
Bạn đang xem tài liệu "Phát hiện lưu lượng mạng bất thường trong điều kiện dữ liệu huấn luyện chứa ngoại lai", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Phát hiện lưu lượng mạng bất thường trong điều kiện dữ liệu huấn luyện chứa ngoại lai
Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 1 năm 2016 3 Nguyễn Hà Dương, Hoàng Đăng Hải PHÁT HIỆN LƯU LƯỢNG MẠNG BẤT THƯỜNG TRONG ĐIỀU KIỆN DỮ LIỆU HUẤN LUYỆN CHỨA NGOẠI LAI Nguyễn Hà Dương*, Hoàng Đăng Hải+ *Khoa Công nghệ thông tin, Trường Đại học Xây Dựng Hà Nội +Học viện Công nghệ Bưu chính Viễn thông Tóm tắt: Phát hiện lưu lượng mạng bất thường đối mặt với nhiều khó khăn, thách thức như: xác định mức ngưỡng dùng để so sánh phát hiện bất thường, trích chọn đặc trưng dữ liệu, giảm số dữ liệu cần xử lý, độ chính xác cần thiết... Ngoài ra, ngoại lai có thể gây ra sai lệch đáng kể trong quá trình phát hiện. Bài báo này đề cập các vấn đề phát hiện lưu lượng mạng bất thường trong điều kiện dữ liệu huấn luyện chứa ngoại lai và đề xuất một phương pháp cải tiến dựa trên thuật toán phân tích thành phần chính PCA gọi tên là dPCA. Kết quả thử nghiệm được đánh giá dựa trên tập dữ liệu Kyoto Honeypot. Từ khóa: Phát hiện lưu lượng mạng bất thường, phát hiện ngoại lai, an ninh mạng.1 I. MỞ ĐẦU Tính mở và sự đa dạng của hạ tầng mạng, dịch vụ và ứng dụng đã tạo ra biến động, thăng giáng đáng kể của lưu lượng mạng. Mặt khác, hoạt động tấn công của tin tặc trên mạng cũng góp phần không nhỏ trong việc tạo ra lưu lượng đột biến so với lưu lượng bình thường trên mạng. Phát hiện lưu lượng mạng bất thường đã là một chủ đề nghiên cứu được quan tâm nhiều trong thời gian qua và đang trở thành một hướng nghiên cứu được đặc biệt quan tâm trong sự phát triển của lĩnh vực an ninh mạng [1]. Lưu lượng mạng bất thường là Tác giả liên hệ: Nguyễn Hà Dương, email: nghaduong@gmail.com Đến tòa soạn: 12/2/2016, chỉnh sửa: 12/4/2016, chấp nhận đăng: 12/5/2016. Một phần kết quả của bài báo này đã được trình bày tại hội thảo quốc gia ECIT’2015. lưu lượng có sự biến đổi không bình thường, có những thăng giáng đáng kể so với lưu lượng bình thường của mạng. Sự biến đổi bất thường này có thể do nhiều nguyên nhân, ví dụ điển hình là tấn công của tin tặc trên mạng (như DoS, Scan) và lỗi mạng. Ví dụ, tấn công DoS thường tạo ra một lượng lưu lượng đột biến so với lưu lượng bình thường trên mạng. Phát hiện nhanh và sớm lưu lượng mạng bất thường có thể giúp sớm phát hiện dấu hiệu tấn công mạng. So với các phương pháp truyền thống phát hiện tấn công mạng dựa trên dấu hiệu (signature-based) thường dùng trong các hệ thống phát hiện xâm nhập (Intrusion Detection System - IDS) [2,3,4], các phương pháp dựa trên sự kiện bất thường (anomaly-based detection) có ưu thế vì cho phép phát hiện được những kiểu tấn công mới. Nếu phát hiện chỉ dựa trên các mẫu dấu hiệu tấn công đã biết, hệ thống sẽ không thể phát hiện nếu tin tặc thay đổi một vài chi tiết để biến tấn công trở thành một kiểu mới. Vì vậy, các hệ thống ADS (Anomaly Detection System) đã được phát triển dựa trên phương pháp phát hiện hành vi bất thường (ví dụ [1,2]). Triển khai các ADS khó khăn hơn nhiều so với các IDS truyền thống. Các IDS thường dựa trên việc so sánh mẫu lưu lượng mạng thu được với các mẫu dấu hiệu biết trước lưu trong cơ sở dữ liệu tập mẫu. Ngược lại, ADS không đòi hỏi mẫu dữ liệu tấn công biết trước. Đối với ADS, cần xác định một tập hợp lưu lượng mạng bình thường. Lưu lượng mạng thu được sẽ được so sánh với tập hợp được coi là bình thường nêu trên. Dữ liệu Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG4 Số 1 năm 2016 PHÁT HIỆN LƯU LƯỢNG MẠNG BẤT THƯỜNG TRONG ĐIỀU KIỆN DỮ LIỆU HUẤN LUYỆN... không nằm trong tập bình thường sẽ bị coi là bất thường. Các phương pháp phát hiện lưu lượng mạng bất thường cho ADS phải đối mặt với một số vấn đề chủ yếu như sau: 1) Cần xác định tập mẫu dữ liệu không chứa bất thường để từ đó phát hiện ra những sự kiện bất thường trong các tập dữ liệu thu được từ mạng. 2) Để tăng độ chính xác, tập mẫu dữ liệu thường rất lớn với số lượng biến (thuộc tính dữ liệu) lớn dẫn đến tốn tài nguyên hệ thống, thời gian xử lý dài, tốc độ phát hiện chậm. Vấn đề là cần trích chọn đặc trưng dữ liệu sao cho giảm yêu cầu về lượng dữ liệu phải xử lý trong khi vẫn bảo đảm độ chính xác cần thiết, tốc độ xử lý và phát hiện nhanh. 3) Thực tế các tập mẫu dữ liệu bình thường vẫn có thể chứa một phần dữ liệu bất thường (gọi chung là ngoại lai) có thể làm sai lệch quá trình huấn luyện và kết quả phát hiện. Do vậy cần phương pháp loại bỏ ngoại lai khỏi tập dữ liệu huấn luyện. Đã có nhiều công trình nghiên cứu về phát hiện lưu lượng mạng bất thường đã được đề xuất tới nay, song các phương pháp phát hiện theo mô hình thống kê, khai phá dữ liệu, học máy vẫn được coi là hiệu quả và khả thi hơn (xem [5-12]). Một số nghiên cứu áp dụng thuật toán PCA (Principle Component Analysis) [13-17] đã cho thấy khả năng giảm lượng dữ liệu cần xử lý, độ chính xác tương đối cao, khả năng phát hiện nhanh. Mặc dù vậy, vấn đề phát hiện trong điều kiện dữ liệu huấn luyện có chứa ngoại lai vẫn chưa được quan tâm đúng mức. Ngoại lai là những phần tử bất thường lẫn vào tập dữ liệu dùng để huấn luyện. Những phần tử này gây ra sự sai lệch trong các tham số khi huấn luyện và ảnh hưởng đến hiệu suất hoạt động của hệ thống. Bài báo này đề xuất một phương pháp phát hiện lưu lượng mạng bất thường trong điều kiện dữ liệu huấn luyện chứa ngoại lai. Phương pháp được xây dựng dựa trên nền tảng thuật toán PCA với một số cải tiến: giảm thiểu thành phần chính thứ yếu để tính đường cơ sở, khử ngoại lai với chế độ không giám sát và phân cụm, phân cấp phát hiện. Bài báo được bố cục thành ba phần như sau. Phần II trình bày một số nghiên cứu liên quan. Phần III trình bày phương pháp đề xuất của bài báo. Phần IV là kết quả thử nghiệm. Phần V là kết luận. II. CÁC NGHIÊN CỨU LIÊN QUAN Các công trình nghiên cứu về phát hiện lưu lượng mạng bất thường tới nay chủ yếu dựa trên một nguyên lý căn bản nhất, đó là chỉ ra các đặc tính lưu lượng mạng trong điều kiện hoạt động bình thường theo một cách nào đó và xác định sự khác biệt của lưu lượng mạng trong so sánh với lưu lượng mạng bình thường đã nêu. Ranh giới của sự khác biệt đó là mức ngưỡng (Threshold) thường có biến động theo thời gian. ADS thường được xây dựng theo mô hình thống kê, khai phá dữ liệu, học máy,... [1-12]. Mục tiêu đặt ra là tạo ra một đường cơ sở (Baseline) bao gồm các mức ngưỡng biến động theo thời gian. Tuy nhiên, do số lượng dữ liệu và số thuộc tính dữ liệu lớn nên việc tạo ra đường cơ sở và so sánh với đường cơ sở vẫn là vấn đề phức tạp, phải xử lý nhiều và khó khả thi. Một số nghiên cứu tập trung vào lựa chọn đặc trưng dữ liệu nhằm giảm yêu cầu về lượng dữ liệu phải xử lý. Thuật toán phân tích thành phần chính (PCA-Principle Component Analysis) [13- 16] đã được đề xuất áp dụng nhằm chuyển đổi tập dữ liệu (p chiều) sang một miền dữ liệu mới (m chiều, với m < p) nhằm giảm số chiều dữ liệu. Trong phần này, bài báo tóm tắt một số công trình điển hình nhất [12-16] sử dụng phương pháp PCA do có liên quan đến nội dung bài. PCA là thuật toán thường sử dụng để giảm số chiều dữ liệu nhưng vẫn giữ được phần lớn đặc tính của dữ liệu. Mỗi trị riêng của thành phần chính tương ứng một phần với sự biến thiên của các thuộc tính hay biến trong dữ liệu. Trị riêng càng lớn thì càng chứa nhiều biến thiên và vector riêng tương ứng phản ánh quy luật biến thiên càng lớn nên càng quan trọng. Do vậy, những thành phần chính quan trọng nhất cần được xếp trước các thành phần không quan trọng [1-3][7][13-16]. Trong [5,12,13,14], các tác giả theo dõi sự thay đổi các giá trị thành phần chính và phát hiện sự Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 1 năm 2016 5 Nguyễn Hà Dương, Hoàng Đăng Hải thay đổi bất thường trên các thành phần chính nhất định. Các thành phần chính (Principal Component – PC) có thể phân chia thành những thành phần chủ yếu phản ánh quy luật biến thiên của lưu lượng y (m) trong trạng thái bình thường của hệ thống và những thành phần dư thừa phản ánh sự biến thiên không theo quy luật y (p-m). Trong [5,12], độ lớn của phần dư tái tạo tương ứng với y (p-m) được phân tích từ đó phát hiện ra những dấu hiệu bất thường dựa trên mức ngưỡng. Một cách tương tự là tính khoảng cách Euclidean giữa dữ liệu chuẩn hóa z và dữ liệu tái tạo từ những thành phần chính y (m) [13]. Tuy nhiên sự tái tạo lại z từ những thành phần chính y (m) làm tăng mức độ xử lý của hệ thống. Trong [14], khoảng cách Mahalanobis dựa trên thành phần chính chủ yếu và thứ yếu được sử dụng để phân tích dấu hiệu bất thường. Hiệu quả của phương pháp phụ thuộc vào số lượng và tỷ lệ các PC chủ yếu và thứ yếu. Tác giả trong [15] sử dụng phương pháp Histogram. Phương pháp này đơn giản hơn song đòi hỏi lượng dữ liệu phải lớn để đạt được tỷ lệ phát hiện đúng cao. Công trình [16] đề xuất giảm bớt tập thuộc tính dữ liệu nhằm giảm độ phức tạp của thuật toán phát hiện. Qua nghiên cứu các công trình liên quan, ta rút ra một số nhận xét như sau: 1) Các nghiên cứu áp dụng PCA đều sử dụng cách so sánh biến thiên của lưu lượng với một đường cơ sở, song giảm được dữ liệu cần xử lý qua việc biến đổi sang miền dữ liệu chỉ sử dụng các thành phần chính. Tuy nhiên, sử dụng các thành phần chính nào vẫn là vấn đề chưa được nghiên cứu cụ thể. Các thành phần chính được chia thành các thành phần chính chủ yếu (những thành phần chính đầu tiên, có trị riêng lớn nhất) và thành phần chính thứ yếu (những thành phần chính cuối có trị riêng nhỏ nhất). 2) Các thành phần chính chủ yếu có xu hướng phản ánh sự biến thiên bình thường của lưu lượng. Trong điều kiện dữ liệu huấn luyện sạch, bất thường có xu hướng xuất hiện ở các thành phần chính thứ yếu. Điều này phù hợp với phương pháp phân tích phần dư. Do vậy, lựa chọn các thành phần chính phù hợp có thể mang lại hiệu quả phát hiện. 3) PCA rất nhạy cảm với dữ liệu ngoại lai. Do đó, cần giảm thiểu tác động của ngoại lai, hoặc cần lọc bớt dữ liệu đầu vào ngoại lai cho tập huấn luyện. PCA cũng có thể phát sinh ngoại lai không mong muốn. Vì vậy, cần đánh giá tác động của các thành phần chính đến việc phát sinh ngoại lai, từ đó lựa chọn thành phần chính hoặc các đặc tính lưu lượng mạng cần thiết để giảm tác động của yếu tố này. III. PHƯƠNG PHÁP DPCA A. Cơ sở thuật toán PCA PCA là phương pháp chuyển đổi tập dữ liệu (p chiều) sang một miền dữ liệu mới (m chiều, với m < p) nhằm giảm số chiều dữ liệu [13-16]. Thuật toán PCA cơ sở như sau. Gọi X là một tập dữ liệu gồm n quan sát với p biến X1, X2, Xp được tổ chức thành ma trận nxp (n hàng, p cột). Mỗi biến biểu thị một thuộc tính của dữ liệu ban đầu. Mỗi quan sát x=(x1, x2,,xp) T chứa p thuộc tính khác nhau. Gọi R là ma trận tương quan pxp tính được từ X, (lk, ek) là các cặp trị riêng và vector riêng của R được sắp xếp theo thứ tự giảm dần của trị riêng (l1³ l2³ ³ lp>0). Phép biến đổi của thuật toán PCA cơ sở là sự chuyển các điểm dữ liệu ban đầu sang kết quả thành phần chính. Khi đó thành phần chính thứ i của một quan sát x sẽ là T 1 1 2 2 ...i i i i ip py e z e z e z e z= = + + + (1) trong đó: yi là thành phần chính thứ i của quan sát x ban đầu, i=1p, ei=(ei1,ei2,,eip) T là vectơ riêng thứ i, z = (z1, z2,,zp) T là vectơ đã chuẩn hóa của x, zk của biến thứ k được tính theo công thức k k k k x x z s − = (2) với kx là giá trị trung bình, sk là phương sai của biến thứ k, k = 1p. Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG6 Số 1 năm 2016 PHÁT HIỆN LƯU LƯỢNG MẠNG BẤT THƯỜNG TRONG ĐIỀU KIỆN DỮ LIỆU HUẤN LUYỆN... Bài toán phát hiện bất thường với PCA được đưa về bài toán tính toán khoảng cách d giữa dữ liệu chuẩn hóa z và dữ liệu tái tạo từ các thành phần chính yi của các quan sát. Khoảng cách được so sánh với mức ngưỡng để xác định tập dữ liệu là bình thường hay bất thường. Nhiều phương pháp tính khoảng cách có thể được áp dụng, điển hình như: Euclidean, Manhattan [13], Mahalanobis [14], Việc xử lý một lượng dữ liệu lớn nhiều biến sẽ làm tăng thời gian xử lý dữ liệu và tốn tài nguyên của hệ thống. Vì vậy, áp dụng thuật toán PCA có thể giảm thiểu số chiều không cần thiết và tăng hiệu quả tận dụng tài nguyên hệ thống. B. Phương pháp dPCA Trong phần này, bài báo đề xuất phương pháp dPCA (Distance-based anomaly detection method in PCA subspace) trên nền tảng thuật toán PCA cơ sở với một số cải tiến: giảm thiểu thành phần chính thứ yếu để tính đường cơ sở, khử ngoại lai với chế độ không giám sát và phân cụm, phân cấp phát hiện. Về cơ bản, phương pháp dPCA cũng sử dụng thuật toán PCA cơ sở để giảm số chiều dữ liệu (p chiều), song giữ phần lớn đặc tính dữ liệu ban đầu bằng cách giữ lại m thành phần chính. Tương tự [18], ta chia m thành phần chính thành r thành phần chính chủ yếu và m=p-q+1 thành phần chính thứ yếu. Từ kết quả nghiên cứu đã nêu ở phần 2, không nhất thiết phải tính khoảng cách cho toàn bộ các thành phần chính. Những dữ liệu bất thường có xu hướng xuất hiện ở những thành phần chính cuối cùng (thành phần chính thứ yếu). Theo cách này, ta chỉ cần quan sát dữ liệu ở các thành phần chính thứ yếu (miền con của PCA), qua đó giảm thiểu được lượng dữ liệu cần xử lý. Các kết quả ở phần thử nghiệm chứng minh phương pháp này vẫn bảo đảm độ chính xác cần thiết trong khi giảm thiểu được độ phức tạp, tăng được tốc độ xử lý. Công thức tính khoảng cách để phát hiện dấu hiệu bất thường trong miền con PCA trong phương pháp dPCA được đề xuất như sau: q c i i i r d w y = = ∑ (3) trong đó: 1 r q p≤ < ≤ , wi là trọng số cho thành phần chính yi, d là độ lệch hình thành từ các thành phần chính yi và trọng số tương ứng wi, c là số mũ của yi. c là hằng số, có thể là số thực hoặc số nguyên. wi, c được lựa chọn dựa trên thực nghiệm. Một giá trị ngưỡng dN được xác định dựa vào hàm phân bố tích lũy thực nghiệm của độ lệch d (empirical cumulative distribute function - ecdf) và được tính trên dữ liệu huấn luyện. Khi có một quan sát mới, giá trị d sẽ được tính dựa trên những tham số huấn luyện như sau: Chuẩn hóa dữ liệu dựa trên giá trị trung bình và căn bậc hai của phương sai cho mỗi thuộc tính (biến đầu vào). • Sử dụng vectơ riêng để chuyển mỗi quan sát mới sang các trục của miền con PCA. • Tính giá trị d dựa trên công thức (3) và so sánh với ngưỡng đã thiết lập dN khi huấn luyện. Nếu d > dN, quan sát mới được coi là bất thường. Ngược lại quan sát đó được coi là bình thường. Phương pháp dPCA có thể hoạt động trong hai chế độ: bán giám sát và không giám sát. dPCA trong chế độ không giám sát không yêu cầu huấn luyện mà phát hiện trực tiếp với dữ liệu có được. Chế độ này có yêu cầu bổ sung là lượng dữ liệu bình thường phải lớn hơn nhiều so với lượng dữ liệu bất thường. Nếu điều này bị vi phạm sẽ không thể tạo được trạng thái bình thường của mạng để so sánh và phát hiện ra những sự khác biệt của các quan sát có dấu hiệu bất thường. dPCA chế độ bán giám sát hoạt động theo hai pha: • Pha huấn luyện (Training phase): Pha này hoạt động ngoạ ... ần thiết phải thực hiện tính cả hai khoảng cách và so sánh hai mức ngưỡng song song như trong nghiên cứu của Shyu [14]. Theo công thức (6), khi wi =1/ il , c = 1: Các kết quả phát hiện cũng tương đương như công thức (5) nhưng công thức (6) đơn giản hơn vì không phải tính bình phương cho mỗi thành phần chính trong d. Theo công thức (7), khi wi =1/ il , c = 1: Các kết quả phát hiện cũng tương đương như công thức (5), (6) nhưng không phải tính căn bậc hai của trị riêng trong pha huấn luyện. Theo công thức (8), khi wi = 1, c = 1: Đây là công thức đơn giản nhất nhưng kết quả phát hiện cũng tương đương như các công thức (4), (5), (6), (7) khi sử dụng các thành phần chính thứ yếu. Với k = 14, cũng giống như công thức (4), sự chênh lệch về giá trị của các thành phần chính làm giảm tỷ lệ TPR. Hình 1. Đồ thị ROC của d biểu diễn quan hệ giữa tỷ lệ FPR và TPR với dữ liệu huấn luyện sạch khi wi =1, c=1, k=3 Hình 1 là đồ thị ROC [23] với khoảng cách d biểu thị mối quan hệ giữa tỷ lệ cảnh báo sai (FPR) trên trục hoành và tỷ lệ cảnh báo đúng (TPR) trên trục tung khi w=1, c=1, k=3. Điểm hoàn hảo là điểm góc trên bên trái với tọa độ (0,1) khi TPR là 100% và FPR là 0%. Trên thực tế không thể đạt được kết quả như vậy. Việc lựa chọn điểm tối ưu rất khó thực hiện được vì điểm này liên tục thay đổi với lưu lượng mạng. Trong các thử nghiệm, bài báo lựa chọn mức ngưỡng cố định theo hàm phân bố tích lũy thực nghiệm với tỷ lệ sai số ước tính (FPR) trong khoảng 2-5%. Từ kết quả thử nghiệm trên có thể thấy, trong điều kiện dữ liệu huấn luyện sạch, có thể lựa chọn các thành phần chính thứ yếu với k = 2 hoặc k = 3 để giảm số chiều dữ liệu. Khi dữ liệu huấn luyện của dPCA bán giám sát chứa ngoại lai, kết quả TPR rất thấp (bảng III). Số lượng kết nối trước khi loại bỏ ngoại lai là nhỏ hơn hoặc bằng 10000. Số lượng ngoại lai trong dữ liệu huấn luyện là 10% trên tổng số kết nối bình thường.Lưu ý là TPR cho biết khả năng phát hiện bất thường trên tổng số bất thường được thử nghiệm. Nếu khả năng phát hiện bất thường thấp sẽ làm cho hiệu quả của phương pháp đề xuất suy giảm. Ngoại lai làm ảnh hưởng đến các thông số huấn luyện và làm sai lệch kết quả phát hiện. Bảng III. Kết quả phát hiện của dPCA trước khi loại bỏ ngoại lai trong dữ liệu huấn luyện wi c k PR (%) TPR (%) FPR (%) TA (%) 1 2 3 98.9 4.66 1 35.7 1/ il 2 14 97.7 16.4 0.8 43.4 1/ il 1 14 98.2 16 0.6 43.2 Bảng IV. Kết quả phát hiện và loại bỏ ngoại lai của dPCA ở chế độ không giám sát wi c k PR (%) TPR (%) FPR (%) TA (%) 1/ il 2 14 50 100 11.1 90 1/ il 1 14 49.7 99.3 11.1 89.9 1/ il 1 14 49.3 98.6 11.2 89.7 Bảng IV thống kê tỷ lệ phát hiện với phương pháp dPCA chế độ không giám sát (trước khi huấn luyện) với mục đích chính là loại bỏ ngoại Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 1 năm 2016 13 Nguyễn Hà Dương, Hoàng Đăng Hải lai cho dữ liệu huấn luyện. Tất cả những ngoại lai phát hiện được sẽ bị loại bỏ tập dữ liệu huấn luyện của chế độ bán giám sát. Ngưỡng của d được đặt bằng 75% đến 80% của hàm phân bố tích lũy thực nghiệm. Chế độ không giám sát của dPCA vẫn có thể sử dụng để phát hiện bất thường khi cần thiết. Bảng V. Kết quả phát hiện của dPCA bán giám sát sau khi loại bỏ ngoại lai trong dữ liệu huấn luyện wi c k PR (%) TPR (%) FPR (%) TA (%) 1 2 3 78.9 99.1 5.1 95.6 1/ il 2 3 73.2 97.4 6.9 93.8 1/ il 2 14 78 100 5.4 95.4 1/ il 1 3 75.2 100 6.4 94.6 1/ il 1 3 84 98.3 3.6 96.7 1/ il 1 14 76.6 100 6 95 1 1 3 84.3 93.3 3.4 96.1 Bảng V là kết quả phát hiện của dPCA chế độ bán giám sát sau khi đã loại bỏ ngoại lai. Hình 3 là đồ thị ROC của d sau khi khử ngoại lai trong dữ liệu huấn luyện với dPCA chế độ không giám sát khi wi =1, c=1, k=3. Hình 2. Đồ thị ROC của d sau khi khử ngoại lai với dPCA chế độ không giám sát trong dữ liệu huấn luyện với wi =1, c=1, k=3 Bảng VI thống kê kết quả phát hiện và loại bỏ ngoại lai bằng K-means. Bảng VII là kết quả phát hiện sau khi loại bỏ ngoại lai bằng K-means trong dữ liệu huấn luyện cho chế độ bán giám sát của dPCA. Hình 4 là đồ thị ROC của d sau khi khử ngoại lai trong dữ liệu huấn luyện với K-means khi wi = 1/li, c = 1, k = 3. Bảng VI. Kết quả phát hiện và loại bỏ ngoại lai bằng K-Means trong dữ liệu huấn luyện Test PR(%) TPR (%) FPR (%) TA (%) 1 42.1 100 15.2 86.3 2 39.6 100 16.9 84.8 3 44.2 98.5 14 87.4 4 30.5 100 25.3 77.1 5 34.7 83.5 17.5 82.6 Bảng VII. Kết quả phát hiện của dPCA sau khi loại bỏ ngoại lai bằng K-Means trong dữ liệu huấn luyện wi k PR (%) TPR (%) FPR (%) TA (%) 2 3 79.7 100 15.7 90 2 3 77.5 100 18.3 88.8 2 14 77.7 100 18.1 88.88 1 3 79.8 100 15.6 90.3 1 14 79.6 84.3 13.4 85.7 1 3 91.8 100 5.6 96.6 1 14 86.4 100 9.9 93.9 1 3 77.8 97.5 17.5 88.3 Hình 4. Đồ thị ROC của d sau khi khử ngoại lai dữ liệu huấn luyện với K-means wi =1/ il , c=1, k=3 Sự chính xác của dPCA chế độ bán giám sát phụ Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG14 Số 1 năm 2016 PHÁT HIỆN LƯU LƯỢNG MẠNG BẤT THƯỜNG TRONG ĐIỀU KIỆN DỮ LIỆU HUẤN LUYỆN... thuộc chất lượng dữ liệu huấn luyện bao gồm số lượng ngoại lai vẫn còn lẫn vào dữ liệu huấn luyện, mức độ biến thiên của lưu lượng mạng trong điều kiện bình thường và sự khác biệt giữa các kết nối bình thường với bất thường được tính trong d. Những kết quả thống kê ở trên đạt được trong điều kiện dữ liệu mạng bình thường khác biệt đáng kể với điều kiện bất thường. Tuy nhiên, có những khoảng thời gian sự khác biệt này bị thu hẹp làm cho kết quả phát hiện có sai số lớn. Bảng VIII là kết quả thống kê của dPCA với dữ liệu bình thường có đột biến trong một ngày với tập dữ liệu Kyoto Honeypot. Bảng VIII. Kết quả phát hiện của dPCA khi dữ liệu bình thường có sự thay đổi đột biến wi c k PR (%) TPR (%) FPR (%) TA (%) 1 2 3 94.4 54.4 2 81.3 li/1 2 3 94.5 55.5 2 81.78 li/1 2 14 95 65.4 2.1 85.4 1/ il 1 3 94.3 53.9 2 81.2 1/ il 1 14 95.6 70.3 2 87.4 1 1 3 94.3 54 2 81.2 Kết quả bảng VIII cho thấy, tỷ lệ TPR của k = 14 cao hơn k = 3. Lý do là vì bất thường trong trường hợp này không chỉ xuất hiện ở PC thứ yếu mà cả trong các thành phần chính khác. Do vậy bên cạnh dPCAL1, sử dụng dPCAL2 với nhiều thành phần chính hơn (k = 14) để phát hiện bất thường là cần thiết. Để có kết quả TPR tốt hơn, ta có thể thay đổi mức ngưỡng với giá trị phù hợp với đồ thị ROC của d. Thí dụ với trường hợp wi=1/li, c=1, k=14 (đồ thị ROC ở Hình 5), nếu hạ mức ngưỡng xuống 95% hàm ecdf thì kết quả sẽ là PR = 91.8%, TPR = 91%, FPR = 5%, TA = 93.5%. Tương tự với trường hợp wi=1/ il , c=1, k=14 nếu hạ mức ngưỡng xuống 92% của hàm ecdf thì kết quả sẽ là PR = 87.5%, TPR = 90.2%, FPR = 8%, TA = 91.3%. Nhưng như đã trình bày ở phần trên, chọn mức ngưỡng phù hợp với điểm tối ưu giữa TPR và FPR là rất khó vì lưu lượng mạng thực tế làm cho điểm này thay đổi thường xuyên. Một mức ngưỡng cho kết quả tốt với thời điểm này lại không phù hợp với thời điểm khác. Một giải pháp cho vấn đề này là coi những dữ liệu bình thường gây ra đột biến lưu lượng cũng là ngoại lai. Từ đó, thay vì đặt lại mức ngưỡng cho d, có thể áp dụng phương pháp khử ngoại lai đã trình bày ở trên để làm sạch dữ liệu huấn luyện. Hinh 5. Đồ thị ROC của d với wi =1/ il , c=1, k=14 Bảng IX. Kết quả phát hiện tốt hơn (TPR) của dPCA so với Bảng VIII khi khử ngoại lai trong dữ liệu huấn luyện wi c k PR (%) TPR (%) FPR (%) TA (%) 1 2 3 81.2 92.6 13.2 89 1/ il 1 3 81.7 93.5 13 89.5 1/ il 1 14 79.7 83.9 13.2 85.7 li/1 1 3 86.6 99.8 9.5 94.1 li/1 1 14 80 93 14.4 88.5 1 1 3 80.1 91.8 14.1 88.17 Kết quả phát hiện của dPCA sau khi khử những ngoại lai này được thống kê Bảng IX. Như vậy, việc khử ngoại lai có thể áp dụng cho cả trường hợp dữ liệu bình thường nhưng gây ra sự thay đổi đột biến về lưu lượng hoặc không giống với đại đa số dữ liệu bình thường khác. Các kết quả thử nghiệm cho thấy, việc áp dụng dPCA với dPCAL1 và dPCAL2 chấp nhận được trong thực tế. Đây không phải là những kết quả phát hiện tốt nhất mà phương pháp đề xuất đạt Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 1 năm 2016 15 Nguyễn Hà Dương, Hoàng Đăng Hải được nhưng các tác giả đưa vào bài báo để đảm bảo tính khách quan với sự thay đổi của lưu lượng mạng. Những biến động trong trạng thái bình thường của lưu lượng mạng và sự phức tạp của sự kiện bất thường, dPCAL1 có thể không phát hiện được hết những bất thường có thể xảy ra. Vì thế dPCAL2 là giải pháp hỗ trợ cho dPCAL1 khi bất thường xuất hiện tại những thành phần chính khác. V. KẾT LUẬN Các phương pháp phát hiện lưu lượng mạng bất thường khó và phức tạp hơn nhiều so với phương pháp phát hiện dựa trên dấu hiệu truyền thống do không biết trước mẫu dấu hiệu. Ngoài ra, có nhiều vấn đề thách thức như cần mô hình hóa trạng thái bình thường, trích chọn đặc trưng dữ liệu sao cho giảm độ phức tạp trong khi vẫn bảo đảm độ chính xác và tốc độ phát hiện, loại bỏ ngoại lai gây sai lệch trong dữ liệu huấn luyện. Kết quả nghiên cứu cho thấy có thể áp dụng thuật toán PCA cơ sở để chuyển dữ liệu sang miền con PCA nhằm giảm chiều dữ liệu nhằm khắc phục nhược điểm trên. Việc lựa chọn các thành phần chính chủ yếu và thứ yếu giúp giảm độ phức tạp, tăng được độ chính xác khi cần. Bài báo đã đề xuất phương pháp dPCA cải tiến từ PCA cơ sở với phương pháp tính khoảng cách mới là tổng hợp cho các công thức tính trước đây. Khi dữ liệu chuyển sang miền con PCA, dPCA có thể phát hiện một số loại ngoại lai hiệu quả hơn. dPCA dùng phương pháp tính khoảng cách mới để chọn đường cơ sở và phân cụm để khử ngoại lai trong dữ liệu huấn luyện. Kết quả thử nghiệm cho thấy sự thay đổi độ chính xác của phương pháp đề xuất với những tham số khác nhau của thuật toán tính khoảng cách cũng như số lượng thành phần chính tùy theo yêu cầu thực tế. Kết quả phân tích và thử nghiệm cũng cho thấy dPCA phát hiện được lưu lượng mạng bất thường trong điều kiện dữ liệu huấn luyện chứa ngoại lai. Đây cũng là một đóng góp của bài so với các công trình nghiên cứu trước đây. TÀI LIỆU THAM KHẢO [1]. M.Bhuyan, D.Bhattacharyya, J.Kalita, “Network anomaly detection: Methods, systems and tools,” IEEE Communications Surveys Tutorials, vol. 16, no. 1, pp. 303- 336, 2014 [2]. S. Myers, J. Musacchio, N. Bao, “Intrusion Detection Systems: A Feature and Capability Analysis,” Tech. Report UCSC-SOE-10-12, Jack Baskin School of Engineering, 2010. [3]. K. Wankhade, S. Patka, R. Thool, “An Overview of Intrusion Detection Based on Data Mining Techniques,” Proc. of IEEE CSNT, 2013. [4]. C. Kacha, K. A. Shevade, “Comparison of Different Intrusion Detection and Prevention Systems,” Intl. Journal of Emerging Technology and Advanced Engineering, vol. 2, no.12, pp.243-245, 2012 [5]. A. Lakhina, M. Crovella, and C. Diot, “Diagnosing network-wide traffic anomalies,” Proc. of ACM SIGCOMM, pp. 219–230, 2004 [6]. A. Patcha, J.M. Park, “An Overview of Anomaly Detection Techniques: Existing Solutions and Latest Technological Trends” The International Journal of Computer and Telecom-munications Networking, vol. 51, no. 12, pp. 3448-3470, Aug. 2007. [7]. W. Zhang, Q. Yang, Y. Geng, “A Survey of Anomaly Detection Methods in Networks,” Proc. of International Symposium on Computer Network and Multimedia Technology, Jan. 2009, pp. 1–3. [8]. M. Thottan, G. Liu, C. Ji, Anomaly Detection Approaches for Communication Networks: Algorithms for Next Generation Networks, G. Cormode, Ed. London: Springer, 2010, pp. 239-261. [9]. V. Jyothsna, V. V. Rama Prasad, K. M. Prasad, “A Review of Anomaly based Intrusion Detection Systems,” International Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG16 Số 1 năm 2016 PHÁT HIỆN LƯU LƯỢNG MẠNG BẤT THƯỜNG TRONG ĐIỀU KIỆN DỮ LIỆU HUẤN LUYỆN... Journal of Computer Applications, vol. 28, no. 7, pp. 28-34, 2011. [10]. A. Jain, B. Verma, J. L. Rana, “Anomaly Intrusion Detection Techniques: A Brief Review,” International Journal of Scientific & Engineering Research, vol. 5, no. 7, pp. 17-23, 2014 [11]. Y. Bouzida. Efficient intrusion detection using principal component analysis. Proc. of 7th World Multiconference on Systemics, Cybernetics and Informatics, 2003. [12]. A. Lakhina, M. Crovella, and C. Diot, “Mining anomalies using traffic feature distributions,” Proc. of ACM SIGCOMM, 2005. [13]. W. Wang and R. Battiti, “Identifying Intrusions in Computer Networks with Principal Component Analysis,” Proc. of IEEE ARES, 2006. [14]. M. Shyu, S. Chen, K. Sarinnapakorn, L. Chang. Principal Componentbased Anomaly Detection Scheme. Foundations and Novel Approaches in Data Mining, vol. 9, pp. 311- 329, 2006. [15]. D. Brauckhoff, K. Salamatian, M. May, “Applying PCA for Traffic Anomaly Detection: Problems and Solutions,” Proc. of IEEE INFOCOM, 2009. [16]. L. Mechtri, F. D. Tolba, N. Ghoualmi, “Intrusion detection using principal component analysis,” Proc. of IEEE ICESMA, 2010. [17]. L. Ertoz, E. Eilertson, A. Lazarevic, P. Tan, V. Kumar, and J. Srivastava, “Data Mining- Next Generation Challenges and Future Directions,” MIT Press, 2004 [18]. Nguyễn Hà Dương, Hoàng Đăng Hải, “Phát hiện lưu lượng mạng bất thường sử dụng phương pháp PCA trong lựa chọn đặc tính dữ liệu,” Chuyên san các công trình nghiên cứu về điện tử, viễn thông và công nghệ thông tin, Tạp chí Khoa học công nghệ, Tập 53, Số 2C, 2015, tr.52-64. [19]. M. Tavallaee, E. Bagheri, W. Lu, A. A. Ghorbani. A Detailed Analysis of the KDD CUP 99 Data Set., Proc. of IEEE CISDA 2009. [20]. The KDD99 cup data, databases/kddcup 99/kddcup99.html, 1999. [21]. The NSL-KDD data, nsl-kdd, 2009. [22]. J. Song, H. Takakura, Y. Okabe, “Description of Kyoto University Benchmark Data,” 2006, pp. 1-3. ( kura.com/Kyoto data/BenchmarkData-Description-v5.pdf). [23]. https://vi.wikipedia.org/wiki/Duong_cong_ ROC NETWORK TRAFFIC ANOMALY DETECTION |WITH OUTLIER IN TRAINING DATA Abstract: Network traffic anomaly detection has many challenges: adjust threshold, extract data features, reduce data dimension, precision parameters, etc. Besides that, outliers can significantly impact the performance of detection. This paper describes the issues of network traffic anomaly detection with outliers in training data and proposes an enhanced method (called dPCA) based on principal component analysis algorithm. The experiment was evaluated witth Kyoto Honeypot dataset. Nguyễn Hà Dương, KS (2001), ThS. (2003) tại ĐH Bách Khoa Hà Nội. Giảng viên Khoa CNTT, Trường ĐH Xây dựng Hà Nội. Lĩnh vực nghiên cứu: Mạng và hệ thống thông tin, an ninh mạng, viễn thông. Hoàng Đăng Hải, PGS.TSKH., TS. (1999), TSKH. (2003) tại Đại học Tổng hợp Kỹ thuật Ilmenau, CHLB Đức. Học viện Công nghệ Bưu chính Viễn thông. Lĩnh vực nghiên cứu: Chất lượng dịch vụ, giao thức truyền thông, hiệu năng mạng, mạng và hệ thống thông tin, an ninh mạng, viễn thông.
File đính kèm:
- phat_hien_luu_luong_mang_bat_thuong_trong_dieu_kien_du_lieu.pdf