Một sô ví dụ dé cải thiện mô hình có thé ké đến như: Tríchxuất thuộc tính Feature Engineering giúp trích xuất được nhiều thông tin hơn từ tập dữ liệu hiện có, lựa chọn thuộc tính Feature
Trang 1ĐẠI HỌC QUOC GIA TP HO CHÍ MINH TRUONG DAI HOC CONG NGHE THONG TIN KHOA MANG MAY TINH VA TRUYEN THONG
NGUYEN PHUOC CUONG NGUYEN QUOC TRUNG
KHOA LUAN TOT NGHIEP
XAY DUNG PHUONG PHAP LUA CHON THUOC
TINH HIEU QUA CHO HE THONG PHAT HIEN
XAM NHAP MANG
EFFCTIVE FEATURE SELECTION METHOD FOR
INTRUSION DETECTION SYSTEMS
KY SƯ NGANH AN TOAN THONG TIN
TP HO CHÍ MINH, 2022
Trang 2ĐẠI HỌC QUOC GIA TP HO CHÍ MINH
TRUONG DAI HOC CONG NGHE THONG TIN
KHOA MANG MAY TINH VA TRUYEN THONG
NGUYEN PHƯỚC CƯỜNG - 18520545 NGUYEN QUOC TRUNG - 18521553
KHOA LUAN TOT NGHIEP
XÂY DUNG PHƯƠNG PHAP LỰA CHON THUOC
TINH HIEU QUA CHO HE THONG PHAT HIEN
XAM NHAP MANG
EFFECTIVE FEATURE SELECTION METHOD FOR
INTRUSION DETECTION SYSTEMS
KY SƯ NGANH AN TOAN THONG TIN
GIANG VIEN HUONG DAN
TS LE KIM HUNG
TP HO CHÍ MINH, 2022
Trang 3THONG TIN HOI DONG CHAM KHÓA LUẬN TOT NGHIỆP
Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số
Tg8ầYy của Hiệu trưởng Trường Dai học Công nghệ Thông tin.
1 Chủ tịch.
2 Thư ký.
3.Ủy viên
4.Ủy viên
Trang 4LỜI CẢM ƠN
Lời đầu tiên, chúng em xin trân trọng cảm ơn quý thầy, cô đang công tác và
giảng dạy tại khoa Mạng máy tính và Truyền thông, cũng như toàn thé thầy, cô khác công tác tại trường Đại học Công nghệ Thông tin—- ĐHQG HCM đã truyền đạt những kiến thức, bài học, kinh nghiệm quý báu cho chúng em trong suốt quãng thời gian
bốn năm vừa qua Và đã sắp xếp thời gian, chương trình hợp lý để chúng em có cơ
hội hoàn thành khóa luận tốt nghiệp tốt nhất Chúng em xin kính chúc khoa Mạng máy tính và Truyền thông nói riêng và trường Đại học Công nghệ Thông tin nói chung
luôn thành công rực rỡ trên con đường giảng dạy đào tạo nhân tài, sẽ mãi là niềm tin vững chắc cho các thé hệ sinh viên trên con đường giáo dục.
Đặc biệt, chúng em xin gửi lời cảm ơn chân thành nhất đến giảng viên, TS Lê Kim Hùng Nhờ những kinh nghiệm, bài học quý báu được chia sẻ từ thầy, thầy đã
luôn quan tâm và giúp đỡ chúng em giải quyết những vấn dé phát sinh, khó khăn
trong quá trình thực hiện Nhờ có thầy, chúng em đã có cơ hội hoàn thành tốt khóa luận tốt nghiệp này.
Tiếp theo, chúng em xin cảm ơn về phía gia đình đã luôn luôn tin tưởng, động viên chúng em trong suốt quá trình học tập tại trường Đại học Công nghệ Thông tin
~ ĐHQG HCM, giúp chúng em có thêm nguồn năng lượng đề đi đến được như ngày
hôm nay.
Cuối cùng, nhóm chúng em xin gửi lời cảm ơn đến các anh, chị và các bạn
sinh viên tại trường Đại học Công nghệ Thông tin - ĐHQG HCM đã luôn nhiệt tình
hỗ trợ, chia sẻ ý kiến và góp ý cho chúng em trong quãng thời gian thực hiện khóa
luận.
Trang 5MỤC LỤC
THONG TIN HỘI DONG CHAM KHÓA LUẬN TOT NGHIỆP - 3 LOI CAM 0 1 4
) 092001 R 5
DANH MỤC HÌNH ANH -22222 222222 2222111222211122221111 222112 c1 crrey 7
DANH MUC BANG 60077 8
DANH MỤC TU VIET TẮTT 22:©2222+222EE222E2211222221122222111272112 222211 ecrrkk 9
Chương 1 MỞ ĐẦU -2222222222222222111222111221111 221111211 3
1.2 Đặt vấn 4b cccccccssssssecssccssssssssecsccessssisscssccsssssnsseecsesssssseseeseessssseseessessssseeseess 3
1.3 Mục tiêu của đê tài Sc 2c St S1 v11 191511112 1111111 1 111 11x grrrưyn 5
1.4 Đối tượng và phạm vi nghiên cứu -¿2+c++22v2+z++2vvsvrrsrrvscree 5
1.4.1 _ Đối tượng nghiên cứu 2-ccc+c+estrErrrrreerrrrrrrrrrrree 5
1.4.2 _ Phạm vi nghiên cứu -. - - 55+5++c+SSc+tekerererrerrre 6
Chương2 TONG QUAN ¿-22222+22222122222111222112 222111 7
QA Cơ sở lý thuyẾt 222:-2222222222112222211122271122271112222111 21.11 cerrrvee 7 2.1.1 Tổng quan về hệ thống phát hiện xâm nhập - 7 2.1.2 Tổng quan về Hệ thống IDS ứng dụng cơ sở Máy hoc
2.1.3 Các kỹ thuật chọn lọc thuộc tính - - - ¿+ ++++c+c+xexerexexsr 10
2.1.4 _ Tiêu chí đánh giá tính hiệu quả của các thuật toán kiểm chứng 11
2.2 Các công trình liên Quan ccecccceseeseeeeseseseseseeeneseseseeeesesesestsneeessseseaees 19
Chương 3 | NOIDUNG VÀ PHƯƠNG PHÁP.
3.1 Tổng quan giải pháp 22- 2222222222222 221211 ccrrkrkcrre 22
3.2 Hướng phát triển của công trình nghiên cứu
Trang 63.2.1 Tìm hiểu, phân tích về các thuật toán chọn lọc nói chung 23
3.2.2 Áp dụng thuật toán vào mô hình tổng thê
3.3 Thuật toán chon lọc thuộc tính -¿-« +s++ + k*£sE+tEereEetxeeserrkrresre 30
3.4 Đánh giá mô hình trước các cuộc tân cong
3.4.1 Xây dựng mô hình giả lập tấn công -¿-©cscccccsccee 38
3.4.2 Huấn luyện mô hình dé phát hiện cuộc tan công
3.4.3 Mở rộng với các mô hình học sâu dé phát hiện cuộc tan công 4I 3.4.4 Phương pháp đánh giá kết quả thực nghiệm
Chuong 4 THỰC NGHIEM VÀ DANH GIA -c-cc::¿-©:ccccsse 43
4.1 Môi trường thực hiện ¿-¿- 5555k 43
4.2 Các tập dữ liệu sử dụng ¿Sàn HH 44 4.2.1 Tập dữ liệu KDD .cccccccScc2cvvvverrrrrrrrrrrrrrrrerrrrd 44 4.2.2 Tập dữ liệu UNSW - NBI5 -222cccccccrccccrvrerererrrrrg 47
4.2.3 Tập dữ liệu CIC —IDS (2017) -ccccccccceeceereeerrrrrrrre 49
4.3 Kết quả nghiên cứu ccc+¿222222222++tt22EEEEEEEErrrrtrrrrkvrrrrrrrrrrrrvee 52
4.3.1 Kết quả huấn luyện mô hình học sâu - : sz+2 52
4.3.2 Kết quả huấn luyện mô hình so sánh với nghiên cứu khác 57
4.3.3 So sánh kết quả với hệ thống tan công mẫu đối kháng 59
Chương 5 | TONG KET VÀ HƯỚNG PHÁT TRIẺN - 62
5.1 Kết luận 2 v.v re 62 5.2 Ý nghĩa khoa học . -222+2¿+2222+2E22211122221122212112 E211 62
5.3 Hướng phát triển trong tương lai . -+22v+zv2vcvvrrerrvvvrrerrrer 63
Phụ lục A: Các công bố khoa hỌC 2-55 E22 EE2E12211211211 211211211 E.1xxeE 64
IV 00/2069:7) 604.627 .Ắ ốẮ ` 65
Trang 7Hình 1 Tổng quan về hệ thống phát hiện xâm nhập
DANH MỤC HÌNH ẢNH
Hình 2 Tổng quan các phương pháp lựa chọn thuộc tinh „l1 Hình 3 Các biến thể của thuật toán Ensemble ¿22+ +e+£++rxe+rxesre 16
Hình 4 Các bước của thuật toán Random FOr€st -¿- +55 >+s+s>+s+>+s> 17
Hình 5 Phương pháp EiÏter - 5:52 2222+*32t SE 323 32 2211111 ekrree 24
Hình 6 Phương pháp Wrapper - 6 cành 25 Hình 7 Phương pháp Embedded - - ¿+ +5 ++sv+t#t£vEvxeEeketeterrrrrrrrrrevee 26
Hình 8 Mô hình tổng quan giải pháp . - -ccc¿5ccvsccrcrsserrrrsececsr 3Ï
Hình 9 Thuật toán Ada Boost trên tập dit liệu KDD . -¿ + «5+ 32
Hình 10 Thuật toán Random Forest trên tập dữ liệu KDD - 32
Hình 11 Kết quả huấn luyện của Ada Boost với tập con gồm 9 thuộc tính 33
Hình 12 Kết quả huấn luyện của Ada Boost với tập con gồm 11 thuộc tinh 34
Hình 13 Thuật toán Kmeans trên tập CIC-IDS20 17 - ¿5+ +<cec+++x++ 35 Hình 14 Thuật toán Gaussian Mixture trên tập CIC-IDS2017 35
Hình 15 Kết quả chi tiết của mô hình học sâu trên bộ dữ liệu CIC-IDS 53
Hình 16 Kết quả chỉ tiết của mô hình hoc sâu trên bộ dữ liệu NSL KDD 54
Hình 17 Kết qua chi tiết của mô hình học sâu trên bộ dữ liệu USNW NBI5 54
Hình 18 Kết qua Confusion matrix khi áp dụng thuật toán cho mô hình học sâu trén tap dit ligu CIC-IDS 100 nuv 55
Hình 19 Kết qua Confusion matrix khi áp dụng thuật toán cho mô hình học sâu trén tap dit liu NSL-KDD 1T 4 56
Hinh 20 Két qua Confusion matrix khi áp dung thuật toán cho mô hình học sâu
trên tập dữ liệu UNSW-NB lỐ - ng tre 56
Trang 8DANH MỤC BANG
Bang I So sánh các phương pháp lựa chọn thuộc tính -‹++-«+++ 27
Bảng 2 Các lớp tấn công của tập dit liệu NSL KDD ¿2 scsccscs2 45
Bang 3 Danh sách các thuộc tính của tập dữ liệu NSL — KDÌD 47 Bang 4 Danh sách các lớp của tập dữ liệu UNSW-NBI5 -ccecceseee 48
Bang 5 Danh sách các thuộc tính của tập dữ liệu UNSW-NBI5 49
Bang 6 Danh sách các lớp tan công của tập dữ liệu CICIDS2017 .- 50
Bang 7 Danh sách các thuộc tính của tập dữ liệu CICIDS2017 52
Bang 8 So sánh kết quả giữa các tập dit liệu khác nhau cho mô hình học sâu CNNgồm các tập dữ liệu CICIDS, UNSW-NB15, NSLKDD -5¿©5c55+ 53Bang 9 Kết quả so sánh giữa thuật toán của nhóm và phương pháp PIO khi áp
dụng thuật toán cho mô hình máy học trên tập dữ liệu KDD-CUP99 - 58
Bảng 10 Kết quả so sánh giữa thuật toán của nhóm và phương pháp PIO khi áp
dụng thuật toán cho mô hình máy học trên tap dữ liệu NSL-KDD 58
Bảng 11 So sánh kết quả mô hình tao mẫu đối kháng với phương pháp
Gaussian-based với DT và SVM - LH HH nh TH nh HH Tu HH HH in 59
Bang 12 Kết quả của quá trình chạy với mô hình tong hợp từ Max voting và
Blending 00100555 60
Trang 9DANH MỤC TU VIET TAT
Số thứ tự Thuật ngữ Mô tả
1 ANN Artificial Neural Network
2 BA Bat Algorithm
3 BIM Basic Iteractive Method
4 CNN Convolutional Neural Network
5 CPU Central Processing Unit
6 DDOS Distributed Denial-Of-Service
14 GPU Graphics Processing Unit
15 HIDS Host-Based Intrusion Detection System
16 IDS Intrusion Detection System
17 IOT Internet Of Thing
18 JSMA _ Probabilistic Jacobian-based Saliency Maps Attacks
19 KNN K-Nearest Neighbors
20 ML Machine Learning
Trang 10True Positive
True Positive Rate
Trang 11TÓM TẮT KHÓA LUẬN
Lựa chọn thuộc tính - Feature Selection (FS) là quá trình giảm thiểu dữ liệu
đầu vào cho model bằng việc chỉ sử dụng các dữ liệu có liên quan và loại bỏ những
dữ liệu không liên quan, không có giá trị đối với model Lựa chọn thuộc tính là rấtcan thiết trong bối cảnh hiện tại bởi lẽ trong những năm gan đây, mạng lưới Internetngày càng được mở rộng hơn Cùng với đó là số lượng người dùng, số lượng thiết bịthông minh ngày một tăng dẫn đến lượng dữ liệu lưu thông trên Internet ngày càngnhiều Lợi dụng điều này, nhiều kẻ xấu đã thực hiện hàng loạt các cuộc tan công mang
nhằm vào các mục tiêu từ cá nhân đến tô chức Tuy nhiên, ti lệ thành công của các
cuộc tan công mạng có thể bị giảm thiểu khi mà có sự xuất hiện của các hệ thống pháthiện xâm nhập mang (IDS) sử dung Machine Learning (ML) Các hệ thong IDS nay
sẽ liên tục giám sat lưu lượng mang va đưa ra các cảnh báo khi mà chúng phát hiện
được traffic bất thường, có dấu hiệu tấn công Mặc dù vậy, các mô hình IDS này sẽgặp vấn đề với việc training và độ chính xác bởi độ đa dang của các thuộc tính mang
Do đó mà FS là một lựa chọn cực kỳ hữu ích cung cấp giải pháp cho các hệ thống
phát hiện và phân loại xâm nhập mạng, giúp giải quyết được vấn đề liên quan đến
thời gian training cũng như độ chính xác.
Cụ thê, chúng tôi kết hợp ưu điểm của hai thuật toán là AdaBoost và RandomForest để nâng cao chất lượng của việc lựa chọn thuộc tính Phương pháp này giúpgiải quyết được các vấn đề về thời gian huấn luyện và độ chính xác của các mô hìnhhọc máy Chúng tôi đã đánh giá mô hình trên ba bộ dit liệu với các kết quả rất khả
quan, tùy thuộc vào bộ dữ liệu ma có thé cái thiện được về một trong hai van đề là
thời gian huấn luyện, độ chính xác hoặc cả hai Ngoài ra, khi đem phương pháp củachúng tôi so sánh với một phương pháp nỗi tiếng là Pigeon Inspired Optimization
(PIO) thì phương pháp của chúng tôi đã đem lại độ chính xác cao hơn khi chạy trên cùng bộ dữ liệu là KDDCUP99 và NSLKDD.
Trang 12Ngoài ra, khi thực hiện với các cuộc tấn công Adversarial Examples (AE) thì
độ hiệu quả vẫn rất đáng chú ý, đặc biệt với các cuộc tấn công AE sử dụng Fast
Gradient Signed Method, Basic Iterative Method, Jacobian-based Map Attack.
Trang 13Chương 1 MỞ DAU
1.1 Tên đề tài
Tên tiếng Việt: XÂY DỰNG PHƯƠNG PHAP LỰA CHON THUOC TÍNHHIEU QUA CHO HE THONG PHAT HIỆN XÂM NHẬP MẠNG
Tén tiéng Anh: EFFECTIVE FEATURE SELECTION METHOD FOR
INTRUSION DETECTION SYSTEMS.
1.2 Dat van dé
Internet đã phát triển một cách chóng mặt va làm thay đổi nhiều mặt trongcuộc sống thường nhật của con người Theo như Internet World Stats (IWS), từtháng 6 năm 2017 đến tháng 3 năm 2022, số lượng người dùng Internet tăng từ
3885 triệu lên 5382 triệu [1] Day là một con số không 16 bởi từ những con số ta
biết được hơn 67,8% dân số trên thế giới đã và đang sử dụng Internet Thêm vào
đó là sự phát triển của Internet of Thing (IoT), các nền tảng mạng xã hội, nồi bật
là TikTok Được đưa ra thị trường vào năm 2017, cho đến nay, lượng người dùnghang tháng được báo cáo lên tới 1 tỷ và tổng số người dùng trên toàn thế giới đạt
tới con số 4.8 tỷ Do đó mà dữ liệu lưu thông trên mạng hàng ngày là rất lớn và
gia tăng với tốc độ nhanh chóng Lượng dit liệu khong 16 này có thé gây nên khó
khăn trong việc quản lý và phân tích.
Đối với những người dùng bình thường thì việc lưu lượng tăng cao không
hề có ý nghĩ gì với họ, tuy nhiên, đối với kẻ xấu thì đây có thể coi như là một mỏ
vàng, những kẻ này trong thời đại công nghệ được gọi là tội phạm số Những kẻnày có thé ăn cắp thông tin, tiền bạc, tống tiền, phá hoại hệ thống, tạo ra hỗnloạn trên môi trường mạng, chúng là những đối tượng không lành mạnh đối với
cá nhân người dùng cũng như các doanh nghiệp lớn nhỏ Một ví dụ điển hình đó
là trong thời kỳ Covid vừa qua, số lượng người dùng Internet tăng đột biến, các
công ty lớn nhỏ cũng bắt đầu chuyền qua hình thức làm online, các trường học từ
tat cả các cap bậc cũng chuyên hướng qua sử dụng các phân mêm dạy học trực
Trang 14tuyến, kể cả đến y tế, các bác sĩ cũng thực hiện chuẩn đoán bệnh cho bệnh nhân
thông qua mạng Internet, và rất nhiều lĩnh vực khác cũng làm điều tương tự
Nhận thấy được điểm này, các kẻ tấn công đã thực hiện rất nhiều các cuộc tấn
công dé chuộc lợi Theo thống kê của McAfee về thiệt hại toàn cầu gây ra bởinhững tội phạm số thì vào năm 2018, tổng thiệt hại gây ra bởi tội phạm số làkhoảng 500 tỷ đô la [2] Đến năm 2020, con số này gần như tăng gấp đôi, rơi vào
khoảng 945 tỷ đô la Chính vì vậy mà nhu cầu sử dụng các hệ thống phát hiện
xâm nhập ngày cảng tăng.
Hệ thống phát hiện xâm nhập (IDS) lần đầu tiên được đề xuất vào năm
1986 bởi Denning [3] Day là một mô hình có thé phát hiện các hoạt động độc hại
và các hành vi bất thường trong mang, là nền tảng quan trọng dé bảo vệ mạng.Tuy nhiên, do sự phát trién đôi mới không ngừng của mạng cùng với các kỹ thuậttan công mạng ngày càng tinh vi hon, IDS vẫn là một chủ đề quan trọng đối vớicác nhà nghiên cứu Khi các cuộc tan công xảy ra, kẻ tấn công sẽ nhằm đến tài
sản số, chúng sẽ có găng dé ăn cắp thông tin mật, sửa đổi thông tin, hoặc có thé
là làm hệ thống ngừng hoạt động Vì vậy mà IDS nắm giữ một vai trò rất quantrọng trong việc phát hiện ra dấu hiệu của cuộc tấn công, từ đó phần nào giúp đảmbảo tính toàn vẹn, tính bảo mật và tính sẵn sàng [4] Tuy nhiên ở thời điểm hiệntại, phần lớn các IDS không thé xử lý được những cuộc tan công phức tap, tinh vi
và liên tục biến đôi Các hệ thống IDS truyền thống vẫn có những hạn chế nhấtđịnh (ví dụ như Tường Lửa, Cơ chế kiểm soát truy cập, ), không thể bảo vệ hệthống mạng bởi cuộc tan công phức tạp, ví dụ như DDOS Dé giải quyết van đềnày, sử dụng học máy là một sự lựa chọn hoàn hảo dé cải thiện độ chính xác trongviệc dự đoán cũng như giảm tỷ lệ báo động giả, và thích ứng tốt hơn với các cuộctan công mới
Dù mạnh mẽ là thế nhưng các hệ thống IDS này cũng có những điểm yếuđặc biệt là khi phải xử lý một khối lượng dit liệu không lồ Trong lượng dữ liệu
này, có thê có những thuộc tính gây nhiễu, không liên quan Những thuôc tính này
không chỉ làm chậm đi quá trình sử lý mà còn làm hao tồn rất nhiều tài nguyên.
Trang 15Do đó, sử dụng một hướng phát triển mới trong việc lựa chọn thuộc tính một cách
hiệu quả sẽ giúp làm tăng độ chính xác, giảm thời gian huấn luyện
1.3 Mục tiêu của đề tài
Phương pháp Filter là một cách tiếp cận phô biến để chọn các thuộc tínhcho IDS Phương pháp này chọn tập thuộc tính con tốt nhất bằng cách sử dụngmột kỹ thuật khác được gọi là xếp hạng biến Tat cả các thuộc tinh được cho điểmbởi một tiêu chí xếp hạng phù hợp dựa trên một ngưỡng Bắt kỳ tính năng nào có
điểm dưới ngưỡng đều bị xóa Tuy nhiên, hiệu suất của phương pháp này phụ
thuộc nhiều vào ngưỡng dành riêng cho dit liệu Có nghĩa là việc chọn đúngngưỡng là rất khó khăn Dé giải quyết van dé này, chúng tôi giới thiệu một thuậttoán lựa chọn thuộc mới kết hợp hai thuật toán tổng hợp: Random Forest
và Adaboost Đầu tiên, chọn bộ thuộc tính con S0, sau đó áp dụng thuật toán tổnghợp và sử dụng tiêu chí dé đánh giá Quá trình này được lặp lại cho đến khi baogồm hau hết các trường hợp Sau đó, sử dụng thuật toán phân cụm dé chọn ranhững bộ thuộc tính con có xu hướng cung cấp hiệu suất tốt nhất Những ưu điểm
mà mô hình được đê xuât mang lại:
e Tăng độ chính xác: Những dữ liệu không liên quan hay dé gây nhằm lẫn
sẽ bi loại bỏ.
e Giảm thời gian huấn luyện: Lượng dữ liệu giảm đi giúp cho thuật toán chạy
nhanh hơn.
¢ Loại bỏ những thuộc tính gây nhiễu và giúp giảm tôn thất tài nguyên
1.4 Đối tượng và phạm vi nghiên cứu
1.4.1 Đối tượng nghiên cứu
e Các thuật toán Clustering và Ensemble
e Các thư viện hỗ trợ Machine Learning như TensorFlow, Keras, và Sklearn.
e Xây dựng phương pháp lựa chọn thuộc tính hiệu quả cho hệ thống phát
hiện xâm nhập mạng.
Trang 161.4.2 Pham vi nghiên cứu
Trong đề tài này, chúng tôi tập trung thiết kế tạo ra một phương pháp
lựa chọn thuộc tính dựa trên các thuật toán đã có Có nhiều hướng phát triển
dé cải thiện mô hình học máy, và hướng mà chúng tôi hiện hướng tới nằm ở
bước tiền xử lý đữ liệu trong mô hình học máy Hiện nay, các IDS thông
thường đã phải đối mặt với lượng dữ liệu lớn và nhiều nhiễu Thế nên, chúngtôi sẽ xây dựng một quy trình dé lọc bỏ những thuộc tính thừa, chuẩn hoá các
giá trị và đưa ra tập dữ liệu đê đưa vào mô hình máy học sau này.
Đồng thời, thuật toán do chúng tôi xây dựng sẽ dựa trên phương phápkết hợp thuật toán máy học Ensemble cụ thể ở đây là Random Forest,
Adaboost và Clustering mà đại diện là Gaussian-based và Kmeans Clustering
để tôi ưu hóa về tốc độ xử lý nhưng vẫn giữ được độ chính xác.
Trang 17Chương 2 TONG QUAN
2.1. Co sé ly thuyét
2.1.1 Tổng quan về hệ thống phát hiện xâm nhập
Theo định nghĩa, hệ thống phát hiện xâm nhập (IDS) là hệ thống phần cứnghoặc phần mềm có chức năng giám sát lưu lượng mạng, tự động theo dõi các
sự kiện xảy ra trên hệ thống máy tính, phân tích để phát hiện ra các vấn đề liênquan đến an ninh, bảo mật và đưa ra cảnh báo cho người quản trị [5] Bằngcách thu thập dữ liệu từ các hệ thống và nguồn mạng khác nhau sau đó phân
tích dữ liệu, IDS giúp thực hiện các chức năng chính như sau: Bảo vệ tính toàn
vẹn, tính bí mật, tính sẵn sàng của dữ liệu; giám sát lưu lượng mạng và các
hoạt động khả nghi; báo cáo tình trạng mạng cho người quản tri Do đó, IDS
cần phải xử lý được các gói tin trong môi trường phức tạp như lưu lượng mạng
lớn và phân phối dữ liệu không đồng đều IDS được phát triển thêm thành hệthống phát hiện xâm nhập mạng (NIDS) và hệ thống phát hiện xâm nhập dựatrên máy chủ (HIDS) [6] Error! Reference source not found cho thay tongquan chung về IDS dựa trên các kỹ thuật phát hiện được triển khai và môi
trường triển khai
Theo như mô hình phân loại dưới đây, dựa trên những phương pháp và kỹ
thuật khác nhau mà có thể xây dựng lên một IDS Ví dụ như IDS dựa trên
mạng (NIDS) hay IDS dựa trên máy chủ (HIDS), IDS phát hiện dựa trên dấuhiêu và IDS phát hiện dựa trên bất thường Có những IDS chỉ theo dõi và cảnhbáo, có IDS sẽ thực hiện hành động khi phát hiện xâm nhập Cụ thể như sau:
e NIDS: Hệ thống phát hiện xâm nhập mạng được đặt tại một điểm “chiến
lược” hoặc những điểm giám sát lưu lượng đến và đi từ tất cả các thiết bị
trên mạng.
e HIDS: Hệ thống phát hiện xâm nhập dựa trên máy chủ chạy trên máy chủ
riêng hoặc một thiết bị đặc biệt trên mạng
Trang 18e Signature-Based: La IDS hoạt động dựa trên dấu hiệu, giám sát các gói tin
trên mạng và so sánh chúng với cơ sở dit liệu từ những mối đe dọa đã biết.Tuy nhiên không thé phát hiện ra các mối đe dọa mới
e Anomaly-Based: IDS này sẽ phát hiện mối đe dọa dựa trên sự bat thường
Nó giám sát lưu lượng mạng và so sánh với baseline đã được thiết lập
Baseline sẽ xác định đâu là mức bình thường của mạng có thé kê đến như:loại băng thông thường được dùng, giao thức thường dùng, cổng và thiết
bị thường kết nối với nhau, cảnh báo cho quản trị viên mạng hoặc ngườidùng khi phát hiện lưu lượng truy cập bất thường hoặc những khác biệt
đáng kê so với baseline.
og Machine Learning "
Statistical Method Method Data-mining Method
Hình 1 Tổng quan về hệ thống phát hiện xâm nhập2.1.2 Tổng quan về Hệ thống IDS ứng dụng cơ sở Máy học
Trang 19học máy (ML) có thé được kết hợp với IDS giúp nâng cấp cho các hệ thống
với khả năng tự học và tự cải thiện.
Về mặt an ninh, đã có một số lĩnh vực sử dụng học máy để bảo vệ người
dùng và mạng chống lại các cuộc tấn công tiềm an Một ứng dụng cơ bản
mà nhiều người đã sử dụng học máy mà họ không hé dé y đến, đó là bộ lọcphát hiện thư rác trong Email Nhờ sử dụng học máy mà số lượng thư rácngười dùng nhận đã giảm đáng kê Dién hình là với Gmail [7] Năm 2015,Google tuyên bố chặn 99,9% thư rác sau khi áp dụng Mạng thần kinh nhân
tạo (ANN) vào bộ lọc thư rác của họ và sau đó họ thông báo là đã chặn
khoảng 100 triệu email spam mỗi ngày sau khi giới thiệu phần framework
học máy mã nguồn mở của họ - Tensorflow.
2.1.2.2 Cac hướng cải thiện mô hình Máy học
Quá trình phát triển một mô hình học máy phải trải qua nhiều giai đoạn,
bắt đầu từ việc thu thập dữ liệu cho đến xây dựng mô hình Vì thế mà cũng
có nhiều hướng dé cải thiện mô hình học máy, cụ thé là qua từng giai đoạn
sẽ có những cách phát trién khác nhau Bước này giúp trích xuất thêmthông tin tù dữ liệu hiện có Thông tin mới được trích xuất dudi dạng cáctính năng mới Một sô ví dụ dé cải thiện mô hình có thé ké đến như: Tríchxuất thuộc tính (Feature Engineering) giúp trích xuất được nhiều thông tin
hơn từ tập dữ liệu hiện có, lựa chọn thuộc tính (Feature Selection) giúp tìm
ra tập hợp con tốt nhất của các thuộc tính, đa dạng thuật toán (MultipleAlgorithms) sử dụng nhiều thuật toán khác nhau dé giải quyết bài toán vàchọn thuật toán cho kết quả tốt nhất, điều chỉnh thuật toán (AlgorithmTuning) để tìm ra những tham số phù hợp giúp làm tăng độ chính xác của
mô hình, phương pháp kết hợp (Ensemble Method) — một trong những
hướng tiếp cận phổ biến nhất, là một kỹ thuật sử dụng kết hợp nhiều mô
hình “yếu? dé tao ra một kết quả tốt hơn
Trang 202.1.3 Các kỹ thuật chọn lọc thuộc tính
Lua chọn thuộc tính chủ yếu tập trung vào việc lựa chọn tập thuộc tính từ
dữ liệu đầu vào, tập này có thé dùng dé mô tả dữ liệu đầu vào và làm giảm ảnh
hưởng từ các dữ liệu gây nhiễu và không liên quan trong khi vẫn giữ được kếtquả dự đoán tốt Đề loại bỏ những thuộc tính không liên quan, Dé loại bỏ một
thuộc tính không liên quan, cần có một tiêu chí lựa chọn thuộc tính có thể đolường mức độ liên quan của từng thuộc tính với lớp/nhãn đầu ra Dưới góc độcủa máy học, nếu một hệ thống sử dụng các thuộc tính không liên quan, nó sẽ
sử dụng thông tin này cho dữ liệu mới dẫn đến tổng quát hóa kém Loại bỏ
thuộc tính không tạo ra các thuộc tính mới vì nó sử dụng chính các thuộc tính
đầu vào dé giảm số lượng của chúng Khi mà số lượng thuộc tính tăng thì việcđánh gia trực tiếp tất cả các tập con của các thuộc tính cho một dữ liệu nhấtđịnh trở thành một van đề khó khăn hon Do đó phải sử dụng một quy trình tối
ưu có thé loại bỏ dit liệu dư thừa bang các phép tính có thé kiểm soát được
Các phương pháp loại bỏ thuộc tính thường được chia thành các phương
pháp Filter và phương pháp Wrapper Phương pháp Filter hoạt động như tiền
xử lý để xếp hạng các thuộc tính trong đó các thuộc tính được xếp hạng cao
được chọn và áp dụng cho một Bộ dự đoán Trong các phương pháp Wrapper,
tiêu chí lựa chọn thuộc tính là hiệu suất của Bộ dự đoán, tức là Bộ dự đoán
năm trong một thuật toán tìm kiếm sẽ tìm ra một tập hợp con cho kết quả hiệusuất dự báo cao nhất Các phương pháp Embedded bao gồm lựa chọn thay đổinhư một phần của quá trình huấn kuyện mà không cần chia nhỏ dữ liệu thànhcác bộ huấn luyện và kiểm tra Trong đề tài này, chúng tôi sẽ tập trung vào các
phương pháp lựa chọn tính năng sử dụng phương pháp học có giám sát.
10
Trang 21) |
Filter Method Wrapper Method Embedded Method
Hình 2 Tổng quan các phương pháp lựa chọn thuộc tính.
2.1.4. Tiêu chí đánh giá tính hiệu quả của các thuật toán kiểm chứng
2.1.4.1 Thuật toán máy học cơ bản
a Linear Regression Trong cac phuong phap hoc may duoc su dung, Linear
Regression [8] vẫn luôn được ứng dung thường xuyên và rộng rãi vì ưu
điểm đơn giản của thuật toán mà vẫn mang lại hiệu quả cao Về cơ bảnthi Linear Regression là một phương pháp thống kê dé hồi quy dữ liệuvới bién phụ thuộc có giá tri liên tục trong khi các biến độc lập có thểmột trong hai giá trị phân loại hoặc liên tục Một cách hiểu khác thìLinear Regression là một phương pháp dé dự đoán biến phụ thuộc Y
dựa trên giá trị của biến độc lập X (Ở một trường hợp áp dụng phức
tạp hơn khi chúng ta có nhiều biến độc lập X hay cần dự đoán cho nhiềubiến phụ thuộc Y) Nó có thể được sử dụng cho các trường hợp khichúng ta muốn dự đoán một số lượng liên tục
Cụ thê trong quá trình thực nghiệm chúng tôi đã thử với mô hìnhLinear Regression đóng vai trò như mô hình dé đánh giá thuộc tính
Việc chọn mô hình đánh giá tôt cũng là một vân đê lớn mà trong dự án
lãi
Trang 22này cân phải giải quyết, dựa trên sự khác nhau về tinh chat của các tập
dữ liệu và yêu câu cuôi cùng của thuật toán đê đưa ra lựa chọn thuộc tính phù hợp.
b K-Nearest Neighbors
K-Nearest Neighbors (KNN) cũng là một thuật toán đơn giản
thuộc kiểu học không giám sát cũng được áp dụng khá nhiều nhờ thuậttoán đơn giản nhưng vẫn đáp ứng được nhu cầu của bài toán được giao.Điểm khác biệt của thuật toán này từ việc đây là một thuật toán họckhông giám sát, tức là nó không học một điều gì từ tập dữ liệu, mọi tính
toán và dự đoán đều được thực hiện khi nó cần dự đoán nhãn của một
dữ liệu mới Lớp (nhãn) của điểm dit liệu mới có thé được dự đoán dựa
trên giá trị lớp (nhãn) của K điểm dữ liệu gần nó nhất
Tuy nhiên vì là một thuật toán học không giám sát nên trong vài
trường hợp kết quả dự đoán của thuật toán này không đạt yêu cầu Cụthể khi thực nghiệm giá trị K quá nhỏ nên dé gặp nhiễu, thời gian huấn
luyện dé đạt đến điểm tối ưu cũng lâu hơn, đặc biệt là phải có bước xử
lí và chuẩn hoá kiêu dữ liệu thành các yêu tố định tính
c Decision Tree
Decision Tree [9] là một cây phân cấp có cau trúc được dùng dé
phân lớp các đối tượng dựa vào các dãy các luật Cấu trúc của một cây
gồm mỗi nút biéu diễn một đặc trưng (tính chất), mỗi nhánh biéu diễnmột quy luật và mỗi lá biéu diễn một kết quả (giá trị cụ thé hay mộtnhánh tiếp tục) Nó được dùng trong cả bài toán phân lớp lẫn quy hồi
Ưu điểm của thuật toán này đó chính là có thể làm việc với cả dữ liệu
số và dữ liệu phân loại, có khả năng làm việc với dữ liệu lớn, có thể xác
thực mô hình băng cách sử dụng các kiểm tra thống kê Mặc dù vậy,
thuật toán này cũng có những điểm chưa tốt, cụ thé là mô hình câyquyết định phụ thuộc rất nhiều vào dữ liệu, với một thay đổi nhỏ của
12
Trang 23dữ liệu cũng có thể ảnh hưởng lớn đến cấu trúc mô hình của cây Ngoài
ra mô hình Decision Tree còn hay gặp van dé overfitting do khi mà cây
đạt đến một độ sâu nhất định thì sẽ tách được các node là chỉ chứa dữ
liệu một lớp nhất định
d Support Vector Machine (SVM)
SVM [10] là một thuật toán giám sát có thể được sử dụng trong
cả bài toán phân loại và quy hỏi, tuy nhiên thuật toán này lại chủ yêuđược dùng trong việc phân loại Trong thuật toán này, ta vẽ đồ thị dữliệu là các điểm trong n chiều ( ở đây n là SỐ lượng các thuộc tính) với
giá trị của mỗi thuộc tính sẽ là một phần liên kết Sau đó thực hiện tìm
"đường bay" (hyper-plane) phân chia các lớp Hyper-plane nó chỉ hiểuđơn giản là 1 đường thăng có thé phân chia các lớp ra thành hai phanriêng biệt SVM là một kỹ thuật phân lớp khá phổ biến, nó thé hiệnđược nhiều ưu điểm ngay cả khi làm việc trên các tập dữ liệu lớn Một
số ưu điểm có thể kế đến như xử lý trên không gian số chiều cao, tiết
kiệm bộ nhớ do chỉ có một tập hợp con của các điểm được sử dụng
trong quá trình huấn luyện và ra quyết định thực tế cho các điểm dữ
liệu mới nên chỉ có những điểm cần thiết mới được lưu trữ trong bộ nhớkhi ra quyết định, khả năng áp dụng Kernel mới cho phép linh độnggiữa các phương pháp tuyến tính và phi tuyến tính từ đó khiến cho hiệu
suất phân loại lớn hơn
Không thuật toán nào là hoản hảo và SVM cũng vậy, nó cũng có
những hạn chế nhất định Trong trường hợp số lượng thuộc tính (p) của
tập dữ liệu lớn hơn rất nhiều so với số lượng dữ liệu (n) thì SVM cho
kết quả khá tôi
2.1.4.2 Thuat toán Ensemble
a Tổng quan về thuật toán Ensemble
13
Trang 24Khi nói về thuật toán Ensemble, có thé nghĩ ngay đến câu “Mộtcây làm chăng nên non, ba cây chum lại nên hòn nui cao’ Khi thử mớimột mô hình, kết quả cho ra lại không tốt lắm, ta sẽ nghĩ ngay đến việclựa chọn một mô hình khác và cứ thế đến khi tìm được một mô hình có
lẽ là tốt hơn hết thì ta lại phải chỉnh sửa lại thuật toán cũng như cáctham số đề tối ưu hóa kết quả nhận được về độ chính xác của mô hình.Chỉ để làm những việc đó sẽ rất mất thời gian, vì thế mà ý tưởng về
viéc két hợp các mô hình lại để tạo ra một mô hình mang lại hiệu quả
cao hơn.
b Các biến thé của thuật toán Ensemble
Các biển thé của thuật toán Ensemble có thể được chia thành 2phần chính đó là các kỹ thuật Ensemble đơn giản (Basic Ensemble
Techniques), kỹ thuật Ensemble nâng cao (Advanced Ensemble Techniques).
Đầu tiên sé là về các kỹ thuật Ensemble đơn giản, một số đại
diện cho kỹ thuật này là Max Voting, Averaging va Weighted
Averaging Phương pháp Max Voting thường được sử dụng cho các
vấn đề phân loại Trong kỹ thuật này, nhiều mô hình được sử dụng đểđưa ra dự đoán cho mỗi điểm dữ liệu Các dự đoán của mỗi mô hìnhđược coi như một "phiếu bầu" Các dự đoán nhận được từ phần lớn các
mô hình được sử dụng làm dự đoán cuối cùng Tương tự như kỹ thuật
Max Voting, nhiều dự đoán được thực hiện cho mỗi điểm dữ liệu trong
kỹ thuật Averagin Trong phương pháp này, ta lấy trung bình các dự
đoán từ tat cả các mô hình và sử dung nó dé đưa ra dự đoán cuối cùng.Averaging có thé được sử dụng để đưa ra dự đoán trong các bai toánhồi quy hoặc trong khi tính toán xác suất cho các bài toán phân loại.Cuối cùng là kỹ thuật Weighted Average, đây là một phần mở rộng củaphương pháp Averaging Tất cả các mô hình được ấn định các trọng số
khác nhau xác định tầm quan trọng của từng mô hình để dự đoán.
14
Trang 25Tiếp theo là các kỹ thuật Ensemble nâng cao, các đại diện sẽ là
Stacking, Blending, Bagging, Boosting Stacking là một kỹ thuật
Ensemble sử dung các dự đoán từ nhiều mô hình ví dụ như Decision
Tree, Knn hoặc SVM dé xây dung một mô hình mới Mô hình này được
sử dụng dé đưa ra các dự đoán trên bộ thử nghiệm Kỹ thuật Blendingtuân theo cùng một cách tiếp cận như Stacking nhưng chỉ sử dụng một
bộ giữ (xác nhận) từ tập hợp huấn luyện dé đưa ra dự đoán Nói cách
khác, không giống như Stacking, các dự đoán chỉ được thực hiện trên
tập hợp giữ lại Tập hợp lưu giữ và các dự đoán được sử dụng để xây
dựng một mô hình được chạy trên tập kiểm tra Ý tưởng dang sau viéc
Bagging là kết hợp các kết quả của nhiều mô hình ví dụ như tat cả cácDecision Tree dé có được một kết quả tổng quát N ếu bạn tạo tất cả các
mô hình trên cùng một tập dữ liệu và kết hợp chúng có khả năng cao là
những mô hình này sẽ cho cùng một kết quả vì chúng nhận được cùng
một đầu vào Vì vậy, dé giải quyết van dé này phải sử dụng một trongnhững kỹ thuật là Bootstrapping Bootstrapping là một kỹ thuật lay mautrong đó ta tạo ra các tập hợp con các quan sát từ tập dữ liệu ban dau,với sự thay thế Kích thước của các tập hợp con giống với kích thướccủa tập hợp ban dau Kỹ thuật Bagging sử dụng các tập hợp con này dé
có được ý tưởng hợp lý về phân phối (tập hợp hoàn chỉnh) Kích thước
của tập hợp con được tạo dé đóng bao có thể nhỏ hơn tập hợp ban dau.Cuối cùng là Boosting, nó là một quá trình tuần tự, trong đó mỗi môhình tiếp theo có gắng sửa chữa các lỗi của mô hình trước đó Các môhình thành công phụ thuộc vào mô hình trước đó Tham khảo tổng quan
hơn ở mô hình bên dưới:
15
Trang 26Học tỗng hợp
Các kỹ thuật nâng
cao
Biểu quyết tối đa Tính trung bình Weighted Average Đóng gói Thúc đây
Hình 3 Các biến thể của thuật toán Ensemble
|Các kỹ thuật đơn giản
c Random Forest Random Forest là một thuật toán máy hoc phô biên trong kỹ
thuật học có giám sát Nó có thể được dùng đề giái quyết cả hai bài toán
về phân loại và quy hồi trong học máy Dựa trên ý tưởng về hocEnsemble, sử dụng kết hợp nhiều bộ phân loại để giải quyết các bàitoán phức tạp và cải thiện hiệu suất của mô hình Thay vì dựa vào mộtDecision Tree thì thuật toán Random Forest sẽ lay kết qua dự đoán của
mỗi cây và dựa vào số lượng bỏ phiếu kết quả dự đoán nhiều nhất dé
đưa ra kết quả cuối cùng Khi có càng nhiều Cây thì độ chính xác sẽcàng tăng và hạn chế được van dé về overfitting Dưới đây là mô hình
giải thích cách hoạt động của thuật toán:
16
Trang 27Hình 4 Các bước của thuật toán Random Forest.
Cụ thể các bước của thuật toán có thể giải thích như sau:
e Bước 1: Lựa chọn ngẫu nhiên n thuộc tính từ tập thuộc tính ban đầu
e Bước 2: Xây dựng Cây quyết định ứng với từng tập thuộc tính đã chọn
từ Bước 1.
e_ Bước 3: Chọn số lượng N Cây quyết định muốn có
e Bước 4: Lap lại Bước 1 và 2
e Bước 5: Lựa chọn ngẫu nhiên m Cây quyết định từ hệ thống cây đã xây
dựng, với mỗi mẫu kiểm tra, mỗi Cây quyết định sẽ đưa ra dự đoán về
mâu nào thuộc về lớp nào, kêt quả cuôi cùng sẽ là bên có sô lượng biêu
quyết cao nhất
Các ưu điểm mà Random Forest mang lại có thé ké đến như khả năng
dự đoán mạnh, không cần phải chuẩn hóa dit liệu, chạy tốt ngay cả trên các bộ
dữ liệu lớn Mặc dù vậy, thuật toán này cũng có hạn chế, hồi quy là một vấn
đề, hiện nay có rất nhiều mô hình hồi quy giới khoa học dữ liệu nên Random
Forest có thê không phải là cách tiếp cận hồi quy phù hợp trong mọi ứng dụng
do nó sẽ không thé dự đoán bat kỳ giá trị nào ngoài các giá trị có sẵn vì tínhtrung bình là một phần quan trọng của mô hình Random Forest Vì vậy, do
17
Trang 28Random Forest hầu như không có đối sánh trong hau hết các giải pháp phân
loại, nó có thé bị hạn chế với hồi quy, đặc biệt khi di liệu có ban chất tuyến
tính.
d Ada Boost
AdaBoost (Adaptive Boost) là một thuật toán học mạnh, giúp daynhanh việc tạo ra một bộ phân loại mạnh (strong classifier) bằng cách chọncác đặc trưng tốt trong một họ các bộ phân loại yếu (weak classifer — bộ phânloại yếu) và kết hợp chúng lại tuyến tính bằng cách sử dụng các trọng số Điều
này thật sự cải thiện dan độ chính xác nhờ áp dụng hiệu quả một chuỗi các bộ
phân loại yếu Adaboost sử dụng khái niện trọng số (weight) dé đánh dau các
mẫu nhận dạng Trong quá trình huấn luyện, cứ mỗi bộ phân loại yếu được
xây dựng, thuật toán sẽ tiến hành cập nhật lại trọng số dé chuẩn bị cho việcxây dựng bộ phân loại yếu kế tiếp thông qua việc tăng trọng số của các mẫu
bị nhận dạng và giảm trọng số của các mẫu được nhận dạng đúng bởi bộ phânloại yếu vừa xây dựng Bang cách này, các bộ phân loại yếu sau có thé tấptrung vào các mẫu mà các bộ phân loại yếu trước đó làm chưa tốt Sau cùng,các bộ phân loại yếu dẽ được kết hợp tùy theo mức độ “ tốt” của chúng dé tao
dụng nên bộ phân loại mạnh.
Các bước cu thé của thuật toán có thé được giải thích như sau:
e Bước 1: Lựa chon và xây dựng các học yếu (các cây quyết định nhỏ),
khời tạo giá trị trọng số với mỗi cây là 1/N với N cây
e Bước 2: Chọn tập huấn luyện con và bắt đầu quá trình huấn luyện
e_ Bước 3: Với những mẫu được dự đoán ở ngay vòng cuối, trọng số của
chúng sẽ bị giảm xuống
e Bước 4: Tăng trọng số của những mẫu được dự đoán sai
e Bước 5: Quay lại bước 2 với những giá trị trọng số mới này Lap lại
bước 3 và 4, thuật toán Adaboost buộc các học yếu tập trung vào các
mâu dự đoán sai, cải thiện độ chính xác tông quát.
18
Trang 29Xét về ưu điểm thì Adaboost tốn ít thời gian dé hiện thực, nhưng đổi
lại thì độ chính xác sẽ không cao khi đem so sánh với Random Forest, tuy
nhiên trong một số trường hợp vẫn có thể sử dụng dé tối ưu hóa hiệu quả của
trôi hơn so với việc áp dụng các thuật toán học máy một cách riêng lẻ Mặc
dù mức độ phức độ phức tạp của thuật toán có tăng lên nhưng có thể chấp
nhận được dựa trên những kết quả mà nó có thể mang lại Tuy nhiên trongquá trình nghiên cứu về cách sẽ áp dụng các thuật toán học tổng hợp, chúng
tôi muốn được đi xa hơn nữa, cụ thể là sử dụng kết hợp các thuật toán học
tong hợp khác nhau dé mang lại kết quả cao hon và tính linh hoạt cũngđược tăng lên, thuận tiện hơn khi áp dụng với nhiều tập dữ liệu ứng với
môi trường khác nhau.
Mỗi thuật toán học tổng hợp sẽ phù hợp với một tập dữ liệu với một sốtiêu chí nhất định Trong quá trình nghiên cứu thì chúng tôi cũng đã chọnđược một số những tiêu chí như độ chính xác, độ thích ứng của thuật toán,ngoài ra thời gian huấn luyện cũng là một yêu tố quan trong dé xem xét
thuật toán có được chọn hay không Đề đảm bảo cho kết quả của mô hình
cuối luôn 6n định ở mức cao, chúng tôi đã thực hiện phương pháp điểmgiới hạn trong đó thuật toán chỉ được tiếp tục thực hiện miễn là kết quả ở
dưới điểm giới hạn, nếu vượt qua điểm giới hạn thì sẽ kết thúc thuật toán
tại diém đó.
Các công trình liên quan
Paulo M Mafra và cộng sự đề xuất một hệ thống phát hiện xâm nhập dựa trênthuật toán Gen di truyền (Genetic Algorithm) và thuật toán Máy hỗ trợ vector(Support Vector Machine - SVM) dé có thé cải thiện các tham số của SVM [11]
19
Trang 30Nói cách khác mô hình của họ đã sử dụng thuật toán Gen di truyền dé tối ưu hóa
hiệu quả của Máy hỗ trợ vector Model này đã mang lại kết quả với độ chính xác
lên đến 80.14% Tương tự như vậy, L Zhuo và cộng sự đã đề xuất một mô hình
hệ thống phát hiện xâm nhâp tương tự sử dụng thuật toán Gen di truyền dé tối ưuhóa các tham số của Máy hỗ trợ vector với cách thức tương tự như lựa chọn thuộc
tính dé có được độ chính xác tối da và sử dụng số lượng tối thiểu thuộc tính [12]
Nhóm tác giả Y Zhou, G Cheng, S Jiang, and M Dai [13] đã phát trién một
hệ thống phát hiện xâm nhập sử dụng một framework kết hợp thuật toán dơi (BA)
và lựa chọn thuộc tính dựa trên tương quan (CES) Kết quả kiểm tra sử dụng tập
dữ liệu CIC-IDS2017 Thử nghiệm sử dụng các thông số đánh giá khác nhau, bao
gồm dương tính giả, dương tính thật, độ chính xác, cảnh báo sai và hệ số tương
quan Matthews Các kết quả chỉ ra rằng cách tiếp cận CFSBA kết hợp cho độchính xác cao 96,76%, tỷ lệ phát hiện 94,04% và mức báo động giả thấp 2,38%
Rikhtegar và cộng sự [14] đã phát triển một mô hình lựa chọn thuộc tính dựatrên cơ chế học tập liên kết Họ đã lần lượt sử dụng Máy hỗ trợ vectơ (SVM) và
thuật toán phân cụm K-Medoids thuật toán Ngoài ra, phương pháp này cũng sử
dụng bộ phân loại Naive Bayes và sử dụng tập dữ liệu KDD CUP99 đề đánh giá
Mô hình đề xuất được đánh giá bằng cách sử dụng ba chỉ số hiệu suất thiết yếu:
độ chính xác, tỷ lệ phát hiện và tỷ lệ báo động Các chỉ số hiệu suất được tạo bằngcách sử dụng TN (âm tính đúng), FP (dương tính giả) và FN (phủ định sai) Kếtquả thử nghiệm được so sánh với baphương pháp lựa chọn tính năng khác Kếtquả thử nghiệm cho thấy rằng phương pháp được đề xuất tạo ra độ chính xác tốt
hơn (91,5%), tỷ lệ phát hiện (90,1%) và tỷ lệ cảnh báo sai (6,36%).
Shadi Aljawarneha và cộng sự [15] đã phát triển một mô hình lai được sử dụng
để ước tính mức độ ngưỡng phạm vi xâm nhập dựa trên các thuộc tính tối ưu của
dữ liệu giao dịch mạng có sẵn để đảo tạo Các thí nghiệm được kiểm tra trên bộ
dữ liệu NSL-KDD với kết quả đáng kể Độ chính xác của phương thức được déxuất là 99,81% đối với lớp nhị phân và 98,56% đối với đa lớp Tuy nhiên, phương
20
Trang 31pháp này có một số vấn đề với tỷ lệ âm tính sai cao và âm tính giả thấp, được giải
quyết băng cách sử dụng phương pháp kết hợp: Thuật toán bỏ phiếu (VoteAlgorithm) với Tăng thông tin (Information Gain) và một thuật toán kết hợp baogồm các bộ phân loại sau: J48, Meta Pagging, RandomTree, REPTree,AdaBoostMI, DecisionStump và Naive Bayes Các kết quả cuối cùng rất đángquan tâm với độ chính xác tốt hơn, âm tính giả cao tỷ lệ và tỷ lệ dương tính giả
thấp
Nhóm tác giả S.Mohammadi, H Mirvaziri, M Ghazizadeh-Ahsaee,va H.
Karimipour [16] đã đề xuất một hệ thống phát hiện xâm nhập dựa trên lựa chon
đối tượng và thuật toán phân cụm sử dụng phương pháp Filter và Wrapper - nhóm
đối tượng được đặt tên dựa trên thuật toán hệ sé tương quan tuyén tinh (FGLCC)
và thuật toán mực nang (CFA), tương ứng Cây quyết định (Decision Tree) được
sử dụng làm bộ phân loại trong phương pháp đề xuất Dé xác minh hiệu suất,phương pháp đề xuất đã được áp dụng trên bộ dữ liệu KDD Cup 99 Kết quả thu
được rất tố, với độ chính xác cao 95,03% và tỷ lệ phát hiện 95,23% với tỷ lệ dương
tính giả 1.65%.
Các công trình nêu trên đều rất đáng kinh ngạc và đều cho hiệu quả khả quan,tuy nhiên các nhà nghiên cứu vẫn tiếp tục tìm kiếm phát triển thêm các phương
pháp đề việc phát hiện xâm nhập cho ra kết quả tốt hơn về tốt độ xử lý cũng như
tỷ lệ cảnh báo giá Đề tài này vẫn là một đề tài mới và đầy hứa hẹn.
21
Trang 32Chương 3 NỘI DUNG VÀ PHƯƠNG PHÁP
3.1 Tổng quan giai pháp
Đề thực hiện được mục tiêu của bài nghiên cứu, chúng tôi quyết định chia
thành hai phần chính Đầu tiên là xây dựng một mô hình máy học bao gồm thuậttoán mà nhóm đã đề xuất và thứ hai là một môi trường dé có thé thử nghiệm vađánh giá chính xác mô hình đã đề xuất Dé giữ bài nghiên cứu được đơn giản vàtập trung vào vấn đề chính, nhóm sẽ sử dụng một mô hình máy học sẵn có, đượcnghiên cứu và xây dựng dé thích ứng với các tập dữ liệu tan công mang phô biến.Bằng việc cải thiện kết quả của mô hình trên những tập dữ liệu này, chúng tôi sẽphần nào chứng minh được tính hiệu quả của mô hình đề xuất Bằng cách này khi
so sánh thuật toán của chúng tôi với các phương pháp khác tương đương thì việc
chọn ra tiêu chí để so sánh và kết quả so sánh cũng sẽ khách quan hơn Nhóm dựđịnh sẽ thực hiện so sánh với ít nhất hai phương pháp phổ biến khác dé giúp chobài nghiên cứu thêm phần thuyết phục
Phần thứ hai của công trình nghiên cứu sẽ tập trung vào việc đánh giá thuậttoán trước các cuộc tan công Ở đây nhóm dự định sẽ xây dựng một mô hình giảlập tan công, với một mô hình dé nhận biết cuộc tan công Bằng việc chạy thử mô
hình với tập dữ liệu chưa qua xử lí và tập dữ liệu kết quả của thuật toán và đánh
giá kết quả, chúng tôi sẽ biết được việc cải thiện tập dữ liệu có thật sự hiệu quảhay không, sau khi tìm hiéu thì chúng tôi quyết định sử dụng một mô hình đã được
hỗ trợ sẵn, sau đó dé mở rộng và tìm ra phương pháp tối ưu nhất, chúng tôi còn
sử dụng nhiều thuật toán máy học khác nhau dé đánh giá và thậm chí kết hợp cácthuật toán dé tim ra một mô hình nhận biết cuộc tan công mang lại hiệu quả caonhất với tập dữ liệu mà chúng tôi cung cấp
22
Trang 333.2 Hướng phát triển của công trình nghiên cứu
3.2.1 Tìm hiểu, phân tích về các thuật toán chọn lọc nói chung
Hiện nay việc áp dụng các mô hình học máy và mô hình học sâu ngày càng
được áp dụng rộng rãi và kết quả mang lại rất cao bao gồm tính tường minh,
độ chính xác hay độ linh hoạt Tuy nhiên ngoài việc chỉ thu thập thật nhiều dữliệu để đưa vào mô hình, việc xử lí và chuẩn hoá dữ liệu cũng đóng vai tròquan trọng không kém nhất là khi cần cải thiện mức độ chính xác ở mức độcao Và thực tế cho thay rằng không chỉ ở các dự án mang tính nghiên cứu mà
cả với các dự án sử dụng môi trường thực tế, việc xử lí tập dữ liệu tốt có ảnh
hưởng rât lớn đên kêt quả cuôi cùng của mô hình.
Trong quá trình xây dựng một mô hình máy học (để phục vụ mục đíchnghiên cứu hoặc áp dụng thực tế), thường chỉ một số ít thuộc tính trong tập dữliệu là thật sự tạo ra kết quả hữu ích và phần lớn số còn lại thường kém hiệu
quả hơn hay có thê xem là dư thừa, thậm chí có hại cho quá trình huấn luyện
mô hình Điều này có thé ảnh hưởng gián tiếp đến hiệu suất và kết quả đánhgiá của mô hình tổng thể Chính vì lí do đó, cần phải có một bước tiền xử líđối với các thuộc tính của tập dữ liệu, trước khi đưa vào mô hình huấn luyện,
quá trình này ngoài việc đánh giá được mức độ ảnh hưởng của từng thuộc tính
hay từng nhóm thuộc tính đến hiệu quả của mô hình ta còn có thể lọc hay loại
bớt những thuộc tính mà theo đánh giá là có ảnh hưởng xấu đến mô hình Toàn
bộ quá trình này được thể hiện trong bước Trích xuất thuộc tính
3.2.1.1 Cac kiến trúc thuật toán phố biến
Sự khác nhau giữa các thuộc tính khi được đánh giá là có sử dụng kết
qua dự đoán của mô hình với mẫu dữ liệu tương ứng hay không Nếu có
thì phương pháp đó có thê hiểu tương tự như học giám sát, còn nếu không
sử dụng kết quá của nhãn dữ liệu thì sẽ là phương pháp không giám sát.Một cách hiểu khác dé chia phương pháp của trích xuất dit liệu là phương
pháp lọc thuộc tính và phương pháp đóng gói thuộc tính, hai phương pháp
23
Trang 34này trong mọi trường hợp áp dụng đều được xem là phương pháp có giám
sát vì nó sử dụng kết quả của một mô hình đánh giá khác đề tăng tính khách
quan khi đưa ra quyết định xem thuộc tính đang xét là thực sự hữu ích với
mô hình hay không.
3.2.1.2 Phuong pháp Filter (Filter method)
Phương pháp Filter dựa trên những thuộc tinh duy nhất của dữ liệu déđánh giá và chọn ra một tập con các thuộc tính, bang cach sử dung các tiêu
chí đánh giá được trích rút ra từ tập dữ liệu, như khoảng cách, thông tin,
độ phụ thuộc, tính nhất quán Cụ thé, phương pháp Filter sử đụng tiêu chíđiển hình của kỹ thuật xếp hạng và phương pháp thứ tự xếp hạng cho việclựa chọn các biến Lý do của việc sử dụng phương pháp xếp hạng này là vì
tính đơn giản, hiệu quả cao và có thể tìm ra các thuộc tính phù hợp, đồng
thời loại bỏ các thuộc tính không phù hợp trước khi thực hiện quá trình
phân loại Phương pháp Filter thường được dùng như bước tiền xử lý dữ
liệu Quá trình này cũng có tính độc lập với thuật toán máy học Các thuộc
tính được xếp hạng dựa trên các giá trị thông kê, trong đó các giá trị thống
kê này xác định mối tương quan giữa các thuộc tính với các biến đầu ra
Có một số ví dụ cho phương pháp Filter nay: Mutual Information(MD,
Pearson Correction, Chi-square
Chon tap con thuộc
tính tôt
Tập toàn bộ thuộc
tinh F—————>\| Thuật toán hoc tập /}-—> Hiệu suât
Hình 5 Phương pháp Filter.
3.2.1.3 Phương pháp Wrapper (Wrapper method)
Phương pháp này tìm các thuộc tính mà phù hợp nhất với thuật toánmáy học với mục đích cải thiện hiệu suất khai thác dữ liệu Phương phápnay dùng độ chính xác dự đoán dé phân loại thuộc tính Một số ví dụ điển
24
Trang 35hình của phương pháp Wrapper nay là Forward Feature Selection, Backward Feature Elimination, Recursive Feature Elimination.
e Forward Feature Selection: Quy trinh bat dau voi một tập hợp các thuộc
tính trống Thuộc tính tốt nhất sẽ được chọn và trên vào tập trống sau
mỗi lần thực hiện vòng lặp
e Backward Feature Elimination: Quy trình bat dau voi mét tap thudc
tinh day đủ của dữ liệu Sau mỗi vòng lặp thì sẽ loại bỏ đi các thuộctính xấu nhất
e Recursive Feature Elimination: Quy trình tìm kiếm tập con đặc trưng
có thể hoạt động tốt nhất Phương pháp này tạo ra các vòng lặp thựchiện và xác định được các thuộc tính tốt hoặc xấu nhất Sau đó, nó xây
dựng các mô hình tiếp theo với các tập thuộc tính được chọn cho đến
khi không còn thuộc tính nào chưa sử dụng, sau đó các thuộc tính sẽ
được xếp hạng và loại bỏ dựa trên thứ tự xếp hạng của chúng
3.2.1.4 Phuong pháp Embedded (Embedded method)
Kết hop ưu điểm của 2 phương pháp trên dé tạo ra 1 nhóm (Subset) tốt
nhất Các mô hình Embedded lựa chọn các thuộc tính trong quá trình huấn
luyện các mô hình máy học và kết quả là tập các thuộc tính được tự độngtrích xuất khi quá trình huấn luyện dừng lại Phương pháp Embedded khắc
phục được sự phức tap trong tính toán Trong phương pháp nay, việc lựa
chọn thuộc tính thích hợp và học mô hình được thực hiện đồng thời, và các
25
Trang 36thuộc tính sẽ được chọn trong giai đoạn huấn luyện mô hình Do đó, chi
phí tính toán của phương pháp này ít hơn so với phương pháp Wrapper.
Phương pháp này tránh việc đào tạo mô hình mỗi khi một lựa chọn thuộc
Dưới đây là bảng phân tích và so sánh giữa 3 phương pháp lựa chọn
thuộc tính trên gồm ưu điểm và nhược điểm của từng phương pháp:
Các phương pháp Ưu điểm Nhược điểm
Hiệu quả Độc lập với Không xem xét mối tương
thuật toán học, Tính toán quan giữa các bộ phân nhanh hơn phương pháp loại Không xem xét Filter Wrapper và Embedded, tương quan giữa các đặc
Trang 37Tính toán hiệu quả hơn phương pháp Wrapper Chính xác hơn phương
3.2.2 Áp dụng thuật toán vào mô hình tống thé
Sau khi chúng tôi tiễn hành khảo sát, nghiên cứu dé có được một bức tranh
tổng thé bao gom cách hoạt động của một mô hình chống xâm nhập mạng mà
cơ sở là máy học, về tập dit liệu đầu vào của mô hình và kết quả huấn luyện
của mô hình và những phương pháp đang được sử dụng dé cải thiện mô hình,chúng tôi cũng đã đưa ra được một hướng phát triển với sự kết hợp của cácyêu tố nói trên vào một mô hình cụ thé Trong phan tiếp theo sẽ trình bày vềmột mô hình học sâu được xây dựng dé phát hiện cuộc tấn công dựa trên mộttập dữ liệu mạng có sẵn Chúng tôi cũng sẽ đưa ra những tiêu chí để đánh giá
mức độ hiểu quả của mô hình và hướng phát triển để cải thiện mô hình gốc
dựa theo những tiêu chí đã đề ra Sau đó chúng tôi cũng sẽ đánh giá tươngquan giải pháp mà chúng tôi đã đề xuất với một phương pháp từ một chúng tôinghiên cứu khác để có một cái nhìn khách quan hơn về mức độ khả thi và tính
hiệu quả của thuật toán này.
27
Trang 383.2.2.1 Tiêu chí đánh giá kết qua của mô hình
Đề đánh giá mức độ hiệu quả của một mô hình máy học, thường chúng ta
sẽ có những thông số phô biến dựa trên kết quả dự đoán của mô hình như độ
chính xác tuyệt đối, dự đoán tích cực, dự đoán tiêu cực trong quá trình đánhgiá kết quả chúng tôi cũng sẽ sử dụng những tiêu chí đánh giá phổ biến dé tạo
ra kết quả khả quan nhất cũng như thuận tiện dé so sánh với các thuật toán liênquan Ngoài ra thì chúng tôi cũng sẽ sử dụng một số tiêu chí đánh giá khác để
hỗ trợ, cung cấp cách nhìn khách quan hơn về thuật toán đã dé xuất, cụ thé ởđây là thời gian để huấn luyện riêng lẻ của thuật toán máy học đánh giá vàtổng thời gian thực thi của mô hình Những tiêu chí đánh giá thuật toán học
máy mà chúng tôi sẽ sử dụng bao gôm:
- Accuracy: được định nghĩa là tỉ lệ phần trăm dự đoán đúng cho dữ liệu
thử nghiệm Nó có thể được tính toán bằng cách chia số lần dự đoánđúng cho tổng số lần dự đoán
correct predictions accuracy = h
4 all predictions
- Precision: được định nghĩa là phần nhỏ của các ví dụ có liên quan (tích
cực thực sự) trong số tất cả các ví dụ được dự đoán là thuộc một lớpnhất định Precision sẽ cho chúng ta biết thực sự có bao nhiêu dự đoán
tích cực là thật sự chính xác.
true positives precision = ———————
true positives + false positives
- Recall: được định nghĩa là phần nhỏ của các ví dụ được dự đoán thuộc
về một lớp so với tất cả các ví dụ thực sự thuộc về lớp đó Recall caođồng nghĩa với việc tỉ lệ dự đoán chính xác tích cực cao, tức là tỷ lệ bỏ
sót các điểm thực sự là rất thấp.
true positives recall =————————————————
true positives + false negatives
28