Luận án Nghiên cứu đề xuất phương pháp phân tích và phát hiện lưu lượng bất thường trên mạng internet

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

MỤC LỤC iii

DANH MỤC THUẬT NGỮ VIẾT TẮT vii

DANH MỤC CÁC KÝ HIỆU ix

DANH MỤC CÁC HÌNH VẼ x

DANH MỤC CÁC BẢNG xii

MỞ ĐẦU 1

1. Yêu cầu kiểm soát lưu lượng mạng Internet 1

2. Lưu lượng mạng bất thường và nhu cầu phát hiện 3

a. Khái niệm về lưu lượng mạng bất thường 3

b. Nguyên nhân gây ra lưu lượng mạng bất thường 4

c. Vấn đề phân tích và phát hiện lưu lượng mạng bất thường 6

d. Phạm vi luận án 7

3. Những đóng góp chính của luận án 8

4. Cấu trúc của luận án 10

CHƢƠNG 1 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN 11

1.1. Thu thập lưu lượng mạng Internet 11

1.1.1. Các đặc tính của lưu lượng mạng 11

1.1.2. Các phương pháp thu thập lưu lượng Internet 14

1.1.2.1. Thu thập mức gói tin 14

1.1.2.2. Thu thập mức luồng tin 15

1.2. Tổng quan về các phương pháp, mô hình phân tích và phát hiện lưu lượng bất

thường 15

1.2.1. Nhóm dựa vào thống kê 15

1.2.2. Nhóm dựa vào khai phá dữ liệu và học máy 17

1.2.3. Nhóm dựa vào tri thức 20

1.2.4. Tóm tắt ưu nhược điểm của các nhóm phương pháp 20

1.3. Phương pháp phân tích và phát hiện lưu lượng bất thường dựa trên PCA 22

1.3.1. Cơ sở của phương pháp PCA 22

pdf144 trang | Chia sẻ: honganh20 | Ngày: 16/03/2022 | Lượt xem: 378 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Luận án Nghiên cứu đề xuất phương pháp phân tích và phát hiện lưu lượng bất thường trên mạng internet, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
cách với tất cả các thành phần chính (từ 1 đến p). Để tính khoảng cách có thể không cần toàn bộ PC (ví dụ: chỉ cần dùng PC thứ yếu). Vì vậy công thức (2.12) trở thành: q c i i i r d w y   (2.13) 49 Trong đó: 1 ≤ r ≤ q ≤ p Công thức (2.13) là thuật toán tính khoảng cách tổng quát được đề xuất trong luận án. r và q được chọn một cách linh hoạt tùy vào trường hợp trong dPCA: - Nếu tính khoảng cách với tất cả PC, ta có r=1 và q=p như công thức (2.12). - Nếu tính cho m PC đầu (PC chủ yếu), công thức (2.13) trở thành: 1 q c i i i d w y   (2.14) Trong đó: q= m < p - Nếu tính cho k PC cuối (PC thứ yếu), công thức (2.13) trở thành: p c i i i r d w y   (2.15) Trong đó: 1< r <p ; q=p ; k=( p-r+1) - Bên cạnh đó i, r, q có thể thay đổi với bất kỳ PC nào trong khoảng 1 đến p, ví dụ tính khoảng cách từ r đến q cho các PC nằm giữa 1 đến p. Trong trường hợp muốn phát hiện bất thường trên một PC đơn lẻ, ta có i=r=q. Công thức tổng quát nêu trên được xây dựng từ công thức Minkowski đã được luận án bổ sung thêm trọng số wi. Trong miền con PCA, nếu chọn tham số thích hợp, ta sẽ thu được những công thức tính khoảng cách Euclidean, Euclidean trọng số, Mahalanobis. Ngoài ra, với những tham số khác, luận án sẽ chứng tỏ rằng có thể áp dụng để phát hiện bất thường trong miền con PCA với hiệu quả tương đương. Trong phần sau đây, luận án sẽ chỉ ra các công thức tính khoảng cách với phương pháp PCA trong nhiều công trình nghiên cứu trước đây là các trường hợp riêng của công thức tính khoảng cách (2.13). 2.4.1. So sánh cách tính khoảng cách trong các phương pháp PCA điển hình trước đây với công thức đề xuất Trong phần này, luận án so sánh cách tính khoảng cách của các phương pháp PCA của những công trình điển hình đã có bao gồm: phương pháp phân tích phần dư, phương pháp dựa trên thống kê T2. 2.4.1.1. hương pháp ph n tích phần dư 50 Như đã trình bày trong chương 1 (mục 1.3.2.1), phương pháp phân tích phần dư của Lakhina trong các công trình điển hình [33, 36] tập trung vào việc phân tích độ lớn của ||z(A)|| 2 để phát hiện bất thường. Theo Wang [72, 73], thực chất của phương pháp này là tính bình phương khoảng cách Eulidean giữa z và z(N) như sau: 2 ( ) ( ) ( )( ) ( ) T A N Nd z z z z z    Theo [55] khi chuyển sang miền con PCA, công thức trên trở thành: ) 2 2 ( A p i i r yd z    Do đó, xét trong miền con PCA, thực chất khoảng cách của phương pháp phân tích phần dư của những nghiên cứu đã có là phép tính bình phương khoảng cách Euclidean áp dụng với các PC thứ yếu. Như vậy công thức sử dụng trong phương pháp phân tích phần dư của các công trình này tương đương với trường hợp riêng của công thức (2.13) do luận án đề xuất áp dụng c=2 và wi=1. Điểm khác biệt là thay vì chuyển đổi ngược các PC của vùng bình thường S(N) để thu được z(N) và thực hiện tính d, luận án tính trực tiếp d trong miền con PCA. 2.4.1.2. hương pháp sử dụng thống kê T2 Như đã trình bày trong chương 1 (mục 1.3.2.2), công thức tính thống kê T2 trong các nghiên cứu của Lakhina và Shyu [34, 36, 58] cũng là công thức tính khoảng cách Mahalanobis. Trong miền con PCA, công thức tính khoảng cách được áp dụng là: 22 2 2 1 2 1 1 2 ... p pi i i p yy y y d          (2.16) Như vậy công thức sử dụng tính thống kê T2 trong các công trình đã khảo sát là trường hợp riêng của công thức (2.13) do luận án đề xuất áp dụng với tham số c=2, wi=1/λi. 2.5. Phƣơng pháp dPCA [CT7, CT8] Luận án đề xuất phương pháp dPCA (Distance-based anomaly detection method in PCA subspace) là phương pháp phân tích và phát hiện bất thường dựa trên khoảng 51 cách trong miền con PCA. Phương pháp dPCA sử dụng công thức tính khoảng cách (2.13) đã được trình bày ở trên. Việc áp dụng các tham số nào trong dPCA được trình bày ở phần tiếp theo. 2.5.1. Lựa chọn các tham số để tính khoảng cách trong dPCA Bằng cách thay đổi các trọng số wi và tham số c, ta có thể thiết lập linh hoạt các tham số cho công thức tính khoảng cách (2.13). Chọn trọng số thích hợp có thể làm giảm sự khác biệt về mức độ biến thiên theo phương sai của mỗi PC trong khoảng cách d. Về lý thuyết có thể thiết lập những tham số khác nhau trong công thức (2.13). Nhưng hiện tại nghiên cứu sinh mới chỉ có thể áp dụng c=2 và c=1 cùng với trọng số wi tương ứng. Những khoảng cách đề xuất với c=1 là đóng góp mới của luận án trong dPCA. Trị riêng i đóng vai trò là phương sai tương ứng với PC thứ i trong miền con PCA. Giá trị của các yi sẽ quyết định quan sát đó là bất thường hay không. Giá trị yi của một PC với trị riêng nhỏ có thể coi là bất thường tại PC đó nhưng cũng có thể chỉ hơn hoặc bằng giá trị yj bình thường (không phải bất thường) của PC có j lớn hơn. Khi lấy tổng của |yi| và |yj| trong công thức tính khoảng cách, giá trị bất thường trong yi bị mất đi. Vì vậy có thể dùng wi tính theo i để làm giảm sự khác biệt về độ lớn giữa các yi tại những PC có sự chênh lệch đáng kể về trị riêng. Ngoài ra, có thể phân tích giá trị của từng yi để phát hiện bất thường trong mỗi PC đơn lẻ (trường hợp này khoảng cách chỉ tính cho một PC). Khi thay đổi wi trong công thức (2.13), các khoảng cách với wi=1 được gọi là khoảng cách không trọng số. Khi wi 1 là khoảng cách có trọng số.  Đặt c=2, công thức (2.13) trở thành: 2 q i i i r d w y   (2.17) - Đặt wi=1, công thức (2.17) trở thành 52 2 2 2 2 1 ... q i r r q i r d y y y y       (2.18) Đây chính là công thức tính bình phương khoảng cách Euclidean trong miền con PCA với (q-r+1) PC. Công thức này tương đương với công thức được áp dụng trong phương pháp phân tích phần dư của các nghiên cứu đã khảo sát trong chương 1 (mục 1.3.2.1). - Trường hợp trọng số wi 1: Về lý thuyết có thể chọn nhiều giá trị wi khác nhau nhưng cách thường dùng là chuẩn hóa theo phương sai. Do trị riêng λi đóng vai trò là phương sai trong miền con PCA nên có thể đặt wi=1/λi . Như vậy: 22 2 2 2 2 ... q qi r i r i r q yy y y d          (2.19) Đây chính là công thức tính bình phương khoảng cách Euclidean trọng số và đồng thời là bình phương khoảng cách Mahalanobis trong miền con PCA. Điều này bởi vì PCA đã làm mất đi tính tương quan giữa các thành phần chính. Công thức (2.19) là công thức đã được áp dụng trong các nghiên cứu đã khảo sát trong chương 1 (mục 1.3.2.2).  Đặt c=1, công thức (2.13) trở thành: q i i i r d w y   (2.20) Những công thức với c=1 là đóng góp mới của luận án so với những công trình dựa trên phương pháp PCA đã có. - Nếu wi =1 công thức (2.20) trở thành: 1 ... q i r r q i r d y y y y       (2.21) Đây chính là công thức tính khoảng cách Manhattan trong miền con PCA. - Trường hợp trọng số wi 1: 53 Do trị riêng đóng vai trò là phương sai trong miền con PCA nên có thể đặt trọng số của |yi| bằng căn bậc hai của trị riêng tương ứng. Như vậy đặt 1/i iw  , công thức (2.20) trở thành: 2 2 ... q qi r i r i r q yy y y d          (2.22)  Nhận xét: - wi=1 phù hợp khi tính d với các thành phần chính khi sự chênh lệch giữa các trị riêng không lớn, đặc biệt là những PC thứ yếu. - wi 1 phù hợp khi tính d với các thành phần chính khi có sự chênh lệch đáng kể giữa các trị riêng. Sự chênh lệch thường nằm ở những PC chủ yếu hoặc khi dùng tất cả PC để tính khoảng cách. - Độ phức tạp của thuật toán tính khoảng cách: o Khi c=2 độ phức tạp là O(kn2) với k là số C được sử dụng, n là số lượng quan sát được tính khoảng cách. o Khi c=1 độ phức tạp là O(kn). o Như vậy, khi c=1, độ phức tạp của thuật toán tính khoảng cách giảm đi so với c=2. Do đó có thể sử dụng c=1 để giảm độ phức tạp trong tính khoảng cách của dPCA so với cách tính trong các công trình nghiên cứu điển hình dựa trên CA trước đ y. Phần tiếp theo đề xuất phương pháp dPCA hoạt động chế độ phân cấp. 2.5.2. Sự phân cấp của dPCA Hình 2.3 mô tả chế độ hoạt động của phương pháp dPCA. Trong đó dPCA hoạt động theo 2 cấp:  Cấp 1: dPCA sử dụng PC thứ yếu để tính khoảng cách. Trong trường hợp cần thiết có thể sử dụng tất cả PC và bỏ qua cấp 2. Phương pháp này cần 1 mức ngưỡng cho khoảng cách được gọi là dPCA1T (dPCA with 1 threshold). Khi sử dụng tất cả PC để tính khoảng cách d, có thể phát hiện được bất thường có đột biến xuất hiện ở những PC khác nhau. Tuy nhiên sử dụng tất cả PC để tính 54 khoảng cách với dPCA1T chỉ được áp dụng khi số thuộc tính p ban đầu không quá lớn vì sẽ tốn nhiều tài nguyên của hệ thống và nên đặt trọng số wi 1. Cấp 2 dPCA PC chủ yếu Cấp 1 Tất cả PC Chế độ hoạt động PC thứ yếu Phân tích từng PC Hình 2.3. Phân cấp trong phương pháp dPCA  Cấp 2: Cấp 2 có các chế độ hoạt động - Hoạt động song song với cấp 1: Chế độ song song sử dụng PC chủ yếu để tính khoảng cách đồng thời với khoảng cách dùng PC thứ yếu tại cấp 1. - Hoạt động dự phòng cho cấp 1: Chế độ dự phòng chỉ sử dụng PC chủ yếu để tính khoảng cách với những dữ liệu đã được phát hiện là bình thường tại cấp 1 để tìm những bất thường mà cấp 1 có thể bỏ sót. Ưu điểm của phương pháp này là không cần tính đồng thời tất cả dữ liệu với cả 2 cấp do đó giảm được số lượng dữ liệu mà cấp 2 cần xử lý. Nhược điểm là phải chờ sau khi cấp 1 xử lý xong, dữ liệu coi là bình thường mới chuyển đến cấp 2. - Xét từng PC để phát hiện bất thường nếu cần thiết: phương pháp này khó phân tích đồng thời nhiều PC và phải thiết lập mức ngưỡng cho từng PC. Khi sử dụng cả PC thứ yếu và PC chủ yếu để tính khoảng cách, mỗi khoảng cách cần có một mức ngưỡng riêng nên phương pháp này được luận án đặt tên là dPCA2T (dPCA with 2 thresholds). dPCA2T có thể phát hiện thêm bất thường với khoảng cách sử dụng PC chủ yếu nhưng đồng thời cũng làm tăng tỷ lệ cảnh báo sai.  Số lượng PC sử dụng trong khoảng cách tại cấp 1 và cấp 2: Qua những nghiên cứu đã khảo sát cùng với sự đánh giá dựa trên dữ liệu thực tế, nghiên cứu sinh thấy rằng số lượng các PC chủ yếu và thứ yếu thường được xác định theo thực nghiệm. Thử nghiệm cho thấy PC thứ yếu tại cấp 1 có kết quả phát hiện tốt 55 nếu tổng trị riêng các PC này trong khoảng 5% đến 15% của tổng tất cả trị riêng (ứng với k =3 đến k=5 PC cuối cùng). Cấp 2 có thể linh hoạt lựa chọn số lượng PC tùy theo điều kiện thực tế. Trong luận án số PC chủ yếu tại cấp 2 được lựa chọn trong khoảng 50% tổng tất cả trị riêng (theo 58, 59]) tương ứng với k ≤ 4 PC đầu tiên. Khi cần thiết phát hiện bất thường với nhiều PC hơn thì tăng số PC chủ yếu lên. Luận án đánh giá một đặc điểm sau đây của phương pháp 2 mức ngưỡng trong đó sử dụng cả khoảng cách của PC chủ yếu và thứ yếu mà những công trình trước đó 58, 34, 36, 14, 54, 10] chưa đề cập đến: Do phát hiện c ng l c bất thường ở cả C chủ yếu v thứ yếu, phương pháp n y cho kết quả phát hiện bất thường (T R) cao hơn một chút so với chỉ sử dụng PC thứ yếu. Tuy nhiên phương pháp 2 mức ngưỡng thường cũng trả giá bằng t lệ cảnh báo sai (F R) cao hơn v tốn nhiều t i nguyên hơn. Trong những hệ thống thực tế, thông thường số lượng dữ liệu bình thường chiếm đa số so với bất thường. Vì vậy nếu tỷ lệ cảnh báo sai (FPR) tăng lên một chút cũng làm cho số lượng dữ liệu bình thường phát hiện sai là bất thường tăng lên nhiều. Ví dụ: dữ liệu bình thường chiếm 90%, bất thường chiếm 10%, như vậy chỉ 1% dữ liệu bình thường phát hiện nhầm là bất thường cũng gây ra số lượng lớn cảnh báo sai. Do đó tính khoảng cách với cả PC chủ yếu và thứ yếu liên tục như trong các công trình đã khảo sát có thể vừa tốn năng lực xử lý, tài nguyên của hệ thống vừa làm tăng FPR không cần thiết. Khi trạng thái bình thường trong profile thiết lập tốt, phần lớn những bất thường trong PC chủ yếu đã được phát hiện với PC thứ yếu tại cấp 1. Trong trường hợp số lượng bất thường phát hiện được với cấp 2 không hiệu quả vì cấp 1 đã hoạt động tốt thì tùy theo điều kiện thực tế có thể giảm tần suất kiểm tra tại cấp 2 hoặc tắt h n cấp 2 nhằm giảm tỷ lệ cảnh báo sai (FPR) trong điều kiện dữ liệu bình thường chiếm đa số và giảm mức độ tính toán. 2.5.3. Thiết lập mức ngưỡng Thiết lập mức ngưỡng là một vấn đề khó trong các phương pháp phát hiện lưu lượng bất thường nói chung. Mức ngưỡng là tham số rất “nhạy cảm” giữa tỷ lệ phát 56 hiện bất thường chính xác (đúng) và tỷ lệ cảnh báo sai (phát hiện nhầm dữ liệu bình thường là bất thường). Một phương pháp là giả định mô hình tuân theo phân bố thống kê biết trước và ước lượng tỷ lệ sai số α từ đó tìm mức ngưỡng từ xác suất của (1- α). Một số phân bố thống kê có mức ngưỡng tra được ở dạng bảng (ví dụ: phân bố F, phân bố Chi-square 2) [58, 34, 36]. Trong lĩnh vực phát hiện bất thường, α đóng vai trò là tỷ lệ cảnh báo sai ước lượng. Phương pháp thứ hai là ước lượng mức ngưỡng dựa trên thực nghiệm. Trong luận án, việc thiết lập mức ngưỡng dựa trên hàm phân bố tích lũy thực nghiệm của d. Trong xác suất thống kê, hàm phân bố tích luỹ (Cumulative distribution function - CDF) được định nghĩa như sau [66]: F(t) = P(d ≤ dN) (2.23) nghĩa là xác suất để khoảng cách d nhỏ hơn hoặc bằng mức ngưỡng dN. Hàm phân bố tích lũy thực nghiệm (Empirical cumulative distribution function - ECDF) là hàm ước tính dựa trên dữ liệu thực nghiệm của hàm phân bố tích luỹ [67]: 1 1 ( ) ( ) n n i N i F t I d d n    (2.24) Trong đó: n là tổng số quan sát trong tập dữ liệu, I là hàm chỉ thị, di là khoảng cách của quan sát thứ i: 1, khi ( ) 0,khi i N i N i N d d I d d d d         (2.25) ECDF không tra bảng như phân bố thống kê F hoặc 2 mà xác định dựa trên thực nghiệm. Từ α là tỷ lệ cảnh báo sai ước lượng, ta có thể tính khoảng cách với mức ngưỡng dN tương ứng với (1- α) của hàm phân bố tích lũy thực nghiệm. Ví dụ: với α = 5%, mức ngưỡng lựa chọn tương ứng với 95% của ECDF. Tùy thuộc áp dụng dPCA1T hoặc dPCA2T, sẽ cần thiết lập một hoặc hai mức ngưỡng với ECDF. 2.5.4. Quá trình tạo profile và phát hiện bất thường trong dPCA 57 Để tính được khoảng cách d cần thiết phải tạo profile từ tập dữ liệu mẫu (gọi tắt là tập mẫu) dựa trên điều kiện bình thường của lưu lượng mạng. Từ tập hợp các giá trị của d được với tập dữ liệu mẫu sạch (không chứa bất thường) sẽ thiết lập được giá trị ngưỡng dN để phát hiện bất thường.  Tạo profile Hình 2.4 mô tả quá trình tạo profile trong phương pháp dPCA. Quá trình tạo profile được thực hiện như sau: - Lựa chọn p thuộc tính đầu vào phù hợp: X1, X2, Xp. Các thuộc tính của n điểm (vector) tạo thành ma trận X (n hàng, p cột). - Tạo tập dữ liệu mẫu: Tập dữ liệu mẫu được tạo dựa trên trạng thái bình thường của lưu lượng mạng. Vì vậy tập dữ liệu mẫu cần sạch hay không chứa bất thường (hay ngoại lai). Việc làm sạch mẫu (khử ngoại lai) được trình bày trong chương 3 của luận án. - Chuẩn hóa dữ liệu đầu vào: Chuẩn hóa thống kê với giá trị trung bình và độ lệch chuẩn của mỗi cột trong X. - Tính ma trận tương quan, từ đó tính các cặp vectơ riêng, trị riêng, các thành phần chính. Cũng có thể áp dụng phương pháp SVD để thực hiện bước này. - Sắp xếp các thành phần chính theo thứ tự giảm dần của trị riêng. - Tính khoảng cách của mỗi điểm theo dPCA1T hoặc dPCA2T. - Xây dựng hàm phân bố tích lũy thực nghiệm dựa trên khoảng cách tính được và xác suất. Lựa chọn mức ngưỡng theo sai số hoặc tỷ lệ cảnh báo sai ước lượng. Cũng có thể áp dụng phân bố thống kê T2 hoặc 2 để tính mức ngưỡng trong một số trường hợp. 58 Tập mẫuập ẫu PCA Profile Vectơ riêng Trị riêng Trung bình Độ lệch chuẩn Mức ngưỡng rofile ectơ riêng rị riêng rung bình ộ lệch chuẩn ức ngưỡng Chuẩn hóahuẩn hóa Tính khoảng cáchính khoảng cách Hình 2.4. Tạo profile trong dPCA  Phát hiện bất thường Sau khi xây dựng được profile, những quan sát mới được chuyển vào miền con PCA và tính khoảng cách để phát hiện bất thường. Quá trình này mô tả trên hình 2.5 và được thực hiện như sau: - Chuẩn hóa dữ liệu mỗi điểm dữ liệu mới với giá trị trung bình và độ lệch chuẩn lấy từ profile. - Tính giá trị thành phần chính theo các vectơ riêng trong profile. - Tính khoảng cách theo dPCA1T hoặc dPCA2T. So sánh giá trị khoảng cách tính được với giá trị ngưỡng. 59 Quan sát mớiuan sát ớiProfile Vectơ riêng Trị riêng Trung bình Độ lệch chuẩn Mức ngưỡng rofile ectơ riêng rị riêng rung bình ộ lệch chuẩn ức ngưỡng Tính thành phần chính ính thành phần chính Tính khoảng cáchính khoảng cách So sánh ngƣỡngSo sánh ng ỡng Phát hiện, cảnh báohát hiện, cảnh báo Chuẩn hóahuẩn hóa Hình 2.5. Phát hiện bất thường trong dPCA Với dPCA1T: Một điểm dữ liệu hoặc quan sát được coi là bất thường nếu: p c i i i r Ndwd y    (2.26) Trong đó: (1 ≤ r ≤ p) Ngược lại điểm đó được coi là bình thường. Với dPCA2T: Một điểm dữ liệu được coi là bất thường nếu: 1 1 1 2 2OR ( ) ( ) pm c c i i N i r Ni i i d d d dw y w y        với m < r (2.27) Ngược lại để một điểm dữ liệu là bình thường thì: 1 1 1 2 2AN( ) (D ) pm c c i i i i i r N N i d d d dw y w y        (2.28) 60 Trong đó: d1 và d2 là khoảng cách tương ứng tính với PC chủ yếu và thứ yếu; dN1 và dN2 là mức ngưỡng tương ứng của d1 và d2; OR và AND là các phép tính logic. 2.6. Thử nghiệm, đánh giá kết quả Quá trình thử nghiệm có mục tiêu đánh giá khả năng phát hiện của phương pháp dPCA. Các thông số đánh giá được trình bày trong phần tiếp theo. Quá trình thử nghiệm được thực hiện trên phần mềm Matlab. Như đã trình bày trong những phần trên, để mô hình hóa trạng thái bình thường của hệ thống cần có tập dữ liệu mẫu và tạo được profile; từ đó so sánh những quan sát mới với mức ngưỡng để phát hiện bất thường. Phần này đánh giá hiệu quả của phương pháp dPCA với các tham số khác nhau, so sánh với phương pháp đã có. Công thức được áp dụng tính khoảng cách là (2.13) với các bộ tham số khác nhau. Trường hợp c=2, wi=1, phương pháp dPCA1T tương tự phương pháp phân tích phần dư đã có. Trường hợp c=2, wi = 1/i, phương pháp dPCA1T tương tự công thức đã được sử dụng trong các công trình đã có sử dụng khoảng cách Mahalanobis. Các công trình này sử dụng 2 mức ngưỡng tính khoảng cách với cả thành phần chính chủ yếu và thứ yếu (2 mức ngưỡng). Điểm khác biệt của luận án với những công trình này là luận án đánh giá cả trường hợp chỉ sử dụng các thành phần chính thứ yếu trong tính khoảng cách (dPCA1T) với c=2, wi = 1/i nhưng vẫn đạt kết quả phát hiện chấp nhận được [CT5, CT6, CT7]. Trường hợp áp dụng cả thành phần chính chủ yếu và thứ yếu (dPCA2T) để phát hiện bất thường luận án có thể sử dụng các tham số linh hoạt hơn thay vì luôn sử dụng c=2. Trường hợp c=1 cùng với trọng số wi là đề xuất mới của dPCA. Theo phân tích ở mục 2.5.1, trọng số wi được lựa chọn là wi=1 hoặc 1/i iw  . 2.6.1. Các sự kiện và thông số đánh giá độ chính xác Độ chính xác là thông số quan trọng nhất của hệ thống phát hiện bất thường. Độ chính xác được tính dựa trên tỷ lệ phát hiện đúng và sai của dữ liệu được kiểm tra. Khi hệ thống phát hiện một quan sát là bất thường sẽ đưa ra cảnh báo, ngược lại là bình thường sẽ không cảnh báo. Các sự kiện và thông số đánh giá độ chính xác bao gồm: 61  Cảnh báo đúng (True Positive - TP): Số lượng quan sát bất thường được phát hiện chính xác.  Cảnh báo sai (False Positive - FP): Số lượng quan sát bị phát hiện nhầm là bất thường nhưng thực tế lại là bình thường.  Không cảnh báo đúng (True Negative - TN): Số lượng quan sát bình thường được phát hiện chính xác.  Không cảnh báo sai (False Negative - FN): Số lượng quan sát được phát hiện là bình thường nhưng thực tế lại là bất thường.  TPR (True Positive Rate), còn gọi là Recall: Tỷ lệ giữa số quan sát bất thường phát hiện chính xác và tổng số quan sát bất thường thử nghiệm. TP TPR TP FN   (2.29) Trong đó: Tổng số quan sát bất thường thực tế = TP + FN. TPR t lệ thuận với TP theo công thức (2.29) vì số lượng quan sát bất thường phát hiện đ ng c ng nhiều thì TPR càng cao.  FPR (False Positive Rate): Tỷ lệ giữa số quan sát bình thường bị phát hiện sai là bất thường và tổng số quan sát bình thường thử nghiệm. FP FPR TN FP   (2.30) Trong đó: Tổng số quan sát bình thường thực tế = TN + FP. FPR t lệ nghịch với TN theo công thức (2.30) vì số lượng quan sát bình thường phát hiện đ ng c ng nhiều thì t lệ cảnh báo sai FPR càng giảm. Những thông số thường dùng để đánh giá độ chính xác là TPR, FPR [5, 58, 72]. Ngoài ra, trong một số phần thử nghiệm, luận án sử dụng thêm biểu đồ biểu thị số lượng quan sát bất thường phát hiện đúng (TP ) và số lượng quan sát bình thường phát hiện đúng (TN) để minh họa, làm rõ thêm cho tỷ lệ TPR và FPR trình bày ở dạng bảng. 2.6.2. Đồ thị ROC 62 Đồ thị ROC (Receiver Operating Curve) (hình 2.6) [5] dùng để biểu diễn khoảng cách theo mối quan hệ giữa tỷ lệ TPR và FPR. ROC hay được sử dụng để đánh giá khả năng phát hiện bất thường của phương pháp đề xuất [5, 6, 30, 58, 59, 77, 72, 73]. Hình dạng của đường cong ROC sẽ cho biết dự đoán trong trường hợp khảo sát có khả năng đạt hiệu quả tốt hay không. Hình 2.6. Đồ thị ROC - Đường cong càng đi dọc theo biên trái trục tung và rồi đi dọc theo biên phía trên nằm ngang của không gian vẽ đồ thị chứng tỏ kết quả dự đoán càng chính xác. Ví dụ trên hình 2.6 biểu diễn đồ thị của 3 đường cong thì đường cong tốt nhất là C rồi đến B và A. Độ chính xác tối ưu (Perfect accuracy) đạt được nếu TPR=100% và FPR=0%. - Đường cong càng tiến tới thành đường chéo 45 độ (đường nét đứt) thì độ chính xác của dự đoán càng kém. 2.6.3. Lựa chọn tập dữ liệu thử nghiệm Trong thử nghiệm, việc tổng hợp dữ liệu lưu lượng bắt được từ những công cụ như tcpdump, flowdump thành các thuộc tính cho từng kết nối, kiểm tra và đánh nhãn mỗi kết nối là bình thường hay bất thường là rất khó. Một số nghiên cứu tự tạo ra tập dữ liệu 63 mô phỏng thường không được đánh nhãn và số lượng hoặc tỷ lệ giữa các loại kết nối (connection) hoặc luồng (flow) bình thường và bất thường quá chênh lệch nên rất khó đánh giá hiệu suất phát hiện của phương pháp đề xuất. Mặc khác không có gì chắc chắn là tập dữ liệu mô phỏng tạo ra được đánh giá cao hơn tập dữ liệu được chấp nhận và sử dụng rộng rãi như tập dữ liệu KDD [69]. Vì vậy giải pháp thường được sử dụng trong hầu hết các công trình nghiên cứu tới nay là đánh giá phương pháp và mô hình thử nghiệm trên tập dữ liệu có sẵn. Cụ thể là các tập dữ liệu KDDCUP99 [69] và đặc biệt là tập Kyoto Honeypot [60, 61]. Kyoto Honeypot là tập dữ liệu thật thu được từ mạng Internet, có một lượng dữ liệu khá lớn thu trong một vài năm. Việc lựa chọn một tập dữ liệu đã đánh nhãn và biết đến rộng rãi trong khoa học là cần thiết. Với những lý do trên, luận án lựa chọn giải pháp sử dụng tập dữ liệu có sẵn khi thử nghiệm. Tập dữ liệu Kyoto Honeypot là tập dữ liệu thực tế thu được tại hệ thống “bẫy” tổ ong (Honeypot) của đại học Kyoto (Nhật Bản) [60, 61]. Honeypot được sử dụng với mục đích đánh lừa tin tặc tấn công vào hệ thống này để thu thập dữ liệu cho việc phân tích dấu vết. Lưu lượng thu được từ hệ thống Honeypot có điểm đặc biệt là phần lớn các bất thường có nguồn gốc từ Internet. Các thuộc tính chủ yếu là những thuộc tính lưu lượng của lớp mạng (network layer) và lớp giao vận (transport layer). Những thuộc tính này tương tự như những thuộc tính lưu lượng trong KDDCUP99. Số thuộc tính tương đương với KDDCUP 99 là 14. Ngoài ra, Honeypot bổ sung thêm các thuộc tính từ các ứng dụng (như chương trình phát hiện mã độc) để có thể phát hiện bất thường tại lớp ứng dụng. Chi tiết về các thuộc tính của Kyoto Honeypot được mô tả trong [60]. Kyoto Honeypot có ưu điểm là tập dữ liệu thực nên không giống như những tập dữ liệu được tạo ra trong môi trường mô phỏng (synthetic dataset), dữ liệu trong Kyoto Honeypot phản ánh được tính khách quan của các sự kiện bất thường của lưu lượng mạng Internet thu được. Kyoto Honeypot được tổ chức theo cơ sở dữ liệu. ỗi d ng hoặc bản ghi l một kết nối (connection) chứa các thuộc tính tương ứng với một quan sát. Bảng 2.1 liệt kê các thuộc tính của tập dữ liệu Kyoto Honeypot được sử dụng trong phần thử nghiệm. Với phạm vi luận án là phát hiện bất thường trên lưu lượng 64 mạng, những thuộc tính được lựa chọn chủ yếu liên quan đến lớp mạng và lớp giao vận. Bảng 2.1. Thuộc tính dùng trong thử nghiệm của tập dữ liệu Kyoto Honeypot Thuộc tính Ý nghĩa duration Thời gian của kết nối service Mã của loại dịch vụ src_bytes Số lượng byte gửi từ nguồn đến đích dst_bytes Số lượng byte gửi từ đích về nguồn count Số lượng kết nối đến cùng địa chỉ đích đang xét trong 2s same_srv_rate Số lượng kết nối trong count có cùng kiểu dịch vụ serror_rate % số kết nối có lỗi đồng bộ SYN srv_serror_rate % số kết nối có lỗi đồng bộ SYN và cùng kiểu dịch v

Các file đính kèm theo tài liệu này:

  • pdfluan_an_nghien_cuu_de_xuat_phuong_phap_phan_tich_va_phat_hie.pdf
Tài liệu liên quan