Năm, đối với các mô hình cây quyết định chống lại các cuộc tan công đối kháng, các tham số chống tấn công đối kháng phải được gan một một cách thủ công, đặc biệt là giá tri offset độ lệc
Trang 1ĐẠI HỌC QUOC GIA TP HO CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA MẠNG MAY TÍNH VÀ TRUYEN THONG
NGUYEN DAT THINH
HO XUAN NINH
KHOA LUAN TOT NGHIEP MIDSIOT: HE THONG PHAT HIEN XAM NHAP NHIEU GIAI DOAN
CHO MANG IOT
(MIDSIOT: A MULTISTAGE INTRUSION DETECTION SYSTEM
FOR INTERNET OF THINGS)
KY SU TAI NANG AN TOAN THONG TIN
TP HO CHÍ MINH, 2023
Trang 2NGUYEN DAT THỊNH - 19520982
HO XUAN NINH - 19521978
KHOA LUAN TOT NGHIEPMIDSIOT: HE THONG PHAT HIEN XAM NHAP NHIEU GIAI DOAN
CHO MANG IOT
(MIDSIOT: A MULTISTAGE INTRUSION DETECTION SYSTEM
FOR INTERNET OF THINGS)
KY SU TAI NANG AN TOAN THONG TIN
GIẢNG VIÊN HƯỚNG DAN
TS LÊ KIM HÙNG
TP HO CHÍ MINH, 2023
Trang 3THONG TIN HỘI 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ố 878 ngày
24/10/2022 của Hiệu trưởng Trường Đại học Công nghệ Thông tin.
Trang 4Lời Cảm Ơn
Đầu tiên, chúng em xin gửi lời cảm ơn đế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ể tất cả các thầy cô đang
công tác và giảng dạy tại trường Đại học Công nghệ Thông tin - ĐHQG TPHCM vì
những kiến thức, bài học và kinh nghiệm quý báu mà chúng em nhận được trong suốt
chặng đường 3 năm rưỡi đại học vừa qua Chúng em xin chúc cho khoa Mạng máy tinh
và Truyền thông nói riêng và trường Đại học Công nghệ Thông tin - ĐHQG TPHCM
nói chung luôn thành công rực rỡ trên con đường giáo dục, luôn đào tạo ra được những
nhân tài cho đất nước, và sẽ mãi là niềm tin, điểm đến vững chắc và hấp dẫn cho các thế
hệ sinh viên mai sau.
Chúng em cũng xin cảm ơn một cách chân thành đến giảng viên, TS Lê Kim
Hùng Nhờ những kinh nghiệm, những bài học, những sự quan tâm, giúp đỡ và định
hướng của thay mà chúng em đã chỉnh phục được những khó khăn và thử thách trong suốt quá trình thực hiện khóa luận tốt nghiệp này.
Tiếp theo, chúng em xin gửi lời cảm ơn chân thành đến gia đình vì đã 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 TPHCM, giúp chúng em có thêm nguồn động lực dé phan đấu phát triển và đạt được những thành công như ngày hôm nay.
Cuối cùng, chúng em xin cảm ơ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 TPHCM đã luôn đồng hành, giúp đỡ, nhiệt tình chia
sẻ ý kiến và góp ý cho chúng em đề giúp cho khóa luận tốt nghiệp được tốt hơn và hoàn
thiện hơn.
TP Hồ Chi Minh, ngày tháng năm 2023
Nhóm tác giả
Trang 5Mục Lục
Lời Cảm Ơn iv
TOM TAT KHOA LUAN 1 CHUONG 1 MỞ DAU 2 1.1 Tén dé tai 2 1.2 Đặt van đề 2 1.3 Mục tiêu của đề tài 4 1.4 Đối tượng và phạm vi nghiên cứu 5 1.4.1 Đối tượng nghiên cứu 5
1.4.2 Phạm vi nghiên cứu 5
CHƯƠNG 2 CƠ SỞ LÝ THUYET 6 2.1 Hệ thống phát hiện xâm nhập 6
2.2 Các mô hình trí tuệ nhân tạo cơ bản 9
2.2.1 Tổng quan về Trí tuệ nhân tạo, machine Learning và Deep Learning
9
2.2.2 Decision Tree (Cây quyết định) 13 2.3 Tan công đối kháng (Adversarial attack) 14 2.3.1 Tổng quan 14 2.3.2 Cách thực hiện tấn công đối kháng 15 2.3.3 Phân loại tắn công đối kháng 16
2.4 Các công cụ va frameworks 17
2.4.1 Sklearn (scikit-learn) 17
2.4.2 Pytorch 19
Trang 62.4.3 CICFlowMeter 19
2.4.4 Một số công cụ hỗ trợ tấn công đối kháng 20
CHƯƠNG 3 GIỚI THIỆU MÔ HÌNH MidSiot 21 3.1 Tổng quan về MidSiot 21 3.2 Mô hình đề xuất của MidSiot 22
3.3 Phương pháp thực hiện 26
3.3.1 Thu thập và xử lý dữ liệu 26
3.3.2 Chọn thuật toán máy học thích hợp 29
3.3.3 Thuật toán phát hiện tấn công nhiều giai đoạn 32 3.4 Kết quả thực nghiệm 35
3.4.1 Phương thức đánh giá 35 3.4.2 Attack Class Balancing 36
3.4.3 Kết quả và nhận xét 39 CHƯƠNG 4 PHÁT TRIÊN MidSiot ĐẺ CÓ KHẢ NĂNG CHÓNG LẠI CÁC CUỘC TẤN CÔNG ĐÓI KHÁNG 44
4.1 Vấn đề về tắn công đối kháng trên MidSiot 44 4.1.1 Tổng quan 44 4.1.2 Tan công đối kháng trên mô hình cây quyết định 45 4.1.3 Thực nghiệm tan công đối kháng trên mô hình cây quyết định 47 4.2 Mô hình cây quyết định chống lại các cuộc tan công đối kháng 62
4.2.1 Tông quan 62
Trang 74.2.2 Thuật toán xây dựng mô hình cây quyết định có khả năng chống lại
các cuộc tan công đôi kháng 63
4.2.3 Thuật toán tôi ưu hóa tìm điểm phân nhánh 664.3 Tối ưu hóa thuật toán tìm điểm phân nhánh 68
4.3.1 Thực nghiệm mô hình cây quyết có khả năng chống lại các cuộc tấncông đối kháng 69
5.1 Thuc nghiém 95
5.1.1 Ngữ cảnh thực nghiệm 95
5.1.2 Mô hình tổng quan của MidSiot-NG 96
5.3 Kết quả 97 CHUONG 6 TONG KET VA HUGNG PHAT TRIEN 99
6.1 Kết qua đạt được 99 6.2 Hướng phát triển 99
TÀI LIỆU THAM KHẢO 100
Trang 8DANH MỤC HÌNH Hình 2.1 minh họa thuật toán cây quyết định [7] -¿-2 s++s<+x+zz+zxzzxerse+ 13 Hình 2.2 minh họa tan công đối kháng [§] -2- 5£ ©2++2££+£xzzz+rxzzsersez 15
Isin 068334 0 17
Hinh 2.4 logo Pytorch, 008 19
Hình 3.1 Mô hình tổng quan của MidSiot .c.cscesssesssessssesssesssesssecssecssecssecssecessesseeessees 22 Hình 3.2 Sơ đồ của giai đoạn training (huấn luyện các mô hình máy học) 23
Hình 3.3 Sơ đồ giai đoạn dự đoán, phân loại các luồng dữ liệu mạng 24
Hình 3.4 kết qua macro average FI-score của tập dữ liệu IOTID20 24
Hình 3.5 kết quả macro average Fl-score của tập dit liệu CIC-IDS-2017 38
Hình 4.1 Mã giả cho thuật toán tan công đối kháng trên mô hình cây quyết định 45
Hình 4.2 Minh họa cho thuật toán tan công đối kháng trên cây quyết định 46
Hình 4.3 Confusion matrix cho stage 1 - Trái: Clean sample - Phải: Adversarial sample Cho tap dit liu ToTID20 0 eecececscceecesecesceseceeceseeeecesecseceeecaeceeeeaeceeeseceeeaecseeeseeaeenes 49 Hinh 4.4 Confusion matrix cho stage 2 - Device: External - Trai: Clean sample - Phai: Adversarial sample của tap dữ liệu Io'TII220 - 5555 ++**+*++v+eexeereseseeresss 49 Hình 4.5 Confusion matrix cho stage 2 - Device: Ezviz - Trái: Clean sample - Phải: Adversarial sample của tập dữ liệu JoTID20 .0 eee cceeceeseesceeseeceeeeeseeeeeeaeeeeeseeseees 50 Hinh 4.6 Confusion matrix cho stage 2 - Device: Nugu - Trai: Clean sample - Phai: Adversarial sample của tap dữ liệu IoTIID20 - c2 +55 + *+*£+*kEseeeseeresereerrsee 50 Hình 4.7 Confusion matrix cho stage 3 - Trái: Clean sample - Phải: Adversarial sample cua tap dit ligu 19501797205 51
Hình 4.8 Confusion matrix cho stage 1 - Clean sample cua tập dữ liệu CIC-IDS-2017.
Hình 4.9 Confusion matrix cho stage 1 - Adversarial sample cua tap dữ liệu
CIC-IDS-J MHAii Ô 52
Trang 9Hình 4.10 Confusion matrix cho stage 2 - Device: External - Trái: Clean sample - Phải:
Adversarial sample của tập dữ liệu CIC-IDS-20 7 .- 5 55+ + +sseesseeseese 53
Hinh 4.11 Confusion matrix cho stage 2 - Device: Ubuntu 14.4 64bit - Trai: Clean
sample - Phải: Adversarial sample của tap đữ liệu CIC-IDS-2017 - 53
Hinh 4.12 Confusion Matrix cho stage 2 - Device: Ubuntu Server 12 Public - Trai: Clean
sample - Phải: Adversarial sample của tap dữ liệu CIC-IDS-2017 - - 54
Hình 4.13 Confusion matrix cho stage 2 - Device: Web Server 16 Public - Trái: Clean
sample - Phải: Adversarial sample của tập dữ liệu CIC-IDS-2017 - 54
Hinh 4.14 Confusion matrix cho stage 2 - Device: Windows 7 Pro 64bit - Trai: Clean
sample - Phải: Adversarial sample của tap dữ liệu CIC-IDS-2017 55
Hình 4.15 Confusion matrix cho stage 2 - Device: Windows 8.1 64bit - Trái: Clean
sample - Phải: Adversarial sample cho tập dữ liệu CIC-IDS-2017 - 55
Hình 4.16 Confusion matrix cho stage 2 - Device: Windows Vista 64bit - Trái: Clean
sample - Phải: Adversarial sample của tập dữ liệu CIC-IDS-2017 - 56 Hình 4.17 Confusion matrix cho stage 3 - Clean sample cua tập dữ liệu CIC-IDS-2017.
Hinh 4.21 Confusion matrix cho stage 2 Device: Metasploitable Trai: Clean sample
-Phải: Adversarial sample của tap dữ liệu BOT-ÏọT - - 5 +55 x++x+scxseresssereses 58
Hinh 4.22 Confusion matrix cho stage 2 - Device: Ubuntu Mobile - Trai: Clean sample
- Phải: Adversarial sample của tap dữ liệu BOTT-lọÏ - +5 «+ £+<+svxsseeseesses 59
Hinh 4.23 Confusion matrix cho stage 2 Device: Ubuntu Server Trai: Clean sample
-Phải: Adversarial sample của tập dữ liệu BOTT-IOïT - 2 6 S5 *s+seseesseereese 59
Trang 10Hình 4.24 Confusion matrix cho stage 2 Device: windows 7 Trái: Clean sample
-Phải: Adversarial sample của tập dữ liệu BO T-IỌT 5 +5 + £+sssvessessereses 60
Hình 4.25 Confusion matrix cho stage 3 - Clean sample cua tập dữ liệu BOT-IoT 60
Hình 4.26 Confusion matrix cho stage 3 - Adversarial sample của tập dtr liệu BOT-IoT.
¬ 61
Hình 4.27 minh họa tan cơng đối kháng và chọn thuộc tính chống đối kháng [31] 63
Hinh 4.28 Bang quy w6c v00): 8 n 64
Hình 4.29 Thuật tốn 1 Tìm trường hợp tệ nhất khi mơ hình cây quyết định bị tan cơng
083117222777 67
Hình 4.30 Thuật tốn 2 Tìm điểm phân nhánh tối ưu nhất trong trường hợp tệ nhất khi
mơ hình cây quyết định bị tan cơng đối kháng . 2 2 2 + +2 x+£+£x£+E++zz+zeez 68Hình 4.31 Confusion matrix cho stage 1 - các thiết bị iot của tập dữ liệu JoTID20 70Hình 4.32 Confusion matrix cho stage 1 - các thiết bị loT của tập dữ liệu CIC-IDS-2017.veeeeeneeeccoceeceecereeceneeee see TT PP, 6TĐƯNh, TÀ Ì V 71Hinh 4.33 Confusion matrix cho stage 1 - cac thiết bị loT của tập dữ liệu CIC-IDS-2017
¬ Ơ '` h ẻẽ cé.(“ ố 71Hinh 4.34 Confusion matrix cho stage 1 - cac thiết bị loT của tập dữ liệu CIC-IDS-2017
¬ Ắ - <a 72
Hình 4.35 Confusion matrix cho stage 1 - các thiết bị loT của tập dữ liệu BOT-IoT .73Hình 4.36 Thử nghiệm tấn cơng mơ hình của thiết bị Ezviz - Attack offset: 0.1 75Hình 4.37 Thử nghiệm tấn cơng mơ hình của thiết bị Ezviz - Attack offset: 0.3 76Hình 4.38 Thử nghiệm tan cơng mơ hình của thiết bị Nugu - Attack offset: 0.2 76Hình 4.39 Thử nghiệm tan cơng mơ hình của thiết bi External - Attack offset: 0.1 77Hình 4.40 Thử nghiệm tấn cơng mơ hình của thiết bi External - Attack offset: 0.8 77Hình 4.41 Thử nghiệm tan cơng mơ hình của thiết bị Web Server 16 Public Attack
Offset: ( Í G LG 001111001111 111g ng HT Hy 78
Trang 11Hình 4.42 Thử nghiệm tấn công mô hình của thiết bị Web Server 16 Public - Attack
Hình 4.54 Thử nghiệm kết quả tấn công đối kháng mô hình của thiết bị Ubuntu 16.04
64bit trên tập dữ liệu CIC-IIDS-20 l7 6 tk *11 E129 2 123151151111 11 E1 re 86
Trang 12Hình 5.55 Thử nghiệm kết quả tấn công đối kháng mô hình của thiết bị Ubuntu server
12 public trên tập dữ liệu CIC-IIDS-20 ÏÝ7 - 5 <6 2 1331 E*3 E9 ESEEEEEsrksrrserrkrree 86
Hình 4.56 Thử nghiệm kết quả tan công đối kháng mô hình của thiết bi Web server public
16 trên tập dữ liệu CIC-IIDS-20 [7 - 2% k3 91 51 1 5191 9121 111 gu ngư 87
Hình 4.57 Thử nghiệm kết quả tan công đối kháng mô hình của thiết bị Windows 8.1
64bit trên tập dữ liệu CIC-IDS-20 [7 6 + 6 2x12 E2 12v ng ng rrkp 87
Hình 4.58 Thử nghiệm kết qua tan công đối khang mô hình của thiết bị Windows vita
64bit trén tap dit liGu CIC-IDS-201 7 ooo 88
Hình 4.59 Thử nghiệm kết quả tan công đối khang mô hình của thiết bị metasploitable
Hình 5.1 Minh họa mô hình kiến trúc MidSiot-NG 2 c s x+x+Ee£xeE++xerxerxee 96Hình 5.2 Thử nghiệm kết qua tan công NG-MidSiot trên tập dữ liệu loTID20 97Hình 5.3 Thử nghiệm kết quả tắn công NG-MidSiot trên tập dữ liệu CIC-IDS-2017 .97Hình 5.4 Thử nghiệm kết qua tắn công NG-MidSiot trên tập dit liệu BOT-IoT 98
Trang 13DANH MỤC BANGBảng 3.1 thống kê các thiết bị, loại tấn công và loại tấn công chi tiết của bộ dữ liệuIoTID20 27
Bang 3.2 thống kê các thiết bị, loại tấn công và loại tấn công chi tiết của bộ đữ liệu
CIC-IDS-2017 27
Bảng 3.3 thống kê các thiết bị, loại tan công và loại tấn công chi tiết của bộ dữ liệu
BOT-loT 28
Bảng 3.4 kết quả chạy thử nghiệm trên một số thuật toán máy học 29
Bảng 3.5 kết quả của kiến trúc IDS nhiều giai đoạn 40
Bảng 3.6 Ma trận confusion phát hiện tấn công trên bộ dữ liệu IoTID20 40Bảng 3.7 Ma trận confusion phát hiện tấn công trên bộ dữ liệu CIC-IDS-2017 41
Bang 3.8 Ma tran confusion phát hiện tấn công trên bộ dit liệu BOT-IoT 41
Bang 3.9 so sánh MidSiot với một số công trình nghiên cứu khác 43Bảng 4.1 Bảng kết quả thực nghiệm tân công đối kháng trên các tập dữ liệu sử dụng công
cụ ART 47
Bảng 4.2 Kết quả thử nghiệm mô hình cây quyết định chống lại các cuộc tấn công đốikháng 69Bảng 4.3 so sánh kết quả thực nghiệm TabNet, DT, SAINT trên các tập dữ liệu 95
Trang 14DANH MỤC TU VIET TAT
Intrusion Detection System | Hệ thống phát hiện xâm
nhập
ISP Internet Service Provider Nhà phân phối dịch vụ
Internet
Internet of Things Vạn vật kết nối
DoS/DDoS Denial of Tan công từ chối dịch
Service/Distributed Denial | vụ/Tân công từ chôi dịch
Trang 15TÓM TẮT KHÓA LUẬN
Ngày nay, van dé bảo mật và an toàn thông tin cho các thiết bị IoT dang thu hút
nhiều sự quan tâm của các nhà nghiên cứu Trong đó, việc xây dựng hệ thống phát hiện
xâm nhập cho các thiết bi loT là một trong những đề tài phổ biển và cũng là hướngnghiên cứu của khóa luận này Trong khóa luận tốt nghiệp này, chúng tôi sẽ trình bày
các phương pháp thu thập dữ liệu và xử ly dir liệu dé tạo ra ba tập dữ liệu khác nhau dé
sử dụng trong quá trình thử nghiệm hệ thống Bên cạnh đó, chúng tôi cũng đưa ra một
mô hình kiến trúc hệ thống phát hiện xâm nhập gồm 3 giai đoạn dé tăng khả năng nhậndiện thiết bị, phát hiện lưu lượng mạng bat thường, và nhận diện được loại tấn công Sau
khi hình thành được mô hình hoàn chỉnh, chúng tôi thử nghiệm và đưa ra đánh giá cho
mô hình nhiều giai đoạn này
Sau khi thử nghiệm mô hình hoàn tat, chúng tôi mở rộng hướng nghiên cứu bằng
cách thực hiện các cuộc tấn công đối kháng vào mô hình hệ thống phát hiện xâm nhập
nhiều lớp này Chúng tôi nhận thấy rằng, các cuộc tấn công đối kháng gây ảnh hưởngnghiêm trọng đến độ chính xác của các mô hình dự đoán, do đó, chúng ta tiễn hànhnghiên cứu các phương pháp dé củng cô khả năng chống lại các cuộc tấn công này cho
các mô hình dự đoán.
Cuối cùng, để mô hình dự đoán có thể hoạt động ôn định hơn trước nhiều ngữcảnh khác tấn công đối kháng khác nhau, chúng tôi đề xuất một phương pháp tự độnglựa chọn tham số dé huấn luyện mô hình dự đoán có khả năng chống lại các cuộc tấncông đối kháng
Trang 16CHUONG 1 MỞ DAU
1.1 Tên đề tài
MidSiot-NG: HỆ THONG PHAT HIỆN XÂM NHẬP NHIÊU GIAI DOAN CÓ
KHẢ NĂNG CHÓNG LAI CÁC CUOC TAN CÔNG DOI KHANG CHO MẠNG IOT
(MidSiot-NG: A multistage intrusion detection system against adversarial attacks
for Internet of Things)
1.2 Dat van dé
Ngày nay, số lượng các thiết bị kết nối internet đã và đang tăng với tốc độ chóngmặt Với chỉ 2 tỷ thiết bị vào năm 2006, con số này đã chạm mức 200 tỷ vào năm 2020nhờ vào sự tăng đáng ké của các thiết bi di động và IoT, [1] Kết quả là, các thiết bi nàyđóng một vai trò rất quan trọng trong các ngành công nghiệp trọng điểm như y tế, sảnxuất, bán hàng, an toàn thông tin, vận chuyên nhờ vào khả năng cung cấp các dịch vụ
thông minh như theo dõi đơn hàng và kho bãi, quản lý máy móc, theo dõi sức khoẻ bệnh
nhân, phát hiện bất thường mạng
Tuy nhiên, vấn đề bảo mật và quyền riêng tư cho các thiết bị IoT vẫn còn rat hạnchế bởi vì giới hạn về phần cứng và năng lượng của các thiết bị này Do đó, các phươngpháp bao mật truyền thống khó có thé được áp dụng Việc này dan tới một loạt các rủi
ro an toàn thông tin khác nhau như rò rỉ dữ liệu (data leakage), DoS/DDos, gia dạng định
danh (spoofing), [2].
Đề hạn chế các rủi ro về an toàn thông tin nêu trên, IDS là một giải pháp phô biến,
có thé được triển khai trên các công kết nối (network gateway) IDS giúp theo dõi lưulượng mạng đến từ nhiều nguồn khác nhau và từ đó có thể phát hiện các bất thường (dấuhiệu của một cuộc tấn công tiềm ấn đang hoặc sắp xảy ra) Theo nghiên cứu [3], hướngtiếp cận dé xây dựng một hệ thống phát hiện xâm nhập có hai loại là signature-based và
Trang 17anomaly-based Đối với signature-based, lưu lượng mạng sẽ được đò khớp với một danh sách các dau hiệu của các cuộc tan công đã biết Tuy nhiên, cách tiếp cận này không thật
sự hiệu quả vì nó đòi hỏi người có chuyên môn nghiên cứu và phân tích kỹ các cuộc tấn công và tạo ra danh sách các dấu hiệu tương ứng Việc này tiêu tốn nhiều thời gian và
nhân lực Bên cạnh đó, cách tiếp cận nay cũng khó có thé phát hiện ra các cuộc tấn công
0-day (các cuộc tan công chưa từng được công bố) Đối với cách tiếp cận thứ hai, anomaly-based, đây là cách tiếp cận khá phô biến dé xây dựng IDS hiện nay Các IDS
sẽ được xây dựng với sự hỗ trợ của trí tuệ nhân tạo dé giup tạo ra một mô hình nhận biết
các lưu lượng mạng thông thường Từ đó, khi xuất hiện một lưu lượng mạng có các tính
chất bất thường, IDS sẽ xem lưu lượng mạng này là độc hại
Một số vấn đề đặt ra đối với anomaly-based IDS mà chúng tôi muốn giải quyết
là:
Một, kiến trúc hạ tầng của IDS cho mạng IoT không tận dụng khả năng tính toáncủa các thiết bị cuối (đặc biệt là edge gateway) Việc này sẽ giúp giảm tải cho các hệthống xử lý tập trung của máy chủ
Hai, thiếu khả năng nhận dạng loại thiết bị Bởi vì các thiết bị IoT rất đa dang vàphong phú không chỉ về mẫu mã, màu sắc, mà còn về mặt phần cứng, giao thức mạngđược sử dụng và hành vi mạng của chúng Do đó, việc nhận dạng được loại thiết bị sẽgóp phần làm tăng độ chính xác cho IDS
Ba, hạn chế về khả năng nhận diện nhiều loại tấn công khác nhau Phần lớn cácIDS cho mạng IoT chỉ có khả năng phát hiện tấn công từ chối dịch vụ và tấn công giả
dạng định danh.
Bồn, việc ứng dụng AI vào IDS cũng tiềm tàng nhiều rủi ro về các cuộc tấn côngđối kháng Các cuộc tan công đối kháng này sẽ làm giảm đáng ké độ chính xác của các
mô hình AI vì các mẫu dit liệu sẽ được sửa đôi một cách tinh vi dé gây nhằm lẫn cho các
mô hình dự đoán mà ta không thê nhận biết được Nếu ta có thể xây dựng được một môhình AI sử dụng cho IDS trong mạng IoT có khả năng chống lại các cuộc tan công đối
Trang 18kháng thì sẽ làm tăng đáng kể độ chính xác của IDS trong nhiều điều kiện bị tắn công
đối kháng Trong khóa luận này, chúng tôi sẽ tập trung vào phát triển mô hình cây quyếtđịnh có khả năng chống lại các cuộc tan công đối kháng
Năm, đối với các mô hình cây quyết định chống lại các cuộc tan công đối kháng, các tham số chống tấn công đối kháng phải được gan một một cách thủ công, đặc biệt là giá tri offset (độ lệch tối đa mà kẻ tan công có thé làm thay đổi cho một thuộc tinh bat
kỳ của một mẫu dữ liệu) Van đề đặt ra là chúng ta không biết được kẻ tan công sẽ thực
hiện tấn công đối kháng với giá tri offset là bao nhiêu, do đó chúng ta sẽ khó có thé xây
dựng mô hình với một offset tối ưu nhất, ít tiêu tốn thời gian và tài nguyên nhất Chính
vì vậy, việc tìm được một thuật toán xây dựng mô hình cây quyết định có khả năng tựđộng tìm giá trị offset dé chống lại các cuộc tan công đối kháng sẽ giúp tăng hiệu năng
của IDS.
Sáu, hiện nay, các mô hình cây quyết định có khả năng chống các cuộc tân côngđối kháng chỉ có khả năng thực hiện phân loại nhị phân (binary classification) Do đó,chúng tôi cũng sẽ giải quyết van đề này dé giúp cho mô hình IDS có khả năng phân loại
đa lớp (multiclass classification) đề nhận dạng được nhiều cuộc tấn công khác nhau và
có khả năng chông lại các cuộc tân công đôi kháng.
1.3 Mục tiêu của đề tài
e Tìm hiểu về AI và ứng dụng của AI vào IDS Qua đó, tìm mô hình AI có độ chính
xác cao nhất có thé mà không tiêu tốn nhiều tài nguyên phần cứng của các thiết
bị loT.
e Xây dựng và thử nghiệm kiến trúc hệ thống IDS gồm nhiều giai đoạn cho mang
loT.
e Tìm hiểu về cách thức tan công đối kháng và ảnh hưởng của chúng đối với các
mô hình cây quyết định trong IDS
Trang 19e Tìm hiểu và thử nghiệm mô hình cây quyết định chống lại các cuộc tấn công đối
kháng trên IDS.
e Xây dựng và thử nghiệm thuật toán tìm offset tự động trong quá trình phát triển
mô hình cây quyết định chống lại các cuộc tan công đối kháng trên IDS.
e Xây dựng và thử nghiệm kiến trúc hệ thống IDS gồm nhiều giai đoạn có sử dung
cây quyết định chống lại các cuộc tan công đối kháng.
1.4 Đối tượng và phạm vi nghiên cứu
1.4.1 Đối tượng nghiên cứu
Khóa luận này hướng đến:
e Kiến trúc hệ thong IDS gồm nhiều giai đoạn cho mạng IoT có khả năng thực hiện
phân loại nhị phân và phân loại đa lớp, và có khả năng chống lại các cuộc tấncông đối kháng
e Thuật toán xây dựng mô hình cây quyết định chống lại các cuộc tan công đối
kháng.
e Thuật toán tìm offset tự động trong quá trình phát trién mô hình cây quyết định.
1.4.2 Phạm vi nghiên cứu
e Nghiên cứu về các mô hình AI có thé sử dụng cho IDS trong mang IoT.
e Nghiên cứu về mô hình cây quyết định có khả năng chống lại các cuộc tan công
đối kháng
e Nghiên cứu về kiến trúc hệ thống IDS gồm nhiều giai đoạn có kha năng chống lại
các cuộc tân công đôi kháng.
Trang 20CHƯƠNG 2 CƠ SỞ LÝ THUYÉT
2.1 Hệ thống phát hiện xâm nhập
Hệ thống phát hiện xâm nhập là một hệ thống được sử dụng cho mục đích giámsát các luồng dữ liệu mạng đề phát hiện các hành vi bất thường và phát ra thông báo haycảnh báo khi phát hiện những hành vi này Những hành vi bất thường hoặc xâm phạmthường được báo cho cả người quản trị hoặc hệ thống xử lý tập trung (vd: SIEM - hệthống quản lý các thông tin và sự kiện an toàn cho hệ thống mạng) SIEM sẽ kết hợpnhững thông tin từ nhiều nguồn và sử dụng những kĩ thuật phân biệt các hành vi bấtthường để xác định các thông báo sai
es)
_ & | #
I I
l
I Signature-based
I I
= m ‘Bow Detection
: —> QD
Network Intrusion Host Intrusion Anomaly-Based
Detection Detection Detection
Hình 2.1 minh hoa cho một số loại IDS phổ biến HAI.
Hệ thống phát hiện xâm nhập có một số loại sau:
e Hệ thống phát hiện xâm nhập mạng (Network-based IDS - NIDS): loại IDS nay
sẽ được thiết lập ở những vị trí có khả năng quan sát luồng dữ liệu từ tất cả thiết
bi trong mạng NIDS sẽ thực hiện quan sát các luồng dữ liệu trên toàn bộ các
Trang 21subnets quan trọng Một khi các cuộc tấn công hoặc các hành vi bat thường được
phát hiện, cảnh báo sẽ được gởi tới quản trị viên Ví dụ, NIDS sẽ được cài đặt ở
phân vùng mạng nơi firewall được đặt để xem xét các hành vi nguy hại tới
firewall.
e Hệ thống phát hiện xâm nhập hệ thống (Host-based IDS - HIDS): sẽ được chạy
độc lập trên các máy chủ hoặc thiết bị trong mạng HIDS giám sát cả các luồng
mạng tới và đi, sẽ phát ra thông báo cho quản trị viên nếu những hành vi bất
thường được phát hiện HIDS có thé sẽ lưu lại một bản snapshot của các file hệ
thống và so sánh nó với các bản snapshot trước đó Nếu các file được phân tích
đã bị sửa hoặc xóa, một thông báo sẽ được gởi tới người quản tri để điều tra
e Signature-Based IDS: loại IDS này phát hiện các tan công dựa trên những khuôn
mẫu chỉ định (signature), như là một số lượng bytes hoặc các bit trong luồng dữliệu mạng IDS này cũng có khả năng phát hiện những mã độc đã biết hoặc đãđịnh nghĩa signatures Signatures-based IDS có thé dé dàng phát hiện nhữngkhuôn mẫu hoặc signature đã tồn tại, định nghĩa sẵn trong hệ thống nhưng khó cóthê phát hiện những tấn công mã độc mới với những signatures chưa tồn tại
® Anomaly-Based: được đưa ra với mục đích phát hiện các loại tấn công hoặc mã
độc chưa xác định Các loại IDS này thường sử dụng máy học dé tạo ra các mô
hình phát hiện xâm nhập Phương pháp áp dụng máy học nhìn chung có chức
năng tốt hơn so với signature-based IDS
Ưu điểm của IDS:
e IDS có thể được điều chỉnh dé xem xét từng phần nội dung chỉ tiết của một gói
tin mạng Điều này hữu ích trong việc phát hiện các môi đe doa như là các khaithác tan công hoặc chiếm quyền các thiết bị cuối
e IDS có khả năng thực hiện phân tích dữ liệu theo các protocol Dé phát hiện những
hành vi bat thường trong các gói tin từ các protocol khác nhau (TCP, UDP, ),
Trang 22bời vì các gói tin của những protocol đều sẽ được tuân theo chuẩn và quy tắc nhất
định việc vi phạm hoặc làm sai lệch cấu trúc có thê dẫn đến các mối đe dọa
IDS còn mang lợi ích cho việc phân tích số lượng và loại hình tắn công Những
thông tin này có thê được sử dụng đề tăng cường hệ thống bảo mật hoặc triển khai một bộ điều khiển mới hiệu quả hơn Nó còn có thé được phân tích dé xác định
các 16 hông hoặc van đê vê sai câu hình của các thiệt bị mạng.
Nhược điểm của IDS:
IDS sẽ không trực tiếp ngăn chặn các cuộc tan công ma nó phat hiện trực tiếp.
Bởi vì, nhiệm vụ của IDS chỉ giúp phát hiện các mối đe dọa, các cuộc tan công
và thông báo cho người quản trị hoặc phát ra các cảnh báo hệ thông IDS nên
được sử dụng như một thành phần của trong kiến trúc và chiến lược bảo vệ hệ
thống mà không phải là một hệ thống trực tiếp chặn các cuộc tan công
Việc vận hành các IDS thì yêu cầu một kỹ sư có kinh nghiệm đề hiểu và phân tíchcác gói tin, mối đe dọa khi nhận được các cảnh báo, hoặc thông tin từ IDS phát
ra.
IDS sẽ không thé phân tích và phát hiện các rủi ro trong các gói tin đã bị mã hóa.Vấn đề về dự đoán sai, phát hiện sai xảy ra thường xuyên với cái IDS
Cơ sở dit liệu của chữ ký hoặc dấu hiệu của IDS cần được liên tục cập nhật dé
bảo vệ các cuộc tân công va môi de dọa mới nhat.
Trang 232.2 Các mô hình trí tuệ nhân tạo cơ bản
2.2.1 Tổng quan về Trí tuệ nhân tạo, machine Learning và Deep Learning
ARTIFICIAL INTELLIGENCE
A program that can sense, reason,
act, and adapt
MACHINE LEARNING
Algorithms whose performance improve
as they are exposed to more data over time
Hình 2.2 tong quan về AI, ML va DL [5].
Những khái niệm về Artificial Intelligence (AI - trí tuệ nhân tao), Machine
Learning (ML - máy học) hay Deep Learning (DL - học sâu) thường được sử dụng qua
lại lẫn nhau và dé gây nhầm lầm nên hình 2.2 cho ta cái nhìn tong quan nhất về những
khái niệm trên.
Trang 24Trí tuệ nhân tao: hay còn gọi là trí tuệ máy của các máy móc (machine
intelligence) có thê được hiểu như một sự thông minh, không như trí tuệ thông minh tự nhiên của con người hay động vận, sự thông minh này được biéu hiện ở các cỗ máy, máy móc Nó như việc thiết kế một hệ thống hay thiết bị thông minh có thê xử lý hay giải quyết các vấn đề về lĩnh vực sáng tạo những việc làm thông thường được xử lý bởi trí tuệ của con người Vì vậy, AI có thể hiểu như một thiết bị hoặc máy móc có thể bắt
chước được hành vi của con người.
Các hệ thống trí tuệ nhân tạo được phân loại dựa trên khả năng nhân bản các đặc điểm của con người, ứng dụng trong công nghệ, ứng dụng trong thế giới thật, và trong
lý thuyết về tâm trí, được chia làm ba loại chính như sau:
Trang 25e Trí tuệ nhân tạo trong một lĩnh vực hep (ANI - Artificial narrow intelligence):
loại trí tuệ nhân tạo này sẽ giải quyết vấn đề của chỉ một lĩnh vực chuyên biệt (ví
dụ như: Siri của Apple hay Cortana cua Microsoft).
e Trí tuệ nhân tạo thông thường (AGI - Artificial general intelligence), loại hình tri
tuệ này sẽ giống với khả năng của con người, có thể được xem như một máy tính
và biéu diễn cho một dang thu nhỏ của con người.
e Siêu trí tuệ nhân tao (ASI - Artificial superintelligence), có khả năng vượt trội
hơn cả trí thông minh thật sự của con người.
Máy học (Machine learning): với những tiến bộ vượt bậc trongcông nghệ máy tính, máy học ngày nay không còn giống như máy học trong quá khứ.Việc tạo nên các mô hình máy học từ việc xác định những khuôn mẫu và những ý kiến
mà máy tính được học mà không cần tự lập trình cho các mục đích hay nhiệm vụ cụ thể;Các nhà khoa học đang nghiên cứu trí tuệ nhân tạo quan tâm rằng máy tính liệu có khả
năng học từ những dữ liệu hay không.
Những nhà nghiên cứu trước đây cho rằng có quá nhiều sự khókhăn đề giải quyết các van dé này bởi vì những kĩ thuật cũ được sử dụng cho trí tuệ nhântạo không thật sự tương thích với vấn đề trên Những thuật toán cố định, hệ thống họctheo quy tắc không làm việc tốt cho những van dé về nhận diện hình ảnh hoặc trích xuất
thông tin văn bản.
Đề hiểu hơn về cách một mô hình máy học được huấn luyện như thế nào, chúng
ta sẽ có ba thành phần chính dé huấn luyện một mô hình máy học:
e Tập dữ liệu (datasets): một tập dữ liệu bao gồm một tập các thực thé hoặc gia tri
có mối tương đồng với nhau trong cùng một cấu trúc có thé được xem riêng lẻhoặc toàn bộ các mục Thông thường, tạo ra một tập dữ liệu tốt yêu cầu đầu tưnhiều thời gian và công sức Hai cách phố biến dé thu thập dữ liệu cho các môhình: (1) sử dụng các tập dữ liệu được công bố miễn phí; hoặc (2) tự thu thập dir
liệu cho mô hình.
11
Trang 26e@ Các thuộc tính (features): các thuộc tinh mà các đối tượng dữ liệu cực kì cần thiết
cho mô hình, có thể được coi như nhân tố chính cho những vấn đề đang muốngiải quyết Các thuộc tính thường là các giải pháp riêng lẻ hoặc là các đặc điểm
của một hiện tượng nào đó đang được quan sát Việc lựa chọn những thuộc tính
có nhiều thông tin, có tính phân biệt và độc lập thì cực kì cần thiết cho hiệu quảcủa thuật toán nhận diện, phân loại hoặc hồi quy
® Thuật toán (algorithm): thuật toán là một thành phần cho phép hệ thống học và
phát triển các kinh nghiệm của nó một cách tự động mà không cần lập trình từngnhiệm vụ cụ thé Có rất nhiều thuật toán được hướng dẫn một cách chuyên sâu vàgiải thích thuật toán rõ ràng như hồi quy tuyến tính (linear regression), học sâu(deep learning), mạng lưới hợp tác (coevolutionary network), và các hệ thông đưa
ra lời khuyên Độ chính xác và tốc của của kết quả sẽ phụ thuộc vào từng loại
thuật toán.
© Một số loại cách học của máy học (types of learning):
© Supervised Learning: mô hình sẽ được học trên tập dữ liệu đã được gan
nhãn Quá trình học sẽ được theo dõi Một ví dụ phô biến nhất củasupervised learning máy học đó là hồi quy tuyến tính trong giải quyết van
đề về hồi quy
© Unsupervised Learning: được học trên dữ liệu chưa được gan nhãn, cách
học này sẽ không yêu cầu đầu ra của quá trình huấn luyện
o Semi-supervised Learning: sẽ yêu cầu một phần nhỏ kết quả của quá trình
huấn luyện dữ liệu
© Reinforcement Learning: học tăng cường là việc nghiên cứu cách thức
của một agent nên chọn thực hiện các hành động nào dé cực đại hóa mộtkhoản thưởng (reward) Đây được coi là phương pháp học tham vọng nhất
trong trí tuệ nhân tạo.
12
Trang 27Học sâu (Deep learning): là một nhánh của máy học trong trí tuệ nhân tạo với
mạng lưới có khả năng học unsupervised từ các dữ liệu không cấu trúc và dit liệu chưa
được gán nhãn Còn được biết đến với những tên gọi như học thần kinh sâu (deep neural
learning) hoặc mạng lưới thần kinh sâu (deep neural network) Các thuật toán của học
sâu sử dụng mạng thần kinh nhiều cấp bậc, các lớp trừu tượng hóa sẽ dần tăng lên thông
qua việc chuyên đôi những dữ liệu tuyên tính đâu vào.
2.2.2 Decision Tree (Cây quyết định)
Leaf Node Leaf Node
Hình 2.1 minh hoa thuật toán cây quyết định [7].
Cây quyết định là một thuật toán máy học thuộc loại supervised learning, được
sử dụng cho cả mục đích phân loại, và hồi quy, nhưng được sử dụng chủ yếu cho các
van dé về phân loại Là một trình phân loại có cau trúc cây, mỗi node sẽ biéu diễn các
13
Trang 28thuộc tính của một tap dit liệu, các nhánh biéu diễn quy tắc quyết định và mỗi node lá sẽ biểu diễn kết quả phân loại.
Có hai loại node trong mô hình cây quyết định, đó là node quyết định (Decision
node) va node lá (Leaf node) Node quyết định có chức năng đưa ra quyết định và sẽ bao
gồm nhiều nhánh (từ 2 nhánh trở lên), trong khi đó node lá là kết quả cuối cùng củanhững quyết định và sẽ không có chứa nhánh con nào
Một số lý do vì sao thuật toán này được sử dụng trong máy học:
Những thuật toán trong máy học rất nhiều và đa dạng, cho nên việc chọn ra một
thuật toán tốt nhất cho tập dữ liệu đang sử dụng là vấn đề cần giải quyết và là những điều
thật sự cần thiết cho việc tạo ra một mô hình máy học Sau đây là hai lý do cho việc sửdụng cây quyết định:
e Cây quyết định thường giống với khả năng suy nghĩ của con người khi đưa
ra quyết định Vì vậy, thuật toán này khá dễ hiểu
e Những logic đăng sau cây quyết định có thé dé dàng hiểu được bởi vì nó
được thê hiện thông qua cấu trúc cây và rất dễ minh họa bằng hình ảnh
e Thuật toán cây quyết định có khả năng huấn luyện và đưa ra kết quả rất
nhanh.
Chỉ tiết về thuật toán cây quyết định sẽ được trình bày ở chương 3 mô hình MidSiot
2.3 Tấn công đối kháng (Adversarial attack)
2.3.1 Tổng quan
Tan công đối kháng là một kĩ thuật tắn công trong máy học qua đó attacker sẽ cỗ
gắng đề lừa gạt các mô hình với các đữ liệu lừa đảo, loại hình tấn công này đang gia tăng
các mối đe doa trong trí tuệ nhân tạo và cộng đồng nghiên cứu về máy học Lý do phôbiến là gây ra một chức năng, dự đoán sai trong mô hình máy học Một cuộc tấn công
14
Trang 29đôi kháng có thê sẽ đưa vào mô hình các đữ liệu sai lệch không chính xác khi huân luyện,
hoặc là đưa ra những dữ liệu có thiết kế độc hại dé lừa các mô hình đã được huấn luyện.
*Duck" <0.07 *Horse `
- me
“How are you?’ 0.01 ‘Open the door’
Hình 2.2 minh hoa tan công đối kháng [8].
2.3.2 Cách thực hiện tấn công đối kháng
Học máy đối kháng là một lĩnh vực nghiên cứu hình thức tấn công mà mục đích
là làm giảm hiệu quả của các trình phân loại trên một số nhiệm vụ riêng Tan công đốikháng có thể chia thành ba loại chính sau:
e Tấn công đầu độc (Poisoning attack): người tan công sẽ tác động trực tiếp lên dữ
liệu huấn luyện (training data) hoặc nhãn dữ liệu (label) khiến cho các mô hìnhtrở nên sai lệch và kém hiệu quả trong quá trình triển khai
e Tấn công trốn tránh (Evasion attack): cuộc tan công này là phố biến nhất và các
phương pháp tấn công cũng được nghiên cứu nhiều nhất Người tan công sẽ thao
túng dữ liệu trong quá trình triển khai dé lừa các mô hình dự đoán đã được huấn
luyện từ trước Vì phương pháp tấn công này được thực hiện ở công đoạn triển khai cho nên đây là loại tan công thực tế và được sử dụng rộng rãi nhất Thông thường những kẻ tan công sẽ có gắng dé tránh bị phát hiện bởi các mô hình bằng
15
Trang 30cách làm rối nội dung của mã độc hay e-mail rác Do đó các mẫu dữ liệu sẽ đượcphân loại là hợp lệ mà không phải tác động đến dữ liệu huấn luyện (training data).
e Tấn công trích xuất thông tin (Exploratory attack): người tấn công thực hiện đánh
cắp hoặc trích xuất thông tin từ các mô hình máy học dé dung lại các mô hình máy học tương tự hay trích xuất được các dữ liệu đã được sử dụng dé huấn luyện các mô hình đó Phương pháp tấn công này cực kì nguy hiểm vì đữ liệu đào tạo
hoặc thông tin của các mô hình là các dữ liệu nhạy cảm và bí mật.
2.3.3 Phân loại tan công đối kháng
e Tấn công whitebox (whitebox attack): tan công whitebox là ngữ cảnh tan công
mà người tấn công có được toàn bộ các thông tin của mô hình máy học, bao gồm
cả kiến trúc và các tham số của mô hình Thông thường cuộc tấn công sẽ bao gồm
2 giai đoạn:
a Ước lượng tham số (Direction sensitivity estimation): kẻ tấn công sẽ cố
gắng tìm ra những thuộc tính làm ảnh hưởng đến nhãn đầu ra của các mô
hình Một số kĩ thuật: L-BFGS (Limited-memory BFGS), FGSM (Fast
Gradient Sign Method), Jacobian Based Method.
b Lựa chọn sự thay đổi (perturbation selection): dựa vào những thông tin đã
có được từ giai đoạn trước, kẻ tan công sẽ chon ra những thuộc tinh có độ
thay đôi nhỏ nhất mà vẫn dẫn đến kết quả như mong đợi
e Tan công blackbox (blackbox attack): tan công blackbox là ngữ cảnh tan công mà
người tấn công hoàn toàn không có thông tin nào về các mô hình như kiến trúchoặc tham số Một số hình thức phô biến của dạng tấn công blackbox:
a Dạng không thích ứng (non-adaptive): Kẻ tan công sẽ biết được bộ dit liệu
huấn luyện có định cho trước và dùng bộ dữ liệu này dé tạo lại một môhình máy học tương tự như mô hình máy học mà kẻ tấn công nham tới.Sau đó thực hiện tấn công whitebox dựa trên mô hình máy học vừa tạo lại
16
Trang 31b Dạng thích ứng (adaptive): Ở dang này người tan công sẽ tạo lại bộ dữ liệu
bang cách sinh ra các mẫu đầu vào và sau đó truyền vào mô hình máy học
mục tiêu dé nhận lại nhãn dữ liệu và tong hợp lại thành bộ dữ liệu Với cấuhình này, kẻ tan công có thé tùy chỉnh dit liệu đầu vào dé kiểm tra thuộc
tính của mô hình mục tiêu, qua đó có thể xây dựng mô hình thay thế chính
xác hơn.
c Dạng giới han (strict): Dạng này người tan công chỉ có quyền truy cập vào
một phần của bộ đữ liệu đã được huấn luyện cho các mô hình máy học
mục tiêu Mục đích chính của dạng tấn công blackbox là dựng lại một mô
hình lại một mô hình máy học tương tự với mô hình mục tiêu nhắm tới sau
đó thực hiện tắn công whitebox trên những thông tin và kiến trúc của mô
17
Trang 32dimensionality reduction bao gồm support-vector machines, random forests, gradient
boosting, k-mean và DBSCAN, và được thiết kế dé sử dụng qua lại giữa các thư viện về
xử lí số liệu và khoa học như NumPy và SciPy, Pandas,
Scikit-learn là một công cụ hỗ trợ mạnh mẽ cho việc tạo ra các sản phẩm Thư
viện nay tập trung vao một số ưu điểm như: dễ sử dụng, dễ lập trình, dé làm việc, dé
tham khảo và hiệu quả cao.
Để tăng hiệu suất làm việc cho Sklearn, thư viện python này được viết nền tảng
trên phía dưới là các thư viện của C.
Dưới đây là một số nhóm thuật toán thường được sử dụng và xây dựng bởi thư
viện sklearn:
e Clustering: là nhóm các thuật toán có chức năng phân cụm, được sử dụng
cho dữ liệu không gán nhãn.
e Cross Validation: là thuật toán kiểm thử chéo, mục đích sử dụng đánh giá
mức độ hiệu quả của các thuật toán học giám sát, sử dụng dữ liệu kiểm thửtrong quá trình huấn luyện, tạo ra mô hình
e Datasets: sẽ chứa san một nhóm các tập dữ liệu phô biến và được tích hợp
sẵn trong thư viện
e Dimensionality Reduction: thuật toán này được sử dụng dé giảm số lượng
các thuộc tính quan trọng trong tập dữ liệu thông qua một số phương phápnhư tông hợp, lựa chọn thuộc tinh và biéu diễn dữ liệu
e Ensemble methods: các phương pháp tập hợp.
e Feature extraction: là kĩ thuật trích xuất thuộc tính, mục đích là dé xác định
các thuộc tính một cách thích hợp từ dữ liệu hình ảnh và ngôn ngữ.
e Feature selection: chọn ra các thuộc tính hay lựa chọn ra các thuộc tính
quan trọng trong huấn luyện, tạo ra các mô hình
e Parameter Tuning: tinh chỉnh, lựa chọn tham số phù hợp đề tối ưu hóa mô
hình
18
Trang 33e Manifold Learning: thuật toán này sẽ tổng hợp và sau đó phân tích các dữ
liệu đa chiều
e Supervised Model: học giám sát, học các dữ liệu đã được gắn nhãn.
2.4.2 Pytorch
© PyTorch
Hinh 2.4 logo Pytorch.
Pytorch [10] là một framework may học mién phí dựa trên Torch library (một thu
viện mã nguồn mở máy học được viết bằng ngôn ngữ Lua và không còn được phát triển
tiếp từ năm 2018), được sử dụng trong các ứng dụng như thị giác máy tính (computer
vision) và xử lý ngôn ngữ tự nhiên (natural language processing), được phát triển banđầu bởi Meta AI và bây giờ là một phần của Linux Foundation Mặc dù thư viện pytorch
được sử dụng bằng ngôn ngữ python được ưu thích hơn tuy nhiên pytorch cũng đã hỗ trợ thư viện được viết bằng ngôn ngữ C++.
Pytorch cung cấp hai tính năng xử lý bậc cao đó là:
e Tensor computing (như NumPy) với khả năng tăng tốc mạnh mẽ thông qua GPU
(graphic processing units).
@ Mạng lưới than kinh sâu xây dựng dựa trên hệ thống phân biệt tự động
Trang 34tính được trích xuất cùng với một tệp csv CICFlowMeter là một công cụ mã nguồn mở
được viết bang Java và có thé được tai từ Github Ma nguồn của công cụ có thể được
tích hợp vào các dự án khác nhau và cũng có thể linh hoạt trong việc tùy chỉnh các thuộc
tính dé tính toán, tạo thêm thuộc tính mới hoặc kiểm soát thời gian timeout của các luồng
mạng.
CICFlowMeter có thé được sử dụng dé tạo ra các luồng mạng ở cả hai chiều, gói
tin đầu tiên là gói tin chuyển tiếp (từ nguồn tới dich) và gói tin nhận được (từ đích tới
nguồn) Một số thuộc tính như thời lượng, số lượng gói tin, số lượng bytes, chiều dai của
gói tin, có thé tính riêng lẻ trong các gói tin chuyền tiếp và gói tin nhận.
Công cụ này được sử dụng phô biến trong việc phát hiện bat thường và được sửdụng trong nhiều tập dữ liệu về bảo mật như tập dữ liệu Android Adware General
Malware (CICA AGM 2017), tập dữ liệu IPS/IDS (CIC-IDS-2017), tập Android
Malware (CIC-And-Mal-2017), và Distributed Denial of Service (CIC-DD).
Dé trích xuất được nhiều thông tin hơn từ các tệp PCAP hỗ trợ cho việc ghi nhãncho loại thiết bị trong quá trình xử lý dữ liệu, chúng tôi đã tùy chỉnh lại một số đoạn code
của CICFlowMeter [12].
2.4.4 Một số công cụ hỗ trợ tấn công đối kháng
Dưới đây là một vài công cụ mã nguồn mở được sử dụng trong dé tài dé thực
nghiệm các cuộc tan công đối khang:
e Adversarial Robustness Toolbox (ART) [13]: ART là một thư viện mã nguồn
mở sử dụng ngôn ngữ lập trình Python và được sử dụng cho các vấn đề bảo mậtliên quan đến mô hình trí tuệ nhân tạo ART cung cấp công cụ cho phép ngườilập trình và các nhà nghiên cứu sử dụng để mô phỏng tấn công, bảo vệ và đánhgiá các mô hình máy học và các ứng dụng chống lại các cuộc tan công đối kháng.Thư viện ART hỗ trợ tất cả các frameworks học sâu va máy học (TensorFlow,
Keras, PyTorch, MXNet, scikit-learn, XGBoost, LightGBM, CatBoost, GPy, ),
20
Trang 35tất cả các dạng dữ liệu (hình ảnh, bảng, âm thanh, video) và các tác vụ (phân loại,
phát hiện vật thể, nhận diện giọng nói, tạo đối tượng, chứng chi, )
e Foolbox (Fast adversarial attacks to benmark the robustness of machine
learning models) [14]: Foolbox cũng là thư viện mã nguồn mở của Python giúp
dé dàng tao ra các cuộc tan công đối kháng trên các mô hình học sâu Foolbox hỗ
trợ một số frameworks như PyTorch, TensorFlow và JAX
e CleverHans [15]: CleverHans là một thư viện mã nguồn mở Python được sử
dụng dé đánh giá điểm yếu của các mô hình máy học trước các cuộc tan công đối
kháng CleverHans hỗ trợ 3 frameworks máy học là JAX, PyTorch và TF2
CHƯƠNG 3 GIỚI THIỆU MÔ HÌNH MidSiot
3.1 Tổng quan về MidSiot
MidSiot (A Multistage Intrusion Detection System for Internet of Things - hệ
thống phát hiện xâm nhập nhiều giai đoạn cho mang IoT), [37] Mô hình được tao ra từviệc thử nghiệm và ứng dụng những kỹ thuật máy học (Machine Learning) khác nhau détạo ra một kiến trúc IDS gồm nhiều giai đoạn có khả năng tự động phát hiện các cuộctan công mang với độ chính xác cao MidSiot được triển khai ở các Internet gateways
(những gateway được quản lý bởi các nhà cung cấp dich vu internet - ISP) va IoT local gateways (những gateway được đặt ở local mang của các thiết bi IoT) Mô hình MidSiot được đề xuất sẽ bao gồm 3 giai đoạn: (1) nhận biết các lưu lượng traffic ứng với từng
loại thiết bị IoT được đặt trong mạng; (2) phân loại những lưu lượng mạng độc hại vànhững lưu lượng mang bat thường, không an toàn; và (3) giai đoạn cuối sẽ xác địnhnhững hình thức tấn công phổ biến tương ứng với từng lưu lượng mang độc hại Hai giai
đoạn sau (2 và 3) sẽ được xử lý bởi Internet gateways trong khi giai đoạn đầu tiên (1) sẽ
được đặt ở local gateway, việc này giúp tận dụng khả năng tính toán mạnh mẽ của các
21
Trang 36Internet gateway đồng thời sử dụng kha năng tính toán của các thiết bi mạng biên (local
gateways) dé giảm lưu lượng tải cho internet gateway Kết quả của mô hình được đánh
giá trên 3 bộ dữ liệu mạng IoT được sử dụng phô biến dé huấn luyện các mô hình IDS
(IoTID20, CIC-IDS-2017, và BOT-IoT) với kết quả nhận biết, dự đoán các hình thức tấncông phô biến nhắm tới những thiết bị IoT là khoảng 99.68%, điều này chứng tỏ mô hình
MidSiot có thé được sử dụng trong thực tế và hiệu quả dé bảo vệ mạng IoT.
3.2 Mô hình đề xuất của MidSiot
IoT Devices y > vi
Internet
| that ISP Gateway |
_ pa “ a /\`» gem Home Gateway Stage 2: Attack /\
Hình 3.1 Mô hình tong quan cua MidSiot.
Kiến trúc tông quan của mô hình MidSiot gồm ba giai đoạn và được phan tán giữalocal network (ở phía mạng local của các thiết bị) và phía nhà cung cấp dịch vụ internet(ISPs) Giai đoạn đầu tiên hoạt động ở local gateways dé xác định các loại thiết bị mạng
thông qua network behaviour (hành vi mạng) từ việc học các lưu lượng mạng thông
thường của các thiết bị tương ứng Giai đoạn kế tiếp, được tiến hành ở Internet gatewayscủa nhà cung cấp dụng vụ mạng, tập trung vào việc phân loại những lưu lượng mạng từcác thiết bị IoT là lưu lượng độc hay là những lưu lượng thông thường, an toàn đối vớicác thiết bị IoT Khi đã xác định được những lưu lượng mạng bat thường, những thôngtin cần thiết sẽ được chuyền qua giai đoạn ba dé xác định chính xác được hình thức tan
22
Trang 37công nao đang được thực hiện nhắm tới các thiết bị IoT Vì hai giai đoạn cuối được thực
hiện ở phía các ISPs, bao gồm việc tổng hợp một lượng lớn dữ liệu mạng được đây về
từ giai đoạn một, việc xác định chính xác các loại thiết bị IoT cùng với các thông tin được trích xuất từ lưu lượng mạng (network traffic) ở giai đoạn đầu tiên là vô cùng quan trọng đề gia tăng tỉ lệ chính xác của việc phát hiện những lưu lượng mạng không an toàn
trên những giai đoạn sau, đặc biệt cho những tấn công diện rộng và mục tiêu nhắm vàonhiều hệ thống mạng khác nhau
Trained model stage 1
(Send back to local)
Train Models
(at ISP)
23
Trang 38Trained model Load Model Prediction device types Load Model
ISP Storage |—————> (stage2 - classify i* : (stagel - classify
malicious/benign) (Forward prediction result device types)
and features to ISP)
Prediction) Trained model
al No Home Gateway
Malicious?
Yes |
Trained model Load Model Prediction Home
E——————( (stage3 - classify attack ————————— Action Manager
Hình 3.3 Sơ đồ giai đoạn dự đoán, phân loại các luông dữ liệu mạng
Hai sơ đồ trên biéu diễn các biểu đồ khối về những giai đoạn hoạt động chínhtrong mô hình MidSiot, bao gồm giai đoạn huấn luyện tạo ra các IDSs (training phase)
và giai đoạn dự đoán, xác định, phân loại (prediction phase) Ngoài ra, hai sơ đồ trêncũng thể hiện sự kết nối và tương tác giữa các thành phần của mô hình IDS được đề xuất.Chỉ tiết hơn, về hình 3.2, những luồng đữ liệu mạng thô sẽ được bắt (captured) bởi nhữngthành phần hay công cụ về phân tích các luồng gói tin mạng (packet flow inspection) vàchuyền tiếp thành một dang network flows (luồng mạng) Những flows này sẽ được
truyền vào thành phần chọn lọc, trích xuất các thuộc tính cần thiết cho việc huấn luyện
mô hình máy học một cách hiệu quả và tính toán những thống kê cho các network flow
Thuật toán chọn lọc dữ liệu cũng được áp dụng để lọc và loại bỏ những thuộc tính được
trích xuất Trong giai đoạn huấn luyện (training phase), những thuộc tính này sẽ đượctong hợp lại thành một tập dữ liệu va sử dụng dé huấn luyện các mô hình Một khi mô
hình được huấn luyện thành công, nhà cung cấp dịch vụ mạng sẽ lưu trữ những mô hình
này va sử dụng cho giai đoạn hai và ba của công đoạn dự đoán va phân loại, trong khi
24
Trang 39đó mô hình được sai cho giai đoạn đầu tiên sẽ được triển khai ở local gateways Một điểm chú ý đó là giai đoạn hai sẽ được tạo bởi một vài mô hình IDSs, và mỗi mô hình sẽ
thực hiện nhiệm vụ phân loại luồng đữ liệu mạng cho từng loại thiết tương ứng
Trong giai đoạn dự đoán, được minh họa trong hình 3.3, những thuộc tính mạng
cũng sẽ được trích xuất và chọn lọc một cách tương tự như ở giai đoạn huấn luyện; tuy
nhiên, những thuộc tính này sẽ được truyền trực tiếp vào các mô hình đề thực hiện việc
dự đoán phát hiện các luồng dữ liệu mạng độc hại Chi tiết hơn, mô hình của giai đoạn
đầu tiên được chạy ở local gateway sẽ được sử dụng dé xác định các loại thiết bị loT cho
từng bộ thuộc tính đã trích xuất Tất cả những thông tin này được chuyên sang internet
gateway, được đặt ở hạ tang của các nhà cung cấp dịch vụ mạng (ISPs) và xử lý cho giaiđoạn hai, tại đây những mô hình đã được huấn luyện hoàn chỉnh và tương ứng với từng
loại thiết bị sẽ được chọn dé phân loại hay phát hiện các hành vi bat thường từ các thuộc
tính Nếu những hành vi độc hại được phát hiện, tiếp tục những thông tin thuộc tính sẽđược chuyền tiếp sang giai đoạn ba dé phân loại thành các loại tan công phổ biến đãđược định nghĩa và huấn luyện trước đó Kết quả phát hiện hay phân loại, sẽ bao gồmloại thiết bị loT đang bị tấn công và loại hình tấn công đang được thực hiện, được gửitới hệ thống quản lý hoạt động đề thực hiện những tác vụ cần thiết (ghi lại nhật ký thôngtin của cuộc tấn công, chặn luồng dữ liệu mạng của thiết bị đang chịu sự tấn công, thôngbáo cho quản trị viên về cuộc tấn công) Chú ý, bởi vì kiến trúc của MidSiot sử dụngnhững giai đoạn kết nối với nhau, những lỗi xảy ra ở một giai đoạn có thể ảnh hưởngkhông những giai đoạn sau mà còn gây ra ảnh hưởng tới tổng thé hoạt động của hệ thống
Ví dụ, nếu MidSiot xác định các loại thiết bị không chính xác, kết quả của giai đoạn cókhả năng sẽ không chính xác Bởi vì mô hình của giai đoạn hai được huấn luyện để họccác hành vi, khuôn mẫu mạng của từng loại thiết bị Tương tự, nếu giai đoạn hai dự đoạnluồng đữ liệu an toàn thành dữ liệu độc hại thì kết quả ở giai đoạn cuối là không chính
xác và dân đên thực hiện cảnh báo sai.
25
Trang 403.3 Phương pháp thực hiện
Dé đạt được kết quả tốt nhất cho mô hình MidSiot, chúng tôi chia phương pháp
thực hiện thành ba nội dung chính.
3.3.1 Thu thập và xử lý dữ liệu
Mục tiêu của nội dung này là thu thập các tập đữ liệu khác nhau có thể sử dụng
dé xay dung hé thống phát hiện xâm nhập cho mạng IoT Các tập dữ liệu được thu thập
trên mang internet:
e Bộ dữ liệu IoTID20 bao gồm 2 thiết bị IoT (một là thiết bi cho nha thông minh
SKT NGU và EZVIZ Wifi camera) và một vai thiết bị không thuộc loại IoT được
đánh dấu là thiết bị ngoại vi Những hình thức tan công trên những thiết bị này
được phân loại thành bốn loại tắn công lớn và tông cộng là 7 loại tan công chỉ tiết
được miêu tả trong bang 3.1.
e CIC-IDS-2017, bộ dữ liệu này chứa các thuộc tính mạng được trích xuất từ 6 loại
tấn công được liệt kê trong bảng 3.2 nhắm tới 12 loại thiết bị oT khác nhau, đượcdán nhãn theo hệ điều hành và kiến trúc của từng thiết bị Ngoài ra, còn có mộtvài thiết bị ngoại vi dé tạo ra các luồng dữ liệu mạng mang hành vi thông thường
(an toàn).
e_ Bộ dữ liệu BOT-IoT có năm loại thiết bị IoT và một vài thiết bị ngoại vi Những
dữ liệu mạng độc hại từ những thiết bị này được phân chia thành ba loại tấn công
và được biéu diễn trong bảng 3.3
26