1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp An toàn thông tin: MidSiot: Hệ thống phát hiện xâm nhập nhiều giai đoạn cho mạng IoT

117 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề MIDSIOT: Hệ thống phát hiện xâm nhập nhiều giai đoạn cho mạng IoT
Tác giả Nguyen Dat Thinh, Ho Xuan Ninh
Người hướng dẫn TS. Le Kim Hung
Trường học Trường Đại học Công nghệ Thông tin
Chuyên ngành Khoa học máy tính
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2023
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 117
Dung lượng 54,5 MB

Nội dung

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 2

NGUYEN 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 3

THONG 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 4

Lờ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 5

Mụ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 6

2.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 7

4.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 8

DANH 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 9

Hì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 10

Hì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 11

Hì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 12

Hì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 13

DANH 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 14

DANH 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 15

TÓ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 16

CHUONG 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 17

anomaly-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 18

khá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 19

e 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 20

CHƯƠ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 21

subnets 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 22

bờ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 23

2.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 24

Trí 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 25

e 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 26

e@ 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 27

Họ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 28

thuộ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 30

cá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 31

b 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 32

dimensionality 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 33

e 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 34

tí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 35

tấ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 36

Internet 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 37

cô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 38

Trained 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 40

3.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

Ngày đăng: 23/10/2024, 01:11

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w