Tải bản đầy đủ

luận văn thạc sĩ giảm kích thước đặc trưng trong phát hiện tấn công web dựa vào bất thường

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

LÊ THANH BÌNH

GIẢM KÍCH CỠ ĐẶC TRƯNG TRONG PHÁT HIỆN
TẤN CÔNG WEB DỰA VÀO BẤT THƯỜNG
Ngành: Công nghệ thông tin
Chuyên ngành: An toàn thông tin
Mã Số: 8480102.01

LUẬN VĂN THẠC SĨ AN TOÀN THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. LÊ ĐÌNH THANH

Hà Nội – 2019


i

LỜI CẢM ƠN
Trước tiên tôi xin dành lời cảm ơn chân thành và sâu sắc đến thầy giáo,

TS. Lê Đình Thanh – người đã hướng dẫn, khuyến khích, chỉ bảo và tạo cho tôi
những điều kiện tốt nhất từ khi bắt đầu cho tới khi hoàn thành công việc của
mình.
Tôi xin dành lời cảm ơn chân thành tới các thầy cô giáo Khoa Công nghệ
Thông tin, Trường Đại học Công nghệ, ĐHQGHN đã tận tình đào tạo, cung cấp
cho tôi những kiến thức vô cùng quý giá và đã tạo điều kiện tốt nhất cho tôi
trong suốt quá trình học tập, nghiên cứu tại trường.
Đồng thời, tôi xin cảm ơn tất cả những người thân yêu trong gia đình tôi
cùng toàn thể bạn bè những người đã luôn giúp đỡ, động viên tôi những khi
vấp phải những khó khăn, bế tắc.
Mặc dù đã rất cố gắng, nỗ lực nhưng luận văn chắc chắn không tránh
khỏi những thiếu sót, tôi rất mong nhận được những ý kiến đánh giá và phê
bình từ phía các Thầy Cô để luận văn được hoàn thiện hơn.
Tôi xin chân thành cảm ơn!
Hà Nội, tháng 10 năm 2019
Học viên

Lê Thanh Bình


ii

LỜI CAM ĐOAN
Tôi xin cam đoan rằng luận văn thạc sĩ công nghệ thông tin “Giảm kích
cỡ đặc trưng trong phát hiện tấn công Web dựa vào bất thường” là công trình
nghiên cứu của riêng tôi, không sao chép lại của người khác. Trong toàn bộ nội
dung của luận văn, những điều đã được trình bày hoặc là của chính cá nhân tôi
hoặc là được tổng hợp từ nhiều nguồn tài liệu. Tất cả các nguồn tài liệu tham
khảo đều có xuất xứ rõ ràng và hợp pháp.
Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo
quy định cho lời cam đoan này.
Hà Nội, ngày 10 tháng 10 năm 2019

Lê Thanh Bình


1

MỤC LỤC
LỜI CẢM ƠN ....................................................................................................... i


LỜI CAM ĐOAN.................................................................................................. ii
DANH MỤC HÌNH VẼ........................................................................................ 3
DANH SÁCH BẢNG BIỂU................................................................................. 4
DANH SÁCH CÁC TỪ VIẾT TẮT..................................................................... 5
MỞ ĐẦU

...................................................................................................... 6

CHƯƠNG 1

. GIỚI THIỆU .............................................................................. 7

CHƯƠNG 2 . PHÁT HIỆN TẤN CÔNG WEB SỬ DỤNG ĐẶC TRƯNG NGRAM VÀ BỘ PHÂN LỚP MỘT LỚP ............................................................ 12
2.1 Đặc trưng n-gram và phiên bản 2v-gram ........................................ 12
2.2

Sử dụng kết hợp nhiều bộ phân lớp một lớp .................................. 17
2.2.1 Bộ phân lớp một lớp ............................................................ 17
2.2.2 Kết hợp nhiều bộ phân lớp một lớp ..................................... 18

CHƯƠNG 3 . RÚT GỌN ĐẶC TRƯNG TRONG PHÁT HIỆN TẤN CÔNG
WEB
3.1

.................................................................................................... 21
Tổng quan ....................................................................................... 21

3.2 Loại bỏ đặc trưng không xuất hiện .................................................
3.3 Rút gọn đặc trưng bằng phương pháp phân cụm............................
3.4 Rút gọn đặc trưng sử dụng lý thuyết tập thô mờ ............................
CHƯƠNG 4 . MÔ HÌNH ĐƯỢC ĐỀ XUẤT .................................................
4.1

22
25
25
33

Kết hợp nhiều bộ phân lớp một lớp với đặc trưng được rút gọn bằng

tập thô mờ ................................................................................................. 33
4.1.1. Huấn luyện ........................................................................... 34
4.1.2. Tính toán ngưỡng phân lớp ................................................. 35
4.1.3. Kiểm thử mô hình ................................................................ 36
4.2

Thực nghiệm ................................................................................... 38
4.2.1 Cài đặt thực nghiệm............................................................. 38
4.2.2 Các tập dữ liệu được sử dụng .............................................. 41
4.2.3 Các bước tiến hành cụ thể ................................................... 42
4.2.4 Kết quả và so sánh ............................................................... 46


2
KẾT LUẬN........................................................................................................49
TÀI LIỆU THAM KHẢO..................................................................................50


3

DANH MỤC HÌNH VẼ
Hình 2.1. Payload của một tấn công tràn bộ đệm ............................................... 12
Hình 2.2. 3-gram sinh ra từ một chuỗi ................................................................ 13
Hình 2.3.Các đặc trưng 21-gram .......................................................................... 16
Hình 2.4.Sơ đồ tổng quan về McPAD ................................................................ 18
Hình 3.1. Các bước của quá trình lựa chọn đặc trưng ........................................ 22
Hình 3.2.Lựa chọn đặc trưng theo Hướng tiếp cận lọc và đóng gói ................... 22
Hình 3.3: So sánh kết quả phát hiện của OcPAD so với ANAGRAM [5] ......... 24
Hình 4.1. Sơ đồ tiến trình thực hiện giai đoạn huấn luyện được đề xuất ........... 35
Hình 4.2. Sơ đồ giai đoạn tính threshold............................................................. 36
Hình 4.3. Tiến trình thực hiện giai đoạn test ....................................................... 37
Hình 4.4.Chương trình giai đoạn giai đoạn huấn luyện ...................................... 39
Hình 4.5. Chương trình giai đoạn kiểm thử ........................................................ 39
Hình 4.6.Cấu trúc dữ liệu file ARFF cho Tool Weka ......................................... 40
Hình 4.7.Chạy rút gọn đặc trưng với công cụ Weka .......................................... 40
Hình 4.8: Kết quả chạy chương trình khi kiểm thử file allGeneric .................... 47
Hình 4.9. Kết quả chạy chương trình khi kiểm thử file test_normal .................. 47


4

DANH SÁCH BẢNG BIỂU
Bảng 1.1: Thống kê top 10 quốc gia có số lượng cuộc tấn công ứng dụng web
trong quý IV năm 2017 [18] .................................................................................. 7
Bảng 3.1. Kết quả phân lớp 4 thuật toán [6] ....................................................... 23
Bảng 3.2: Kết quả thống kê số lượng n-gram khác nhau trên tổng số n-gram
tương ứng với giá trị N [5]. ................................................................................. 24
Bảng 3.3: Kích thước tập rút gọn của rút gọn thuộc tính thô mờ không giám sát
[3] ........................................................................................................................ 31
Bảng 3.4:độ chính xác phân lớp với thuật toán Jrip (%) [3] ............................... 31
Bảng 3.5: Độ chính xác phân lớp với thuật toán J48(%) [3] .............................. 32
Bảng 4.1: Thông tin về chương trình thực nghiệm ............................................. 38
Bảng 4.2: Kết quả số đặc trưng còn lại sau loại bỏ đặc trưng không xuất hiện.. 43
Bảng 4.3: Kết quả rút gọn đặc trưng sử dụng tập thô mờ không giám sát ......... 43
Bảng 4.4.Thời gian chạy để rút gọn đặc trưng với tập thô mờ không giám sát .. 44
Bảng 4.5: Ma trận nhầm lẫn ................................................................................ 46
Bảng 4.6: So sánh độ chính xác của McPAD và McPAD-UFRS ....................... 48
Bảng 4.7. So sánh thời gian chạy của McPAD và McPAD-UFRS .................... 48


5

DANH SÁCH CÁC TỪ VIẾT TẮT
Thuật ngữ và viết tắt

Mô tả

Anomaly

Bất thường

Misuse

Lạm dụng

McPAD - Multiple Classifier
System for Accurate Payloadbased Anomaly Detection

Hệ thống phân lớp đa lớp cho phát hiện
bất thường dựa trên payload

hacker

Kẻ tấn công

FPR – false positive rate

Tỷ lệ dương tính giả

Payload

Phần nội dung chính của một gói tin

PAYL- payload-based anomaly
detector

Hệ thống phát hiện bất thường dựa trên
payload

OcPAD - One class Naive Bayes Bộ phân lớp một lớp Bayes cho Phát
classifier for payload-based hiện bất thường dựa trên payload
anomaly detection
RST – Rough set theory

Lý thuyết tập thô

FS – Feature selection

Lựa chọn đặc trưng

FRST- Fuzzy rough set theory

Lý thuyết tập thô mờ

FRST FS – Fuzzy rough set
theory feature selection

Lựa chọn đặc trưng sử dụng lý thuyết
tập thô mờ

SVM

support vector machine


6
MỞ ĐẦU
Phát hiện tấn công là một việc làm có ý nghĩa lớn trong việc bảo vệ các
ứng dụng Web khỏi những cuộc tấn công có chủ đích. Phát hiện tấn công dựa
vào bất thường có khả năng phát hiện những tấn công chưa từng được phát hiện
trước đây (zero-day) mà các hệ thống phát hiện thâm nhập dựa vào chữ ký
(signature-based), còn gọi là misuse (phát hiện lạm dụng) không thể phát hiện
được.
Trong phương pháp phát hiện tấn công web dựa vào bất thường, n-gram
là đặc trưng quan trọng được sử dụng để mô hình hóa các HTTP request thông
thường, từ đó phát hiện các request bất thường hay các request tấn công. Với số
lượng đặc trưng n-gram lớn, trích chọn đặc trưng (feature selection) hay giảm
kích thước/số chiều của vector đặc trưng (dimension reduction) là một bước
quan trọng trong giai đoạn tiền xử lý dữ liệu. Nó giúp loại bỏ các đặc trưng dư
thừa, giữ lại các đặc trưng giàu thông tin (information-rich), giúp tăng hiệu quả
của quá trình phát hiện tấn công, đồng thời giảm thời gian tính toán cần thiết.
Với nhiệm vụ bảo vệ thời gian thực, số lượng truy cập (HTTP request) cần phải
xử lý lớn, việc rút gọn đặc trưng càng có vai trò quan trọng. Do đó, việc nghiên
cứu phương pháp giảm kích thước đặc trưng cho bài toán phát hiện tấn công
Web dựa vào bất thường là cần thiết.
Luận văn đã nghiên cứu một phương pháp giảm kích thước đặc trưng
trong phát hiện tấn công Web dựa vào bất thường. Phương pháp này áp dụng
vào mô hình phát hiện tấn công dựa vào bất thường sử dụng nhiều bộ phân lớp
một lớp cho kết quả thực nghiệm tốt hơn so với mô hình được nghiên cứu trước
đó cả về độ chính xác và thời gian thực thi.
Lý thuyết tập thô mờ cho thấy sự hiệu quả khi xử lý dạng dữ liệu liên tục
như số thực. Các phương pháp rút gọn đặc trưng sử dụng tập thô mờ dựa trên
sự phụ thuộc của tập đặc trưng của tập dữ liệu vào một tập đặc trưng nào đó.
Nếu một đặc trưng sau khi loại bỏ khỏi tập đặc trưng mà độ phụ thuộc của dữ
liệu không đổi thì đó là một đặc trưng dư thừa có thể loại bỏ. Mô hình của luận
văn đề xuất sử dụng lý thuyết tập thô mờ để giảm kích vector đặc trưng được
trích chọn bằng kỹ thuật nv-gram. Nó cho thấy hiệu quả rất tốt trong việc giảm
kích thước không gian đặc trưng mà vẫn cho kết quả phân lớp chính xác cao.


7
CHƯƠNG 1 . GIỚI THIỆU
Các ứng dụng trên nền web ngày càng đa dạng và phổ biến, hầu hết mọi
ứng dụng đều triển khai trên nền web, vì vậy các ứng dụng web trở thành mục
tiêu tấn công hàng đầu của các hacker. Các tấn công không được phát hiện và
ngăn chặn kịp thời có thể gây sự tổn thất lớn cho các tổ chức, doanh nghiệp.
Theo báo cáo tình trạng an ninh mạng Quý IV năm 2017 của Công ty Akamai
Technologies [18] đã có hơn 300 triệu cuộc tấn công ứng dụng web xảy ra. Mỹ
là quốc gia xảy ra nhiều cuộc tấn công ứng dụng web nhất với hơn 200 triệu
cuộc tấn công.
Bảng 1.1: Thống kê top 10 quốc gia có số lượng cuộc tấn công ứng dụng web
trong quý IV năm 2017 [18]
Quốc gia

Số lượng cuộc tấn công

United States

238,643,360

Brazil

21,900,411

United Kingdom

19,385,710

Canada

17,459,934

Germany

13,432,389

China

11,906,342

India

11,546,530

Japan

10,510,981

Australia

9,758,428

Hong Kong

5,733,649

An ninh ứng dụng Web luôn là một chủ đề nhận được nhiều sự quan tâm
của cộng đồng nghiên cứu. Hai cách tiếp cận chính thường được dùng trong
phát hiện tấn công web đó là phát hiện tấn công lạm dụng (Misuse detection)
và phát hiện tấn công dựa vào bất thường (Anomaly detection). Phát hiện tấn
công misuse dựa trên mô tả của một tập các tấn công được biết từ trước. Mô tả
của các request tấn công biết trước thường được mô hình thành các chữ ký hay
dấu hiệu tấn công (attack signatures). Các request có sự tương đồng lớn với
attack signature được phân loại là các hành vi có mục đích độc hại (malicious
activities). Ngược lại, phát hiện tấn công dựa trên bất thường dựa vào mô tả của
các request bình thường hay vô hại. Các request được cho là độc hại khi nó có
một khoảng cách đánh giá so với các request bình thường lớn hơn một ngưỡng


8
định trước, cho phép ta xác định đó là một tấn công hay một hành vi độc hại.
Trong thực tế, các hệ thống phát hiện tấn công web thường ở dạng signaturebased. Chúng có thể phát hiện các tấn công đã biết một cách hiệu quả với tỉ lệ
dương tính giả thấp. Tuy nhiên, các hệ thống phát hiện tấn công dựa vào bất
thường lại có khả năng phát hiện các tấn công chưa từng được phát hiện trước
đây (zero-day) trong khi các hệ thống signature-based không thể.
Sự phát triển của lĩnh vực khai phá dữ liệu tạo nên một tiền đề rất tốt để
phát triển các hệ thống phát hiện tấn công dựa vào bất thường. Khi các mô hình
khai phá dữ liệu được huấn luyện với lượng dữ liệu càng lớn thì, mô hình được
tạo ra càng chính xác. Tuy vậy, khối lượng dữ liệu lớn thì quá trình xử lý dữ
liệu càng khó khăn. Không gian đặc trưng rất lớn trở thành một vấn đề trong
quá trình học máy hay khai phá tri thức từ dữ liệu. Do đó, các phương pháp
nhằm trích chọn được các thông tin quan trọng, loại bỏ các thông tin dư thừa từ
dữ liệu là một vấn đề được các cộng đồng nghiên cứu quan tâm.
Trích chọn đặc trưng hay giảm kích cỡ đặc trưng là một quá trình nhằm
lựa chọn được những đặc trưng giàu thông tin (information-rich), loại bỏ các
đặc trưng dư thừa (redundant). Các đặc trưng còn lại sau quá trình trích chọn
vẫn bảo toàn tối đa được ý nghĩa của không gian đặc trưng. Việc giảm kích cỡ
đặc trưng giúp cho tri thức thu được từ dữ liệu chính xác hơn, cũng như giảm
được đáng kể thời gian tính toán cần thiết khi loại bỏ được các đặc trưng dư
thừa trong dữ liệu.
HTTP request được chứa trong gói TCP và gọi là tải (payload) của gói
TCP. Có nhiều nghiên cứu gần đây tập trung vào vấn đề phát hiện tấn công dựa
vào bất thường chứa trong payload sử dụng đặc trưng n-gram (n byte liên tiếp
nhau) như [5], [6], [7], [8], [9], [10], [15]. Quá trình trích xuất n-gram từ
payload cũng tương tự như quá trình khai phá dữ liệu văn bản (text-mining).
Khi giá trị n-gram càng lớn thì ta càng có thể thu được nhiều thông tin từ dữ
liệu, tuy nhiên khi đó không gian đặc trưng của dữ liệu sẽ ngày càng lớn, tăng
theo cấp số nhân, gây khó khăn cho quá trình tính toán, xử lý dữ liệu. Việc tính
toán xử lý dữ liệu sẽ trở nên phức tạp hơn và mất nhiều thời gian hơn.
Trong những đặc trưng n-gram trích xuất từ dữ liệu, không phải tất cả đặc
trưng đều quan trọng, chứa nhiều thông tin giúp cho quá trình mô hình hóa, phân
lớp, phân loại chính xác hơn. Những đặc trưng này được gọi là các đặc trưng dư
thừa, không liên quan. Chúng khiến cho thông tin trích xuất từ dữ liệu giảm ý
nghĩa, cũng như lãng phí thời gian tính toán không cần thiết. Bởi vậy, quá trình rút
gọn đặc trưng nhằm loại bỏ các n-gram dư thừa, giữ lại những n-gram có giá


9
trị thông tin là một bước rất cần thiết trong quá trình khai phá dữ liệu sử dụng
đặc trưng n-gram.
Bài toán giảm kích thước đặc trưng luôn là một bài toán quan trọng của quá
trình khai phá tri thức. Đặc biệt là trong bối cảnh khối lượng thông tin thu được,
cần phải xử lý ngày càng lớn. Các kỹ thuật giảm kích cỡ đặc trưng được phân thành
hai loại: lựa chọn đặc trưng (feature selection) và biến đổi đặc trưng (feature
transformation). Lựa chọn đặc trưng là chọn một tập con tốt nhất từ tập dữ liệu ban
đầu. Biến đổi đặc trưng thực hiện việc biến đổi các đặc trưng ban đầu thành một tập
các đặc trưng vẫn bảo toàn được thông tin nhiều nhất với số lượng ít hơn. Các công
trình nghiên cứu về rút gọn thuộc tính thường tập trung vào nghiên cứu các kỹ thuật
lựa chọn đặc trưng. Lựa chọn đặc trưng là quá trình

lựa chọn một tập con Ptừ tập đặc trưng A (P A) sao cho không gian đặc trưng
được thu gọn lại một cách tối ưu theo một tiêu chuẩn cụ thể nào đó. Một thuật toán
lựa chọn đặc trưng thường gồm bốn bước cơ bản:
-

Bước 1. Tạo lập tập con
Bước 2. Đánh giá tập con
Bước 3. Kiểm tra điều kiện dừng
Bước 4. Kiểm chứng kết quả

Bài toán lựa chọn đặc trưng có hai cách tiếp cận chính: Lọc (filter) và
đóng gói (wrapper). Cách tiếp cận kiểu lọc thực hiện việc lựa chọn các đặc
trưng độc lập với các thuật toán khai phá dữ liệu sau này. Các đặc trưng được
lựa chọn chỉ dựa trên độ quan trọng của chúng trong mô tả tập dữ liệu huấn
luyện. Ngược lại, cách tiếp cận kiểu đóng gói lựa chọn đặc trưng bằng cách áp
dụng ngay kỹ thuật khai phá cụ thể với tập rút gọn thu được, độ chính xác của
kết quả được lấy làm tiêu chuẩn để lựa chọn các tập đặc trưng con.
Trong thời gian gần đây, phương pháp giảm kích cỡ đặc trưng dựa vào lý
thuyết tập thô, đặc biệt lý thuyết tập thô mờ cho thấy sự hiệu quả và nhận được sự
quan tâm của cộng đồng nghiên cứu. Reddy và các cộng sự [16] đã áp dụng lý
thuyết tập thô trong việc giảm kích cỡ đặc trưng của tập dữ liệu HTTP CSIC 2010
[17] (một cơ sở dữ liệu dùng cho việc đánh giá các mô hình phát hiện tấn công
web). Khi áp dụng lựa chọn đặc trưng với lý thuyết tập thô, từ tập dữ liệu gồm 17
đặc trưng điều kiện được giảm xuống còn 8 đặc trưng. Theo [16], kết quả phân lớp
sau khi rút gọn đặc trưng cho kết quả chính xác hơn và thời gian thực hiện phân lớp
chỉ còn 68% so với trước đó. Lý thuyết tập thô cho thấy sự mạnh mẽ trong việc rút
gọn đặc trưng nhưng nó lại phụ thuộc vào tính định danh

Commented [t1]: In nghiêng tất cả cácký hiệu toán học
Commented [t2]: Không phải tập gồm A đặc trưng mà A là
tập đặc trưng


10
của dữ liệu. Để có thể xử lý được dữ liệu số thực, cần phải có một bước rời rạc
hóa dữ liệu đối với lý thuyết tập thô, nhưng quá trình rời rạc hóa có thể gây mất
mát thông tin. Lý thuyết tập thô mờ (fuzzy-rough set theory) có khả năng xử lý
dữ liệu số thực, giúp làm giảm lượng thông tin có thể mất mát. Phương pháp
lựa chọn đặc trưng sử dụng lý thuyết tập thô mờ là một phương pháp rất hiệu
quả để lựa chọn được các đặc trưng giàu thông tin trong khi vẫn duy trì được
tối đa ý nghĩa nguyên bản của dữ liệu ban đầu.
Trong thực tế, để có thể có được một tập dữ liệu có gán nhãn thể hiện cả
request bình thường và bất thường là rất khó và rất tốn kém. Do đó, các mô
hình học không giám sát (unsupervised) hay không nhãn (unlabeled) trong phát
hiện tấn công dựa vào bất thường được sử dụng nhiều hơn. Các phương pháp
tiếp cận này thực hiện trên các dataset trích xuất từ thực tế mà không cần quá
trình gán nhãn. Phát hiện tấn công dựa vào bất thường không giám sát dựa trên
lý do là tỷ lệ của các hành vi độc hại hay bất thường trong thực tế thường rất ít
so với tỷ lệ các hành vi bình thường. Hơn thế nữa, ta có thể sử dụng các hệ
thống phát hiện tấn công misuse trước để lọc được các hành vi độc hại đã biết
trước nhằm giảm tỷ lệ các dữ liệu của hành vi tấn công trong tập dữ liệu. Quá
trình thực hiện phát hiện tấn công dựa trên bất thường không giám sát trong
học máy (machine learning) được gọi là phân lớp một lớp (one-class
classification) hay phát hiện ngoại lai (outlier dectection).
Roberto Perdisci và các cộng sự [7] đã đề xuất một phương pháp sử dụng 2 vgram (các giá trị byte cách nhau v vị trí) khác so với phương pháp sử dụng n-gram
thông thường. Kỹ thuật này giúp cho trích xuất được nhiều thông tin từ dữ liệu hơn
trong khi kích cỡ không gian đặc trưng không đổi là 256 2 đặc trưng. Các tác giả [7]
chỉ ra rằng thông tin trích xuất từ 11 bộ 2v-gram tương đương với thông tin thu
được khi trích xuất n-gram với n = 12. Vì vậy, khi sử dụng nhiều bộ 2v-gram đã
giúp thể hiện được cấu trúc dữ liệu của tập dữ liệu huấn luyện. Mô hình phát hiện
tấn công dựa vào bất thường của [7] McPAD sử dụng nhiều bộ phân lớp một lớp
SVM cho kết quả chính xác vượt trội so với những phương pháp trước đó. Tuy
nhiên, [7] đã sử dụng phương pháp giảm kích thước đặc trưng bằng kỹ thuật phân
cụm (clustering) để áp dụng trong mô hình phân lớp sử dụng nhiều bộ phân lớp
một lớp của mình. Kỹ thuật giảm kích cỡ đặc trưng bằng phân cụm cho thấy hiệu
quả trong việc giảm được đáng kể không gian đặc trưng từ 256 2 về còn k cụm và
vẫn cho kết quả phân loại chính xác cao với tỷ lệ dương tính giả thấp. Song,
phương pháp giảm kích cỡ đặc trưng sử dụng phân cụm là một giải thuật heuristic,
bất kể không gian đặc trưng thế nào cũng đều


11
được rút gọn về còn k cụm. Vì vậy, việc áp dụng một lý thuyết khác có nền tảng
toán học tốt hơn được kỳ vọng sẽ giúp cho nâng cao được hiệu quả của quá
trình phát hiện tấn công dựa vào bất hường hơn so với [7].
Trên cơ sở mô hình mà [7] sử dụng, luận văn đã đề xuất một mô hình sử dụng
nhiều bộ phân lớp một lớp SVM. Trong đó, luận văn đã thực hiện hai điểm khác biệt.
Thứ nhất, luận văn thực hiện một bước lọc thô trước khi sử dụng rút gọn đặc trưng,
đó là loại bỏ các đặc trưng không xuất hiện trong không gian đặc trưng của tập dữ
liệu thu thập được. Việc loại bỏ các đặc trưng không xuất hiện
trong tập dữ liệu
giúp giảm đáng kể khối lượng tính toán cần thiết mà không ảnh hưởng tới độ chính
xác của bộ phân lớp. Các tác giả của [5], [6] đều thực hiện tính toán và phân lớp trên
cơ sở các đặc trưng có xuất hiện trong tập dữ liệu và đều cho kết quả phân loại chính
xác cao. Thứ hai và là điểm khác biệt chính, luận văn đã thực hiện áp dụng lý thuyết
tập thô mờ không giám sát cho quá trình rút gọn đặc trưng thay cho thuật toán phân
cụm mà McPAD sử dụng.
Qua quá trình thực nghiệm, mô hình sử dụng lý thuyết tập thô mờ không
giám sát của luận văn cho kết quả tốt hơn so với McPAD, tỷ lệ phát hiện đúng
cao hơn trong khi tỷ lệ dương tính giả thấp hơn. Bên cạnh đó, thời gian thực thi
trong giai đoạn phát hiện, thuật toán của luận văn chỉ mất khoảng 40% thời gian
so với McPAD nguyên bản. Ở giai đoạn huấn luyện, thuật toán của luận văn
yêu cầu nhiều thời gian hơn McPAD. Tuy nhiên, giai đoạn huấn luyện được
thực hiện offline từ trước nên việc nhanh hơn hay chậm hơn một chút không
quá quan trọng.
Phần còn lại của luận văn được cấu trúc như sau:
Chương 2 của luận văn trình bày về phát hiện tấn công web dựa vào đặc
trưng n-gram và bộ phân lớp một lớp.
Chương 3 trình bày về vấn đề rút gọn đặc trưng trong phát hiện tấn công
web dựa vào bất thường.
Chương 4 trình bày mô hình đề xuất của luận văn, các bước tiến hành
thực nghiệm mô hình và kết quả đạt được.
Phần cuối cùng trình bày kết luận và hướng phát triển tiếp theo.

Commented [t3]: cả dữ liệu huấn luyện (normal) và dữ
liệu test (có tấn công)

Commented [t4]: cả hai đều thâos


12
CHƯƠNG 2 . PHÁT HIỆN TẤN CÔNG WEB SỬ DỤNG ĐẶC TRƯNG
N-GRAM VÀ BỘ PHÂN LỚP MỘT LỚP
2.1 Đặc trưng n-gram và phiên bản 2v-gram
Phát hiện tấn công web dựa vào bất thường trên payload là một phương
pháp quan trọng, có khả năng phát hiện được những tấn công chưa từng được
phát hiện trước đây. Đây là một vấn đề nhận được nhiều sự quan tâm của cộng
đồng nghiên cứu trong thời gian gần đây. Kỹ thuật n-gram (chuỗi n byte liên
tiếp) cho thấy là một kỹ thuật hiệu quả trong việc phát hiện bất thường trên
payload. Hình 2.1 minh họa một payload của một tấn công tràn bộ đệm (buffer
overflow), payload này nhằm làm tràn bộ đệm của đối tượng bị tấn công và
thực hiện hành vi độc hại của mình. Ta có thể dễ dàng nhận thấy trong payload
trên có chứa rất nhiều ký tự “A” một cách bất thường. Trường hợp này sẽ dễ
dàng được phát hiện bởi phương pháp phát hiện sử dụng n-gram.

Hình 2.1. Payload của một tấn công tràn bộ đệm
Khái niệm n-gram
n-gram là một chuỗi con có độ dài ‘n’ được sinh ra từ một chuỗi bất kỳ.
Trong trường hợp chuỗi này là payload của một gói tin thì những chuỗi con có
độ dài ‘n’ được sinh ra chính là các đặc trưng của payload đó.
Ví dụ: cho một payload của một gói tin có chuỗi các phần tử là
‘1, 3, 5, 1, 3, 6, 8’
Các n-gram của payload sẽ gồm các chuỗi như sau:


13
• 1-gram: 1, 3, 5, 1, 3, 6, 8
• 2-gram: 1 3, 3 5, 5 1, 1 3, 3 6, 6 8
• 3-gram: 1 3 5, 3 5 1, 5 1 3, 1 3 6, 3 6 8
Payload

3-gram

1

3

5

1

3

6

8

135

1

3

5

1

3

6

8

351

1

3

5

1

3

6

8

513

1

3

5

1

3

6

8

136

1

3

5

1

3

6

8

368

Hình 2.2. 3-gram sinh ra từ một chuỗi
Hình số 2.2 thể hiện kết quả khi sinh ra 3-gram cho một chuỗi. Ở đây một cửa sổ
trượt được sử dụng để sinh ra các 3-gram. Một cách tổng quát từ một payload của một gói
tin có độ dài là với > , sẽ có thể sinh ra ( − + 1) n-gram từ payload đó.

Một số nghiên cứu gần đây về phát hiện tấn công dựa vào bất thường sử
dụng kỹ thuật n-gram được mô tả trong phần sau đây:
PAYL [8] đề xuất việc trích xuất 256 đặc trưng từ payload tương ứng với đặc
trưng 1-gram. Mỗi đặc trưng thể hiện tần xuất xuất hiện trong payload của một
trong 256 giá trị ASCII (0-255) có khả năng xuất hiện trong payload của một gói
tin bình thường. Trung bình của tất cả các vector đặc trưng được gọi là độ trung
tâm (centroid) và nó sẽ thể hiện đặc điểm của một dữ liệu bình thường. Để xác định
một gói tin là độc hại hay không, một phiên bản độ đo khoảng cách Mahalanobis
đơn giản hóa được sử đụng để tìm ra khoảng cách giữa vector đặc trưng của gói tin
cần kiểm tra so với trung tâm của mô hình dữ liệu bình thường. Bất kỳ gói tin nào
có khoảng cách so với trung tâm của mô hình là lớn hơn một ngưỡng nhất định sẽ
được gán nhãn là độc hại. Dù dựa trên một phương pháp thống kê đơn giản trên
payload nhưng PAYL cho thấy nó tương đối hiệu quả. Tuy nhiên, PAYL vẫn cho
một tỷ lệ dương tính giả tương đối cao. Wang và các công sự [8] đã đề xuất một
phiên bản PAYL sử dụng n-gram khái quát hơn. Một


14
cửa sổ trượt có độ dài n được dùng để trích xuất tần suất xuất hiện trong
payload của tất cả các giá trị n-gram có thể có. Khi đó, payload được thể hiện
bởi một vector mẫu (pattern vector) có 256 n đặc trưng. n-gram trích xuất thông
tin của một chuỗi byte giúp cho việc xây dựng mô hình của hành vi bình
thường chính xác hơn so với mô hình tính tần xuất byte đơn giản trước đó. Việc
trích xuất số liệu thống kê n-gram từ payload có thể được thực hiện một cách
hiệu quả. Tuy nhiên, không gian đặc trưng của payload sẽ bị tăng theo cấp số
nhân khi giá trị n càng lớn. Giá trị n càng lớn càng khó để có thể xây dựng một
mô hình chính xác do sự tác động của số chiều và sự phức tạp trong tính toán.
Wang và các cộng sự cũng đã đề xuất mô hình ANAGRAM [10], một hệ
thống phát hiện tấn công dựa vào bất thường dựa trên phân tích n-gram.
ANAGRAM sử dụng một cách tiếp cận khác cho việc mô hình hóa lưu lượng
bình thường so với PAYL. ANAGRAM lưu giữ các n-gram khác nhau trích
xuất từ payload của gói tin bình thường trong một bộ lọc Bloom (Bloom filter)
b1 và n-gram trích xuất từ các hành vi độc hại đã biết trước trong một bộ lọc
Bloom b2. Trong giai đoạn kiểm tra, mỗi payload của một HTTP request sẽ
trích xuất tất cả n-gram khác nhau (distinct) và so sánh với bộ lọc b1 và b2. Một
payload có chứa quá nhiều n-gram không nằm trong bộ lọc b1 hoặc nằm trong
bộ lọc b2 thì được phân loại là bất thường.
Roberto Perdisci và các cộng sự đã đề xuất McPAD [7] một mô hình phát
hiện dựa vào bất thường sử dụng nhiều bộ phân lớp một lớp Support Vector
Machine (SVM) để phát hiện các gói tin bất thường bằng phương pháp sử dụng
bỏ phiếu theo số đông (majority voting). Với ý tưởng từ ANAGRAM, sử dụng
các chuỗi ngắn có độ dài ngẫu nhiên để phân tích, McPAD sử dụng một biến thể
của 2-gram, gọi là 2v-gram trong quá trình huấn luyện. 2v-gram là cặp byte mà
byte đầu và byte cuối cách nhau một độ dài là “v” (cách nhau v ký tự trong chuỗi
gốc). Bằng cách thay đổi tham số “v”, mỗi một payload sẽ được thể hiện trên
nhiều không gian đặc trưng khác nhau. Với mỗi một giá trị “v”, không gian đặc
trưng tương ứng được sử dụng để huấn luyện cho một bộ phân lớp một lớp SVM
khác nhau.
OcPAD [5] xây dựng một hệ thống phát hiện bất thường sử dụng bộ phân
lớp một lớp Multinomial Naive Bayes để phát hiện các tấn công HTTP. OcPAD sử
dụng khả năng xuất hiện của các chuỗi ngắn (n-gram) trong payload của các gói tin
không độc hại được biết trước như là một độ đo để xác định độ độc hại của một gói
tin. Trong giai đoạn huấn luyện, OcPAD tạo ra các khoảng xác suất khả năng xuất
hiện của mỗi chuỗi trên mỗi gói tin. OcPAD sử dụng một cấu trúc

Commented [t5]: Lưu ý: 2v-gram, v> 0, không phải là
chuỗi con (substring).


15
dữ liệu được gọi là cây xác suất (probability Tree) để lưu khoảng xác suất khả năng
xuất hiện của mỗi chuỗi. Trong giai đoạn kiểm thử, OcPAD xác định một chuỗi là
độc hại nếu như nó không nằm trong cơ sở dữ liệu hay khả năng xuất hiện của nó
trong gói tin đó không nằm trong khoảng được tìm thấy trong giai đoạn huấn luyện.
Dựa trên khả năng độc hại của mỗi chuỗi, OcPAD sẽ xác định nhãn cho gói tin đó.
OcPAD đã thực hiện thí nghiệm trên một cơ sở dữ liệu tương đối lớn và có một tỷ
lệ phát hiện rất cao (tới 100%) so với các phương pháp trước đấy và một tỷ lệ
dương tính giả chấp nhận được (ít hơn 0.6%).

Phiên bản 2v-gram
Mô hình phát hiện được sử dụng bởi PAYL [8] dựa trên sự phân bố tần
suất của n-gram trong payload. Tần xuất xuất hiện của n-gram được đo bằng
cách sử dụng một cửa sổ trượt có độ dài là n. Cửa sổ này trượt trên toàn bộ
payload với bước nhảy bằng 1 byte và đếm số tần suất xuất hiện trong payload
của 256n n-gram có khả năng xảy ra. Vì vậy, trong trường hợp này, payload
được thể hiện bởi 1 vector mẫu trong không gian đặc trưng 256 n chiều. Ta có
thể dễ dàng nhận thấy rằng, n càng lớn thì số lượng cấu trúc thông tin trích xuất
từ payload càng nhiều. Khi n = 2, chúng ta đã thu được 65.536 đặc trưng. Giá
trị n càng lớn thì không gian đặc trưng được tăng theo cấp số nhân, điều này
khiến cho việc xử lý dữ liệu với n lớn trở nên khó khăn hơn do số chiều không
gian đặc trưng rất lớn.
Để giải quyết vấn đề trên, McPAD đề xuất một phương pháp lấy mẫu
mới. Đó là tính tần suất xuất hiện của các cặp byte mà cách nhau “ v” byte trong
payload. Cách tính này giúp cho chúng ta có thể trích xuất thông tin liên quan
tới n-gram một cách hiệu quả với các n > 2. McPAD gọi mỗi cặp byte như vậy
là một 2v-gram. Bất kể giá trị nào của v, phương pháp trích xuất 2v-gram đều
chỉ trích xuất 2562 đặc trưng. Các tác giả [7] cũng đã chỉ ra rằng với v ≤ 10, thì
chỉ số RMI (relative mutual information) của các giá trị byte trong payload
cách nhau “v” vị trí luôn cao hơn 0.5. Kỹ thuật 2 v-gram với giá trị v ≤ 10 đã
thực sự trích xuất được thông tin có cấu trúc từ payload, điều này có ý nghĩa
trong việc xây dựng các bộ phân lớp có độ chính xác cao. Quá trình thử nghiệm
của McPAD cũng cho thấy rằng khi kết hợp các 2 v-gram với v từ 0-10 thì cho
sự phân bố xác suất xấp xỉ với sự phân bố của 12-gram. Các kẻ tấn công rất
khó để có thể bắt chước thông tin được tạo ra từ cách trích xuất này.
Cụ thể, McPAD thực hiện quá trình trích xuất các 2v-gram đặc trưng như
sau:

Commented [t6]: In nghiêng tất cả các ký hiệu toán học


16
Tần xuất xuất hiện của 2v-gram được tính bằng cách sử dụng một cửa sổ
trượt (v+2) với khoảng cách giữa byte đầu và byte cuối bằng (v + 2) byte.
Payload

21-gram

1

3

5

1

3

6

8

15

1

3

5

1

3

6

8

31

1

3

5

1

3

6

8

53

1

3

5

1

3

6

8

16

1

3

5

1

3

6

8

38

Hình 2.3.Các đặc trưng 21-gram
Hình 2.3 là các đặc trưng 2 1-gram được trích xuất từ một gói tin có
payload là một chuỗi 7 phần tử “1,3,5,1,3,6,8”. Khi đó, ta thu được 5 giá trị
đặc trưng 21-gram là: 1 5, 3 1, 5 3, 1 6, 3 8.
Phương pháp xác định đặc trưng 2v-gram cụ thể như sau:
Một payload = [

1, 2,

… , ], với là giá trị byte tại vị trí i. Payload B có l giá trị byte

Tần suất xuất hiện trong payload B của một n-gram = [

1, 2,

ố ầ

( / )=

… , ], với n < l được tính như sau:
ấ ℎ ệ



(1)

− +1

Trong đó:
- Số lần xuất hiện của trong B được tính bằng cách sử dụng kỹ thuật cửa
sổ trượt,
- ( / ) có thể được hiểu là ước tính xác suất ( / ) của việc tìm ra n-gram (một chuỗi liên tiếp các bytes [ , , … , ] trong B.
( − + 1) là tổng số lần cửa sổ có thể trượt trên B.

1 2

Theo đó, xác suất để tìm thấy một 2v-gram {

1, +2}

có thể được viết như sau


17
({

1,

+2}/

)=

2,…,

+1

([ 1, 2, … ,



+1,

+2

] | ) (2)

Hay bằng tổng của tất cả các sự kết hợp có thể của , … ,
Khi v = 0 thì 2v-gram chính là 2-gram thông thường.
2

phân

Khi v > 0, tần xuất xuất hiện trong payload của 2 v-gram {

bố của (v+2)-gram bắt đầu bằng

1

1,

+2}

và kết thúc với

+1

.

có thể được xem như là xác suất cận biên (marginal probability) được tính trên sự

+2.

Từ tần xuất xuất hiện của n-gram, ta có thể tính được sự phân bố của (n1) -gram, (n-2)-gram, .v.v. Nhưng trái lại, khi thực hiện tính toán tần xuất xuất
hiện của 2v-gram không cho phép chúng ta tự động xác định được tần xuất của
2(v-1)-gram, 2(v-2)-gram, .v.v..
Sự phân bố của các 2v-gram với các giá trị v khác nhau cho ta những cấu
trúc thông tin khác nhau của payload. Việc kết hợp các cấu trúc thông tin trích
xuất từ các giá trị v khác nhau, với v = 0, ..., N, có thể phần nào thể hiện được
cấu trúc thông tin được thể hiện bởi sự phân bố của n-gram với n = (N+2).
Kết luận: Phương pháp trích xuất đặc trưng sử dụng n-gram và 2v-gram đã
cho thấy sự hiệu quả trong việc trích xuất thông tin từ cơ sở dữ liệu huấn luyện.
Việc tìm được một không gian đặc trưng nhỏ nhất mà thể hiện tốt nhất cấu trúc
thông tin của cơ sở dữ liệu có ý nghĩa quan trọng trong việc xây dựng một bộ phân
lớp có hiệu năng tốt, độ chính xác cao, thời gian tính toán nhanh chóng.

2.2 Sử dụng kết hợp nhiều bộ phân lớp một lớp
2.2.1 Bộ phân lớp một lớp
Kỹ thuật phân lớp một lớp đặc biệt hữu ích trong trường hợp học máy hai
lớp. Trong đó, một lớp được gọi là lớp đích (target class) có số lượng mẫu
nhiều. Trong khi một lớp khác được gọi là lớp ngoại lai (outlier class), có số
lượng mẫu rất ít, không đầy đủ. Số lượng mẫu của lớp ngoại lai rất ít do rất khó
hoặc tốn kém để có thể có được một số lượng mẫu đáng kể để huấn luyện lớp
này. Mục đích của phân lớp một lớp là tạo ra được một mặt phẳng quyết định
xung quanh các mẫu từ lớp đích để phân biệt giữa các đối tượng đích và tất cả
những đối tượng còn lại, tức là lớp ngoại lai.
Khi sử dụng một tập huấn luyện chưa được gán nhãn có chứa hầu hết là các
đối tượng thuộc lớp đích, một tỷ lệ từ chối (rejection rate) thường được chọn trong
quá trình huấn luyện thể hiện cho phép có một phần mẫu huấn luyện nằm


18
ngoài mặt phẳng quyết định được tạo ra. Điều này tính đến việc là có thể có
khả năng xuất hiện nhiễu (các đối tượng ngoại lai chưa được gán nhãn) trong
tập huấn luyện, giúp cho chúng ta thu được một mô tả chính xác hơn về lớp
đích. Trong trường hợp lớp đích chỉ bao gồm toàn bộ các mẫu của lớp đích, tỷ
lệ từ chối có thể được coi như là một tỷ lệ dương tính giả chấp nhận được.
Trong thực tế, đối với bất kỳ hệ thống mạng nào, số lượng lưu lượng
bình thường và lưu lượng độc hại thường rất chênh lệch nhau. Lượng lưu lượng
độc hại thường rất ít so với các lưu lượng bình thường và chỉ chiếm một phần
rất nhỏ trong toàn bộ lưu lượng của hệ thống. Hơn nữa, rất khó để có thể thu
thập được một tập dữ liệu các tấn công mà có thể bao phủ toàn bộ các trường
hợp tấn công có thể xảy ra đối với ứng dụng đó. Điều đó khiến cho việc áp
dụng phương pháp phân lớp một lớp trong trường hợp này là rất phù hợp.
Có nhiều loại thuật toán phân lớp một lớp khác nhau đã từng được đề
xuất, [7] sử dụng thuật toán phân lớp một lớp SVM được đề xuất bởi Schőlkopf
và các cộng sự trong [2]. Bộ phân lớp một lớp SVM được sử dụng bởi vì SVM
đạt được một hiệu năng tốt trong lĩnh vực phân loại văn bản và mỗi đặc trưng
n-gram được xử lý tương tự như một chuỗi trong văn bản. Mục đích của phân
lớp một lớp SVM là tìm một siêu phẳng giúp phân chia phần mong muốn của
mẫu huấn luyện với không gian đặc trưng ban đầu.
2.2.2 Kết hợp nhiều bộ phân lớp một lớp
McPAD [7] đã đề xuất một mô hình kết hợp nhiều bộ phân lớp một lớp
trong phát hiện bất thường dựa vào payload. McPAD cho một kết quả phát hiện
rất tốt cùng với tỷ lệ dương tính giả ở mức thấp. Kiến trúc tổng quan về mô
hình mà McPAD đề xuất được thể hiện trong hình 2.2
Model 1

McPAD

Model 2

Payload

Trích xuất

Giảm kích thước

.

đặc trưng
(Bằng 2-v gram)

đặc trưng
(Bằng phân cụm)

.
.

Model m

Hình 2.4.Sơ đồ tổng quan về McPAD

Ʃ

Kết
luận

Nhãn


19
McPAD gồm có 3 giai đoạn chính
- Từ payload của các gói tin, thực hiện trích xuất “m” vector đặc trưng 2vgram, với giá trị “v” thay đổi để thu được nhiều cấu trúc thông tin khác
nhau. Như đã mô tả ở phần trên, kích thước của các vector đặc trưng 2 vgram là 2562.
- Các vector đặc trưng 2v-gram thu được sẽ qua bước giảm kích thước đặc
trưng từ 2562 về “k” đặc trưng bằng thuật toán phân cụm.
- Vector đặc trưng sau rút gọn số chiều sẽ dùng để huấn luyện mô hình cho
các bộ phân lớp một lớp SVM và tính toán ngưỡng ứng với giá trị dương
tính giả mong muốn đạt được của mô hình. Kết quả của bước này ta sẽ
thu được “m” mô hình SVM tương ứng với các vector 2v-gram.
- Các mô hình và ngưỡng ở bước trên sẽ được dùng để kiểm thử các gói
tin bằng các bộ phân lớp một lớp. “m” kết quả phân lớp của “m” bộ phân
lớp được tổng hợp theo một luật kết hợp và cho ra kết quả nhãn dự đoán
cuối cùng là độc hại hay không.
Phương pháp phân lớp payload của McPAD
Bằng cách thay đổi tham số “v” và sử dụng thuật toán giảm kích cỡ số
chiều, chúng ta có thể thu được các thể hiện rút gọn hơn khác nhau của payload
trong các không gian đặc trưng khác nhau. Đối với mỗi một 2v-gram, ta tạo ra
một mô hình của lưu lượng bình thường bằng cách huấn luyện một bộ phân lớp
SVM một lớp.
Ta có một bộ các giá trị “khoảng cách v” { }

=1..

, và một tập dữ liệu = { }

=1..

chứa phần lớn các dữ liệu bình thường.

-

Từ tập dữ liệu huấn luyện D, với mỗi giá trị v, thực hiện quá trình trích xuất đặc trưng và rút gọn đặc trưng ta thu được m tập dữ liệu ( ).

-

Sau đó, ta huấn luyện một bộ phân lớp một lớp SVM cho mỗi tập dữ liệu ( )., ta sẽ thu được m mô hình M1, M2, ..., Mm dữ liệu bình thường.

Trong quá trình hoạt động, khi thực hiện kiểm tra một payload p, chúng ta
tính m thể hiện khác nhau của p, gọi là pv1, pv2, …, pvm sử dụng quá trình trích xuất
đặc trưng và rút gọn đặc trưng được mô tả ở phần trên của luận văn. Sau đó, chúng
ta phân lớp mỗi thể hiện pvi sử dụng mô hình Mi. Cuối cùng, ta kết hợp kết quả
phân lớp thu được từ mỗi mô hình để kết luận ra quyết định cuối cùng.
Kết luận cuối cùng dựa trên một ngưỡng (threshold) θ được tính toán từ
trước bằng một tập dữ liệu huấn luyện chứa các dữ liệu không độc hại và một tỷ lệ
dương tính giả mong muốn (FPR desired). Trong trường hợp luật kết hợp bỏ


20
phiếu đa số, kết quả đầu ra của bộ kết hợp chính bằng với số lượng các bộ phân
lớp cho nhãn p là tấn công. Nếu ∑ > quyết định cuối cùng p sẽ được phân loại là tấn công, ngược lại nó sẽ được phân loại là bình thường. Ngưỡng có

thể được chọn để điều chỉnh sự đánh đổi giữa tỷ lệ dương tính giả và tỷ lệ phát
hiện.
Kết hợp nhiều bộ phân lớp một lớp
Kết hợp nhiều bộ phân lớp một lớp được thực hiện theo bỏ phiếu đa số
(majority voting).
Giả sử kết quả phân lớp của L bộ phân lớp cho một payload pk là một
vector
(

)=[ 1(

), 2(

),…,

(

)]∈{0,1}

Trong đó, ℎ( ) = 1 nếu bộ phân lớp thứ h phân loại pk là lớp đích ngược lại ℎ( ) = 0.

Luật kết hợp bỏ phiếu số đông được tính như sau:


=1…

( )> /2


21
CHƯƠNG 3 . RÚT GỌN ĐẶC TRƯNG TRONG PHÁT HIỆN TẤN
CÔNG WEB
3.1 Tổng quan
Trong bài toán phân lớp, kích thước đặc trưng thường rất lớn, nhưng
không phải tất cả các đặc trưng đều có giá trị thông tin tốt, có ý nghĩa cho quá
trình phân lớp dữ liệu. Những đặc trưng không có giá trị thông tin cao, không
thể hiện rõ nhất cấu trúc của tập dữ liệu là những đặc trưng dư thừa. Điều này
dẫn tới hai hệ quả xấu đó là làm giảm hiệu năng của các bộ phân lớp, làm cho
tỷ lệ phát hiện chính xác thấp đi, tỷ lệ dương tính giả cao hơn, mất nhiều thời
gian để tính toán hơndo các đặc tính dư thừa nhiều.
Rút gọn đặc trưng là một bài toán quan trọng trong bước tiền xử lý dữ
liệu của quá trình khai phá dữ liệu. Mục tiêu của rút gọn đặc trưng là giảm số
chiều (số đặc trưng) bằng cách loại bỏ các dữ liệu dư thừa để giúp nâng cao
hiệu quả của quá trình học máy và khai phá dữ liệu. Các kỹ thuật rút gọn thuộc
tính được phân thành hai loại: lựa chọn thuộc tính (attribute selection) và biến
đổi thuộc tính (attribute transformation)
- Lựa chọn thuộc tính là chọn một tập con tốt nhất từ tập dữ liệu ban đầu.
- Biến đổi thuộc tính thực hiện việc biến đổi các thuộc tính ban đầu thành
một tập các thuộc tính vẫn bảo được thông tin nhiều nhất với số lượng ít
hơn.
Các công trình nghiên cứu về rút gọn thuộc tính thường tập trung vào nghiên
cứu các kỹ thuật lựa chọn thuộc tính. Lựa chọn đặc trưng là quá trình lựa chọn
một tập con P từ tập đặc trưng A (P A) sao cho không gian đặc trưng được thu
gọn lại một cách tối ưu theo một tiêu chuẩn. Một thuật toán lựa chọn đặc trưng
thường gồm bốn bước cơ bản:
-

Bước 1. Tạo lập tập con
Bước 2. Đánh giá tập con
Bước 3. Kiểm tra điều kiện dừng
Bước 4. Kiểm chứng kết quả

Commented [t7]: Không phải tập gồm A đặc trưng mà A là
tập đặc trưng


22

Tập đặc trưng

Tập con
Tạo lập tập con

Đánh giá

Tập con
phù hợp
Sai

Đúng
Điều kiện dừng

Kiểm chứng

Hình 3.1. Các bước của quá trình lựa chọn đặc trưng
Bài toán lựa chọn đặc trưng có hai cách tiếp cận chính: Lọc (filter) và đóng
gói (wrapper). Cách tiếp cận kiểu lọc thực hiện việc lựa chọn các đặc trưng độc
lập với các thuật toán khai phá dữ liệu sau này. Các đặc trưng được lựa chọn
chỉ dựa trên độ quan trọng của chúng trong mô tả tập dữ liệu huấn luyện.
Ngược lại, cách tiếp cận kiểu đóng gói lựa chọn đặc trưng bằng cách áp dụng
ngay kỹ thuật khai phá cụ thể với tập rút gọn thu được, độ chính xác của kết
quả được lấy làm tiêu chuẩn để lựa chọn các tập đặc trưng con. Các hướng tiếp
cận lọc và đóng gói được biểu diễn như hình sau:
Lọc
Tập đặc trưng

Lựa chọn tập đặc

Thuật toán

trưng con

học máy

Đóng gói

Các tập con
Tập đặc trưng

Tạo lập tập con

Thuật toán
học máy
Đánh giá

Hình 3.2.Lựa chọn đặc trưng theo Hướng tiếp cận lọc và đóng
gói 3.2 Loại bỏ đặc trưng không xuất hiện
Trong quá trình trích xuất các đặc trưng 2v-gram từ tập dữ liệu, ta có thể
2

dễ dàng nhận thấy rằng trong số 256 đặc trưng có rất nhiều đặc trưng có tần xuất
xuất hiện trong tập dữ liệu bằng 0. Việc không xuất hiện trong không gian
đặc trưng của tập dữ liệu thì đặc trưng đó cũng có thể không có ý nghĩa trong

Commented [t8]: Toàn bộ tập dữ liệu bao gồm cả
training và testing dataset


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×