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
144 trang |
Chia sẻ: honganh20 | Ngày: 16/03/2022 | Lượt xem: 471 | Lượt tải: 1
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:
- luan_an_nghien_cuu_de_xuat_phuong_phap_phan_tich_va_phat_hie.pdf