Tải bản đầy đủ (.pdf) (54 trang)

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

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.12 MB, 54 trang )

ĐẠ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
2.2

Đặc trưng n-gram và phiên bản 2v-gram ........................................ 12
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
WEB
3.1
3.2
3.3
3.4
CHƯƠNG 4

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

.................................................................................................... 21
Tổng quan ....................................................................................... 21
Loại bỏ đặc trưng không xuất hiện ................................................. 22
Rút gọn đặc trưng bằng phương pháp phân cụm............................ 25
Rút gọn đặc trưng sử dụng lý thuyết tập thô mờ ............................ 25
. MÔ HÌNH ĐƯỢC ĐỀ XUẤT ................................................. 33

4.1 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 Hệ thống phân lớp đa lớp cho phát hiện
System for Accurate Payload- bất thường dựa trên payload
based Anomaly Detection
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 Hệ thống phát hiện bất thường dựa trên
detector
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 Lựa chọn đặc trưng sử dụng lý thuyết

theory feature selection
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 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 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
2v-gram (các giá trị byte cách nhau v vị trí) khác so với phương pháp sử dụng ngram 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à 2562 đặ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ừ 2562 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 NGRAM 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ó 256n đặ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 256n 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 2v-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 2v-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 21-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:
𝑓(𝛽/𝐵) =

Trong đó:

𝑆ố 𝑙ầ𝑛 𝑥𝑢ấ𝑡 ℎ𝑖ệ𝑛 𝑐ủ𝑎 𝛽 𝑡𝑟𝑜𝑛𝑔 𝐵
(1)
𝑙−𝑛+1

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,
- (𝑙 − 𝑛 + 1) là tổng số lần cửa sổ có thể trượt trên B.
- 𝑓(𝛽/𝐵) có thể được hiểu là ước tính xác suất 𝑝(𝛽/𝐵) của việc tìm ra ngram 𝛽 (một chuỗi liên tiếp các bytes [𝛽1 , 𝛽2 , … , 𝛽𝑛 ] trong B.

-

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 𝛽2 , … , 𝛽𝑣+1 .
Khi v = 0 thì 2v-gram chính là 2-gram thông thường.

Khi v > 0, tần xuất xuất hiện trong payload của 2v-gram {𝛽1 , 𝛽𝑣+2 } có thể
được xem như là xác suất cận biên (marginal probability) được tính trên sự phân
bố của (v+2)-gram bắt đầu bằng 𝛽1 và kết thúc với 𝛽𝑣+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 (n-1)
-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 ngram đượ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
McPAD

Model 1

Model 2

Payload

Trích xuất
đặc trưng
(Bằng 2-v gram)

Giảm kích thước
đặ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 2vgram 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ạo lập tập con

Tập con

Đánh giá

Tập con
phù hợp

Sai
Điều kiện dừng

Đú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
trưng con

Đóng gói

Thuật toán
học máy

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


Thuật toán
học máy

Tạo lập tập con
Đá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ể
dễ dàng nhận thấy rằng trong số 2562 đặ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


×