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: Xây dựng hệ thống phát hiện tấn công cho hệ thống mạng CAN bus

98 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 đề Xây dựng hệ thống phát hiện tấn công cho hệ thống mạng CAN bus
Tác giả Lê Tiền Phong, Trần Như Phát
Người hướng dẫn TS. Lê Kim Hùng
Trường học Trường Đại học Công nghệ Thông tin
Chuyên ngành An toàn thông tin
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 98
Dung lượng 45,96 MB

Nội dung

Trong quá trình thực hiện, chúng tôi đã tiến hành thu thập, phân tích, xử lí và tổnghợp các bộ dữ liệu liên quan đến các cuộc tấn công vào mạng CAN Bus, đồng thời nghiên cứu và áp dụng 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 MÁY TÍNH VÀ TRUYÈN THÔNG

LÊ TIỀN PHONG - 19522010 TRAN NHƯ PHÁT - 19520211

KHÓA LUẬN TÓT NGHIỆP

XÂY DUNG HE THONG PHAT HIỆN TAN CÔNG CHO

HE THONG MANG CAN BUS

BUILDING AN INTRUSION DETECTION SYSTEM FOR CONTROLLER AREA NETWORK (CAN) BUS SYSTEM

KY SU NGANH AN TOAN THONG TIN

GIANG VIEN HUONG DAN

TS LE KIM HUNG

TP HO CHi MINH, 2023

Trang 2

LỜI CẢM ƠN

Nhóm thực hiện xin được gửi lời cảm ơn chân thành đến những người đã đóng góp và hỗ

trợ chúng em trong quá trình nghiên cứu và hoàn thành bài luận văn nay.

Trước hết, chúng em xin gửi lời cảm ơn sâu sắc đến giảng viên hướng dẫn, thầy Lê Kim

Hùng về những chỉ dẫn, hỗ trợ và những gợi ý quý giá của thầy Nhờ có thầy hỗ trợ mànhóm chúng em đã phát triển ý tưởng và thực hiện nghiên cứu một cách hiệu quả

Chúng em cũng muốn bày tỏ lòng biết ơn đến tất cả các giảng viên và cán bộ khoa Mạng

máy tính và Truyền thông, cũng như tat cả các thầy cô khác đã và đang công tác tại trườngĐại học Công nghệ Thông tin, đã chia sẻ kiến thức, kinh nghiệm và các bài học quý giátrong suốt quá trình chúng em học tập tại trường Sự đồng hành và sự hỗ trợ của các thầy

cô đã tạo điều kiện thuận lợi để chúng em hoàn thành bài luận văn này Chúng em xinkính chúc khoa Mạng máy tinh và Truyền thông nói riêng, và trường Dai học Công nghệ

Thông tin nói chung ngày càng thành công trên con đường giảng dạy, trở thành môi

trường học tập và rèn luyện tốt nhất cho các thé hệ sinh viên tiếp theo trên con đường

giáo dục.

Bên cạnh đó, chúng em xin gửi lời cảm ơn đên gia đình và bạn bẻ đã luôn đứng bên cạnh

và cô vũ chúng em trong suôt quá trình học tập và nghiên cứu, giúp chúng em có thêm

động lực dé hoàn thành quá trình học tập đến ngày hôm nay

Cuối cùng, chúng em xin chân thành 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 đã luôn nhiệt tình hỗ trợ, chia sẻ và góp ý cho nhóm chúng

em trong suốt thời gian thực hiện khóa luận

TP Hồ Chí Minh, ngày tháng năm 2023

Nhóm tác giả

Trang 3

ĐẠI HỌC QUOC GIA TP HO CHÍMINH CỘNG HÒA XÃ HOI CHỦ NGHĨA VIỆT NAM

TRƯỜNG ĐẠI HỌCCÔNG NGHỆ THÔNG TIN

BUILDING AN INTRUSION DETECTION SYSTEM FOR CONTROLLER AREA

NETWORK (CAN) BUS SYSTEM

Cán bộ hướng dẫn: TS Lê Kim HùngThời gian thực hiện: Từ ngày 01/03/2023 đến ngày 15/06/2023

Sinh viên thực hiện:

Lê Tiến Phong - 19522010Trần Như Phát - 19520211

Trang 4

Nội dung đề tài:

Mục tiêu nghiên cứu:

+ Tìm hiểu về trí tuệ nhân tạo (AI — Artificial Intelligence) và khả năng ứng dung của AI

vào các hệ thống phát hiện xâm nhập

+ Tìm hiểu cách thức hoạt động của hệ thong mang CAN Bus (Controller Area Network)

va anh hưởng của các loại tan công khác nhau lên hệ thông mang.

+ Tìm hiểu, thử nghiệm va áp dụng vào xây dựng hệ thống phát hiện các cuộc tan công

đối với hệ thống mạng CAN Bus

+ Thử nghiệm và đề xuất được mô hình trí tuệ nhân tạo có khả năng phát hiện tốt các tất

công đối với hệ thống CAN Bus

Đối tượng nghiên cứu: Các tắn công khác nhau nhắm vào hệ thống mạng CAN Bus và việc

áp dụng trí tuệ nhân tạo dé phát hiện một cách hiệu quả các tan công vào hệ thống này

Phạm vỉ nghiên cứu: Nghiên cứu sự ảnh hưởng của các cuộc tân công khác nhau vào hệ thông mang CAN Bus.

Phương pháp thực hiện:

e Cơ sở lý thuyết:

+ Tìm hiểu và phân tích định dang tin nhắn trong hệ thống CAN Bus

+ Tìm hiểu sự ảnh hưởng của các tấn công khác nhau lên hệ thống CAN Bus

e Thu thập và tong hợp các bộ dir liệu về tan công vào hệ thông CAN Bus:

+ Thu thập các bộ dữ liệu khác nhau về các loại tấn công lên hệ thống mạng CANBus.

Trang 5

+ Tìm hiểu các thuật toán và mô hình trí tuệ nhân tạo khác nhau.

+ Cài đặt các thuật toán trên môi trường Google Colab.

+ Tiên hành huân luyện các mô hình đê xuât với các bộ dir liệu, đánh giá các két qua

thu được.

+ Chọn lọc và đề xuất được mô hình có khả năng phát hiện tấn công tốt nhất đối vớicác cuộc tan công CAN Bus

- Két quả mong đợi:

+ Báo cáo kết qua tong hợp được về kha năng phát hiện tấn công đối với hệ thống CAN

Bus áp dụng các mô hình trí tuệ nhân tạo khác nhau.

+ Thu thap,tong hop, xử lí các bộ đữ liệu liên quan về tan công vào hệ thống CAN Bus.Xây dung được một thư viện cung cấp các dif liệu liên quan dé phục vụ các nghiên cứu

liên quan.

+ Đề xuất được một mô hình trí tuệ nhân tạo có khả năng phát hiện tốt tấn công, có thể

áp dụng vào các hệ thống CAN Bus

- _ Công nghệ liên quan đến đề tài:

+ Sử dụng Google Colaboratory, Jupyter Lab dé cai đặt và huấn luyện các mô hình

+ Sử dụng các framework Scikit-Learn, Pandas để huấn luyện

- Tinh mới dé tài: Đề xuất được một mô hình với khả năng phát hiện tan công tốt hơn

các mô hình trí tuệ nhân tạo truyền thống Mô hình mới này có thể được áp dụng lên

hệ thống CAN Bus dé tăng độ chính xác và hiệu suất phát hiện các tấn công.

- _ Kế hoạch thực hiện:

Thời gian Công việc Phân công

Cài đặt môi trường Anaconda.

09/03/2020 — 26/03/2020 | Tìm hiểu python, pandas,

framework scikit-learn và công nghệ trí tuệ nhân tạo.

Trang 6

Học các kỹ thuật giải quyếtunbalanced dataset Ap dung

cac ky thuat nay dé balance

lại tập Syscan va thử với mô

Tìm hiểu phương pháp

one-class one-classification train

model trên nhãn 0.

Áp dụng cho 4 thuật toán

SVM, isolation forest, elliptic envelope va local outlier

factor vào các dataset.

15/04/2023 — 30/04/2023

Check lại kết quả của 4

model one - class

classification với tham số

contamination là ty lệ

abnormal/tan công trên tổng

sô sample.

Chạy lại Model Random

Forest trên các dataset không

có săn label và xóa Feature

CANID.

Trang 7

đã sử dụng và cách xử lý của

các dataset này (cách gán nhãn, label_encoding ).

01/05/2023 — 15/05/2023 Áp dụng phương pháp One —

class classification lên tất cả

6 dataset và tim ra dataset có

két qua kha quan lam trong

tam train.

Chay thử model Random

Forest kết hợp với CNN trên

python cho phép người dùng

download 6 dataset đã tông

Trang 8

30/05/2020 - 27/06/2020 Chuẩn bị bảo vệ khóa luận.

Hoàn thành khóa luận.

Trang 9

Xác nhận của CBHD

TS Lê Kim Hùng

TP HCM, ngày tháng năm 2023

Sinh viên 1 Sinh viên 2

Lê Tiến Phong Trần Như Phát

Trang 10

MỤC LỤC

DANH MỤC HÌNH -2-2 2E cevzvzreseez

DANH MỤC BẢNG - +5 cscx+eczzxzeez

DANH MỤC TU VIET TẮTT - - s+s+s+z

TOM TAT KHÓA LUẬN - se:

Chương 1.

1.1 Tên đỀ tài -.scccccccecrcrersrrerses

1.2 Đặt vấn đề -ccccccrcxsrerrreseee

1.3 Mục tiêu của dé

tài -.c -e-1.4 Đối tượng và phạm vi nghiên cứu

1.4.1 Đối tượng nghiên cứu

1.4.2 Pham vi nghiên cứu

Chương 2. CƠ SỞ LÝ THUYÉT

2.1 Controller Area Network - CAN

2.1.1 2.1.2. Tổng quan về mạng CAN

Các môi de dọa vê bảo mật

2.2 Các mô hình học máy

. -2.2.1 2.2.1.1 2.2.1.2 2.2.1.3 2.2.1.4 2.2.1.5. Các mô hình học máy truyền thốn Random Forest Classifier

K-Neighbor Classifier

TabNet Classifler

Decision Tree Classifier

Quadratic discriminant analysis 5

Trang 11

2.2.1.6 Gaussian Naive Bay€S HH HH HH HH nh 10 2.2.1.7 Perceptron AlgOrithm - + x1 k vn Hiệp 11 2.2.1.8 Passive Aggressive Classifier cccccecccsssecssecesneceseeeeseeeeeeeseeenees 12 2.2.1.9 Stochastic Gradient Descent Classifier -«+<s«2 13

2.2.2 Các công cu hoc máy tự động - + c + sssiresrrrrrrrrrsee 14

2.2.2.1 TROT oe o 14 2.2.2.2 PyCaret eeceecccessessnecescecsseeeeeessaecesceceeecseeeaeceeaeceeesseeseaeeeseeeeaes 15 2.2.2.3 Auto SKÏ€arn - ng TH nh ngờ 15 2.2.3 Các mô hình học sâu . - Ă E2 11112111 111511 111511185111 xxx 15

2.2.3.1 Convolutional Neural Network — CNN -. ccc+<<ss2 15

2.2.4 Các mô hình học máy kết hop (hybrid mode]) -5- 2-52 16

2.2.4.1 CNN - Random FOT€SỂ - - s5 + 1231133 E*9kEsskEeseeeesee 16

Trang 12

3.5.3 Cách thức hoạt động - L1 S9 HH ng ng Hit 30

3.5.4 Phương thức sử dụng - ship 30

Chương4 THỰC NGHIỆM VÀ DANH GIA - 2-2 se+++x+rserxeei 31

4.1 Các bộ dữ liệu về CAN Bus -cccccccttittrtrrttrrirrrtririrrirrrrirrii 31

4.1.1 SynCAN dataset - Synthetic CAN Bus data < 52 31 4.1.2 CAN Dataset for Intrusion detection (OTTIDS) - 32

4.1.3 Survival Analysis Dataset for Automobile IDS 33 4.1.4 Car hacking for Intrusion DefecfIOn s5 ++<sc+ssccsseesses 34

4.1.5 | Automotive CAN Bus Intrusion Dataset v2 c «++<+2 36

4.1.6 Real ORNL Automotive Dynamometer (ROAD) CAN Intrusion Dataset

37

4.1.7 Xử lí đữ liệu — Trích xuất đặc 011 - 37

4.1.7.1 Xử lí dữ liỆU - QC HS Hy 37

4.1.7.2 Trích xuất đặc trưng — Features extraction -scs s2 40

4.2 Thực nghiệm bộ dữ liệu SynCAN với các mơ hình học máy truyền thống và các

cơng cụ tự đỘn - c k1 1111111191 n TH TH TH TH TH TH HH HH 40

4.2.1 Sklearn Random Forest CÏaSSITIT - 5512k sssvesseseee 40 4.2.2 | TPOT— Automated machine learning tOỌ -« -«<+<<s+2 42 4.2.3 KNeIghbors CÏasSIÍI€T G- SH ng ng 43 4.2.4 TabNet CÏasSIÍI€T HH HH ri 45 4.2.5 _ PyCaret— Automated machine learning tool « «<+ 47 4.2.6 Decision Tree CÏaSSIÍI€T Ăn HH ng rưệt 48 4.2.7 AutoSklearn— Automated machine learning tool - ‹ 50

Trang 13

4.3 Thực nghiệm phương pháp One-class classification áp dung cho 4 thuật toán

SVM, Isolation forest, Minimum Covariance Determinant và Local outlier factor5 1

4.3.1 One-class classification cho SVM nghiệt 51 4.3.2 One-class classification cho Isolation ÍOr€Sf - ‹ -«+-s«2 54 4.3.3 One-class classification cho Minimum Covariance Determinant 55

4.3.4 One-class classification cho Local outlier faCtOr - 56

4.4 Thực nghiệm với mô hình CNN kết hợp SVM - - 2-2 se ee: 58

4.5 Mô hình LSTM kết hop CNN dé xuate c.cecceccccccccscesesseseesessessesessestesseaees 60

4.6 Thử nghiệm với các mô hình phô biên và so sánh kêt quả với mô hình đê xuat

63

4.6.1 Quadratic Discriminant AnaÌyS1S -s- 55s <++<s++sexsseeeesees 63

4.6.2 Gaussian Naive Baye©S ch nHnnHHnHnHHnHnH kg 66

4.6.3 Perceptron AlgorIthm - - «- c 11k ng 69 4.6.4 Passive Agressive CÏaSSIÍIGT - SG HH ng kg 71

4.6.5 Stochastic Gradient Descent CÏassIfIer - «+-s<<<<++s+2 74

4.7 So sánh kết quả thực nghiệm với các nghiên cứu khác - 76

Chương 5 | TONG KET VÀ HƯỚNG PHÁT TRIÉN 2-5 5z: 78

5.1 Tổng kết -c St TT 1121121121111 11 1101121121111 11111 111gr g 78

5.2 Hướng phat trin - + ++E+2EE+EESEEEEE2E12E17171121111 7121.211 crxe 79

TÀI LIEU THAM KHẢO - 5-56 SE SE‡EEEESEESEEEESEEEEEEEEEEEEEEEEEEEEkEEkrkrrkrkrrvee 80

Trang 14

DANH MỤC HÌNH

Hình 2-1: Cơ chế hoạt động của Random TFOT€S - s5 S5 + ++vvseeereeeerseees 6Hình 2-2: Cơ chế hoạt động của K-Neighbor Classifier ¿5-5 s2 s+cs+£zzs2 7Hình 2-3: Cơ chế hoạt động của Decision “TT€€ - - - + tk tre 9Hình 2-4: Công thức phân phối Gaussian Naive Bayes - 2 2+ sccccsz 11

Hình 2-5: Bài toán Perceptron ce eeeescecssceessecescecesceeeeeesaeesseecseeeseeesaecesaeeeneeseaes 12

Hình 2-6: Cơ chế của thuật toán Passive Aggressive -:-©5c©ccccccccerecres 13

Hình 2-7: Cơ chế hoạt động của TPOTT ¿2-2 E+EE+EE+E£+E£E£Eerkerxerkersrree 14Hình 2-8: Cơ chế hoạt động của CNN - - c H HH HS HH HH ng krưưn 16Hình 3-1: Mô hình phát hiện tan công ¿- 2: +¿©2+++¿+Ex+2E++Ex+erxezrxrrreeree 19

Hình 3-2: Tinh Accuracy trên SKÏ€aT7Tn - - - G5 + 1111 1 1 ng ng 21

Hình 3-3: Confusion matrix c- 2 2c 0112308951901 910 191v vn nh nh rn 22

Hình 3-4: Luồng hoạt động của thư viện CANDataloader : s¿2=5+ 29

Hình 4-1: Quy trình xử lí các bộ dữ liệu - ¿+25 +2 +E+seerseeeeeerereers 38

Hình 4-2: Quy trình xử lí bộ dữ liệu Automotive CANBus Intrusion Dataset v2 39

Hình 4-3: Sơ đồ luồng hoạt động của Random Foresi : 2 s¿cszs+c++ 41Hình 4-4: So đồ luồng hoạt động của TPPOTT 2-2 2+ £+++£E+£E++Es+rxerxezez 42Hình 4-5: Sơ đồ luồng hoạt động của KNeighbors - 2-2 252 x+cxzs+zsz +2 43Hình 4-6: Sơ đồ luồng hoạt động của TabÌNet 2-5 2 22££+E+Ee£Eerxerxersree 45Hình 4-7: Sơ đồ luồng hoạt động của PyCaret - 2 z+cz+xecxerxerxerxersrree 47Hình 4-8: Sơ đồ luồng hoạt động của Decision Tree Classifier - 48Hình 4-9: Sơ đồ luồng hoạt động của Auto Sklearn -s:©s¿©csz+cs+cs+sc+z 50Hình 4-10: Sơ đồ mô hình CNN kết hợp SVM 2-©2¿©22 ++xvzEczrxerxerxcrex 58Hình 4-11: Sơ đồ mô hình LSTM kết hợp CNN ¿- 2: 22 ©5z+cx2zxvcxesree 60Hình 4-12: Sơ đồ hoạt động của Quadratic Discriminant Analysis 64Hinh 4-13: So dé hoat động của Gaussian Naive Bayes se 67Hình 4-14: Sơ đồ hoạt động của thuật toán Perceptron - -s sex 69Hình 4-15: Sơ đồ hoạt động của Passive Aggressive Classifier 71

Hình 4-16: So đồ hoạt động của Stochastic Gradient Descent - ‹ 74

Trang 15

DANH MỤC BANG

Bảng 3-1: Các giai đoạn thực hiỆn óc 3c 1321139111 9111111 11 811 re 25

Bang 3-2: Các layer của mô hình dé xuất - 2 2 s2 +2 +2 E£+E+Ee£Eerxerxerszxee 27 Bảng 4-1: Tổng hợp số lượng tin nhắn trong bộ dữ liệu Survival Analysis Dataset

for Automobile [IDS - -.- - + s1 vn ng TH Hư 34

Bảng 4-2: Tổng hợp số lượng tin nhắn trong bộ Car hacking for Intrusion Detection

35

Bang 4-3: Kết quả thu được khi thử nghiệm SynCAN và Random Forest 42

Bang 4-4: Kết quả thu được khi thử nghiệm SynCAN và KNeighbors 44

Bảng 4-5: Kết quả thu được khi thử nghiệm SynCAN và TabNet 46

Bảng 4-6: Kết quả thu được khi thử nghiệm SynCAN va Decision Tree 49

Bảng 4-7: Kết quả thu được khi thử nghiệm SynCAN và AutoSklearn 51

Bang 4-8: Kết quả thu được khi thử nghiệm One-class SVM - 54

Bang 4-9: Kết quả thu được khi thử nghiệm One-class isolation forest - 55

Bang 4-10: Kết quả thu được khi thử nghiệm Minimum Covariance Determinant 56 Bảng 4-11: Kết quả thu được khi thử nghiệm Local Outlier Fator - 57

Bảng 4-12: Kết quả thu được khi thực hiện thử nghiệm với mô hình CNN — SVM60 Bảng 4-13: Kết quả thu được khi thực hiện thử nghiệm mô hình CNN — LSTM 63

Bảng 4-14: Kết quả thu được khi thực hiện thử nghiệm Quadratic Discriminant 1 5100 HH -: 66

Bang 4-15: Kết quả thu được khi thực hiện thử nghiệm Gaussian Naive Bayes 68

Bảng 4-16: Kết quả thu được khi thực hiện thử nghiệm thuật toán Perceptron 71

Bảng 4-17: Kết quả thu được khi thực hiện thử nghiệm Passive Aggressive Classifier 73

Bảng 4-18: Kết quả thu được khi thực hiện thử nghiệm Stochastic Gradient Descent Bang 4-19: Bảng so sánh các chỉ số trên bộ dit liệu Car Hacking 77

Trang 17

DANH MỤC TU VIET TAT

TU NOI DUNG DIEN GIAI

Giao thức truyền thông nỗi tiếp hỗCAN Controller Area Network trợ những hệ thống điều khién thời

gian thực

AI Artificial Intelligence Trí tuệ nhân tạo

CNN Convolutional Neural Network Mang no ron tich chap

IDS Intrusion Detection System Hệ thống phát hiện xâm nhập

SVM Support Vector Machine May véc tơ hỗ trợ

QDA Quadratic Discriminant Analysis Phân tích phân biệt

Thuật toán Stochastic Gradient

SGD Stochastic Gradient Descent

Descent

Trang 18

TÓM TẮT KHÓA LUẬN

Sự phát triển nhanh chóng của xe tự lái va xe thông minh trong thời gian qua khiếncho chúng trở thành mục tiêu mới cho các hacker trên mỗi hành trình Cốt lõi của xe tự lái,mạng CAN Bus, là một hệ thống liên kết các thiết bị điện tử trong ô tô, cho phép truyền

thông tin và điều khiển các thành phần khác nhau dé vận hành phương tiện Chính vì vậy,

việc bảo vệ hệ thông mạng CAN Bus khỏi các tan công từ bên ngoài trở nên cực kỳ quan

trọng Các tấn công như tấn công tu chối dịch vụ (DoS), chèn tin nhắn giả mạo, có thể

trực tiếp gây ảnh hưởng, thay đổi hành vi của phương tiện, gây nguy hiểm trực tiếp đếnngười dùng trong mỗi chuyến đi

Trong quá trình thực hiện, chúng tôi đã tiến hành thu thập, phân tích, xử lí và tổnghợp các bộ dữ liệu liên quan đến các cuộc tấn công vào mạng CAN Bus, đồng thời nghiên

cứu và áp dụng các thuật toán trí tuệ nhân tạo vào việc phân tích tin nhắn dé phát hiện các

tân công một cách có hiệu quả nhât.

Thông qua đề tài khóa luận này, chúng tôi mong muốn sẽ mang lại được một thưviện chuyên cung cấp dữ liệu về CAN Bus, và đề xuất được một mô hình trí tuệ nhân tạo

có hiệu suat tot, đóng góp vào các nghiên cứu vê hệ thông mạng CAN Bus về sau.

Trang 19

Chương 1 MỞ DAU

1.1 Tên đề tài

XÂY DUNG HỆ THONG PHAT HIỆN TAN CONG CHO HE THONG

MANG CAN BUS

(Building an Intrusion Detection System for Controller Area Network (CAN)

Bus System)

1.2 Đặt van đề

Hệ thống mang CAN Bus đã trở thành một phan quan trọng trong lĩnh vực 6 tô

và điện tử Với khả năng truyền thông tin nhanh chóng và đáng tin cậy, CAN Bus cho

phép các thành phần điện tử trong một phương tiện giao tiếp với nhau một cách hiệu

quả Tuy nhiên, với sự gia tăng đáng ké về sự phức tạp và tính năng của các hệ thống

ô tô hiện đại, cùng với sự phát triển của các công nghệ kết nối thông minh và xe tự

lái, các vấn đề liên quan đến an ninh và an toàn của hệ thống mạng CAN Bus đã trởthành một mối quan tâm đáng kể

Một loại tan công phô biến trên hệ thống mang CAN Bus là tan công giả maotin nhăn Trong tan công này, kẻ tan công can thiệp vào giao tiếp trên mạng CAN Bus

và gửi các tin nhăn giả mạo đến các thành phần điện tử trong phương tiện Giả sử cómột hệ thong 6 tô được trang bi mạng CAN Bus, trong đó các thành phần điện tử nhưđộng cơ, hệ thông điều khiển phanh và hệ thống giảm xóc đều giao tiếp với nhau quamạng CAN Bus Kẻ tấn công đã tìm cách truy cập và can thiệp vào hệ thống này vàgửi một tin nhắn giả mạo cho hệ thống điều khiển phanh trên mạng CAN Bus, vớinội dung tốc độ của xe đã vượt quá giới hạn an toàn Hệ thống điều khiển phanh, nhận

được tin nhắn giả mạo này, sẽ tin răng tốc độ của xe quá cao và thực hiện các biện

pháp phanh khan cấp Điều này có thé dẫn đến việc xe bị phanh gấp đột ngột, gây hư

hại các bộ phận của phương tiện và nguy hiểm trực tiếp cho người lái và hành khách

Tóm lại, vấn đề cần giải quyết là xây dựng một Hệ thống Phát hiện xâm nhập(Intrusion Detection System - IDS) hiệu qua cho hệ thong CAN Bus Su thiéu hụt các

Trang 20

cơ chế bảo mật vững chắc trong giao thức CAN tạo ra một thách thức lớn, vì nó cho

phép những kẻ tan công tiềm năng can thiệp hoặc làm gián đoạn các chức năng quan

trọng của phương tiện, gây ra nguy cơ về an toàn và riêng tư nghiêm trọng Do đó,

việc thiết kế một IDS được tùy chỉnh đặc biệt cho hệ thống bus CAN là rất quan trọng

dé phát hiện và giảm thiêu những xâm nhập đó, đảm bảo tính toàn vẹn và đáng tincậy của các hệ thống ô tô trước các mỗi đe doa bảo mật ngày càng phức tap

1.3 Mục tiêu của đề tài

e Tìm hiểu về trí tuệ nhân tao (AI — Artificial Intelligence) và khả năng ứng

dụng của AI vào các hệ thống phát hiện xâm nhập

e Tìm hiểu cách thức hoạt động của hệ thống mạng CAN Bus (Controller Area

Network) và ảnh hưởng của các loại tắn công khác nhau lên hệ thống mạng

e Tim hiểu, thử nghiệm và áp dụng vào xây dựng hệ thong phát hiện các cuộc

tan công đối với hệ thống mang CAN Bus

e Thu nghiệm va dé xuất được mô hình trí tuệ nhân tạo có khả năng phát hiện

tốt các tat công đối với hệ thống CAN Bus Mô hình đề xuất có độ chính xác

hơn 90% trên 2 bộ dữ liệu trở lên.

1.4 Đối tượng và phạm vi nghiên cứu

1.4.1 Đối tượng nghiên cứu

Các tan công khác nhau nhắm vào hệ thống mang CAN Bus và việc áp dụngtrí tuệ nhân tạo dé phát hiện một cách hiệu quả các tan công vào hệ thống này

1.4.2 Phạm vi nghiên cứu

Phạm vi nghiên cứu: Nghiên cứu sự ảnh hưởng của các cuộc tân công khác

nhau vào hệ thống mạng CAN Bus

Trang 21

Chương 2 CƠ SỞ LÝ THUYET

2.1 Controller Area Network - CAN

2.1.1 Tổng quan về mạng CAN

Mạng CAN (Controller Area Network) là một giao thức truyền thông được

phát triển đặc biệt cho các ứng dụng trong lĩnh vực ô tô và các hệ thống điện tử côngnghiệp và đã trở thành một chuẩn công nghiệp phổ biến được sử dụng rộng rãi toàn

cầu Mạng CAN sử dụng kiến trúc bus, trong đó các thành phần điện tử được kết nối

với nhau thông qua một đường truyền chung Điều này cho phép các thành phần điện

tử truyền dit liệu và nhận dữ liệu một cách đồng thời Các thiết bị trên mạng CAN

được gọi là các nút (nodes), và môi nút có thê gửi và nhận các tin nhăn trên mạng.

Giao tiếp giữa các nút với nhau theo kiểu broadcast bằng các tin nhắn, trong

đó mỗi loại tin nhắn có một định danh ID duy nhất Định danh này giúp xác định cóbao nhiêu tín hiệu trong một tin nhăn Các ID khác nhau có thé chứa số lượng tín hiệu

khác nhau.

2.1.2 Các mối đe dọa về bảo mật

Mặc dù mạng CAN Bus đã trở thành một tiêu chuẩn truyền thông phổ biến

và đáng tin cậy trong lĩnh vực ô tô và điện tử công nghiệp, nhưng nó cũng đối diện

với một sô môi de dọa và rủi ro cân phải cân nhac, có thê kê đên:

e Tấn công từ chối dịch vu (DoS - Denial of Service): Đây là loại tan công

nhằm làm cho hệ thống mạng CAN Bus không hoạt động bình thường hoặckhông thé truyền thông tin Kẻ tan công có thé gửi một lượng lớn tin nhắngiả mạo hoặc gây xung đột tin nhăn dé làm quá tải mang CAN Bus và làmsuy yếu khả năng hoạt động của hệ thống Kết quả là các chức năng quantrọng của xe có thê bị gián đoạn hoặc không hoạt động đúng cách

e Tấn công giả mao tin nhắn (Message Spoofing): Trong tan công này, kẻ tan

công giả mạo hoặc thay đổi nội dung của các tin nhắn được gửi qua mạngCAN Bus Băng cách sử dụng các công cụ và kỹ thuật phần mềm phức tạp,

Trang 22

kẻ tan công có thê đánh cắp thông tin quan trọng, gửi tin nhắn sai lệch hoặc

thực hiện các hoạt động gian lận Ví dụ, kẻ tan công có thể gửi tin nhắn giảmao dé làm cho hệ thống tin rang một chức năng nào đó đã xảy ra (ví dụ:

thông báo bộ phanh đã được kích hoạt) khi thực tế thì không có sự xảy ra đó

2.2 Các mô hình học máy

2.2.1 Các mô hình học máy truyền thống

2.2.1.1 Random Forest Classifier

Random Forest là một trong những thuật toán hoc máy phổ biến trong kỹ

thuật học có giám sát Nó không chỉ áp dụng cho bài toán phân loại mà còn cho bài

toán hồi quy trong học máy Ý tưởng cơ bản của Random Forest là học tập theo

nhóm, tức là kết hợp nhiều bộ phân loại dé giải quyết các van đề phức tạp và cải

thiện hiệu suất của mô hình Mô hình Random Forest được xây dựng bằng cách

chứa nhiều cây quyết định, mỗi cây dựa trên một tập con khác nhau của dữ liệu đã

cho Sau đó, các dự đoán từ mỗi cây được tổng hợp lại và đưa ra dự đoán cuối cùng.Điều đặc biệt là Random Forest không dựa vào một cây quyết định duy nhất mà lay

dự đoán từ mỗi cây, sau đó dựa vào đa số phiếu dự đoán dé đưa ra kết quả cuối

cùng Phương pháp này cho phép mô hình sử dụng đa dạng thông tin từ các cây

quyết định và giúp tăng tính ôn định và độ chính xác của dự đoán trên tập dữ liệu đã

cho.

Trang 23

Ỷ Ỷ

Hình 2-1: Cơ chế hoạt động của Random Forest

( Nguồn: https://www.javatpoint.com/machine-learning-random-forest-algorithm)

2.2.1.2 K-Neighbor Classifier

K-nearest neighbor (KNN) là một trong những thuật toán học máy phô biến

dựa trên kỹ thuật học có giám sát Điều đặc biệt về KNN là nó không học gì từ dit

liệu huấn luyện trong quá trình huấn luyện (được coi là thuật toán "lười" - lazy

learning), mà chỉ thực hiện tính toán khi cần dự đoán kết quả cho dữ liệu mới KNN

có thé áp dụng cho cả hai loại bài toán học có giám sát, bao gồm phân loại và hồi

quy Thậm chi, nó còn được gọi là "Instance-based" hay "Memory-based learning".

Trong bài toán phân loại, KNN dự đoán nhãn của một điểm dữ liệu mới bang cachxem xét K điểm dữ liệu gần nhất trong tập dữ liệu huấn luyện Nhãn của dữ liệu

kiểm tra có thê được xác định bằng cách bầu chọn theo số phiếu từ các điểm gần

nhất, hoặc thông qua việc đánh trọng số khác nhau cho mỗi điểm gần nhất và kết

hợp chúng dé dự đoán nhãn cuối cùng Các phương pháp này sẽ được giải thích rõhơn trong phan tiếp theo Đối với bài toán hồi quy, KNN dự đoán giá trị đầu ra củamột điểm dữ liệu bang cach su dung gia tri đầu ra của K điểm gần nhất, ví dụ K=1thì giá trị đầu ra của diém gần nhất sẽ được chọn, hoặc thông qua trung bình có

Trang 24

trọng sô của các giá trị đầu ra của những điêm gân nhât Hoặc trong một sô trường

hop, ta có thê tìm môi quan hệ dựa trên khoảng cách với các diém gân nhât đê dự

đoán giá trị dau ra.

Tóm lại, KNN là một thuật toán đơn giản và linh hoạt, sử dụng thông tin từ K

điểm gần nhất trong tập dữ liệu huấn luyện dé dự đoán kết quả cho dữ liệu mới, và

không quan tâm đến việc có một số điểm gần nhất là nhiễu hay không

TabNet được dé xuất bởi các nhà nghiên cứu tại Google Cloud vào năm 2019

Ý tưởng dang sau TabNet là áp dụng hiệu qua các deep neural networks trên dữ liệu

dang bang van bao gồm một phan lớn người dùng va dit liệu được xử lý trên nhiềuứng dụng khác nhau như chăm sóc sức khỏe, ngân hàng, bán lẻ tài chính, tiếp thị, v.v

Một động lực dé áp dụng deep learning cho tập dit liệu dạng bảng đến từ cácmiền khác như dữ liệu (hình ảnh, ngôn ngữ, giọng nói) khi được áp dụng trên đó đãcho thấy sự cải thiện hiệu suất đáng kể trên các tập dữ liệu lớn so với các kỹ thuật

Trang 25

học máy khác Vì vậy, chúng ta có thé mong đợi nó hoạt động trên dữ liệu dang bang.

Một lý do khác có thé là các thuật toán dựa trên cây không giống như mạng lưới thầnkinh sâu không học cách hiệu quả để giảm lỗi bằng cách sử dụng các kỹ thuật như

Gradient Descent.

TabNet cung cấp kiến trúc học sâu dữ liệu dạng bảng có hiệu suất cao và dễ

hiểu Nó sử dụng một phương pháp được gọi là cơ chế chú ý tuần tự(sequentialattention mechanism) dé cho phép chọn tính năng nào dé tạo ra khả năng diễn giải

cao và đào tạo hiệu quả.

Kiên trúc TabNet vê cơ ban bao gôm nhiêu bước tuân tự, truyên đâu vào từ bước này sang bước khác Có nhiêu cách khác nhau đê quyêt định sô bước tùy thuộc

vào dung lượng.

2.2.1.4 Decision Tree Classifier

Cay quyét định là một mô hình học máy được sử dụng trong cả hai loại bàitoán có giám sát là phân loại và hồi quy Cấu trúc của cây bao gồm các nút nội đại

diện cho các biến và các nút lá đại diện cho giá trị dự đoán của biến mục tiêu Kỹ

thuật học máy sử dụng cây quyết định được gọi là "học bằng cây quyết định" hoặc

đơn giản là "cây quyết định"

Các ưu điểm của cây quyết định bao gồm:

e Đầu ra của cây quyết định là các quy tắc dé hiểu, giúp người doc dé dàng hiểu

các quyết định mà mô hình đã đưa ra

e Cây quyết định có khả năng xử lý dữ liệu có giá trị thiếu (missing data) ma

không cần tiền xử lý phức tạp

e_ Mô hình có thé làm việc với cả dit liệu số và dữ liệu phân loại

e Cây quyết định có thé được kiểm tra và xác thực bằng các phương pháp kiểm

tra thống kê

Tuy nhiên, cây quyết định cũng có một số nhược điểm:

e Mô hình dễ bị ảnh hưởng bởi dữ liệu huấn luyện, nghĩa là một số thay đổi nhỏ

trong dit liệu có thé làm thay đổi hoàn toàn cấu trúc cây quyết định

Trang 26

e Cây quyết định có thé gặp van đề "overfitting", trong đó mô hình quá tập trung

vào dit liệu huấn luyện và không tổng quát hóa tốt cho dữ liệu mới

Tóm lại, cây quyết định là một mô hình học máy lĩnh hoạt và dễ hiểu, nhưng cần

cần trong trong việc kiêm soát overfitting và phụ thuộc vào tính tông quát của dữ

Play (Y) or Not (N) liệu huân luyện.

(Nguôn: https://machinelearningcoban.com/2018/01/14/id3/)

2.2.1.5 Quadratic discriminant analysis

Quadratic Discriminant Analysis (QDA) là một phương pháp phân loại trong

lĩnh vực học máy và thống kê Nó thuộc họ các phương pháp dựa trên mô hìnhGaussian QDA là một phương pháp phân loại được sử dung dé tìm ra mối quan hệ

giữa các biên dau vào và các nhãn lớp tương ứng.

Trong QDA, giả định rằng mỗi lớp dữ liệu được mô hình băng một phân phốiGaussian riêng biệt Mô hình QDA cũng giả định rằng các biến đầu vào độc lập vớinhau trong mỗi lớp Với các giả định này, QDA ước lượng các tham số của các phân

phôi Gaussian đê xác định lớp mà một mau mới có thê thuộc vê.

Quadratic Discriminant Analysis được sử dụng rộng rãi trong các bài toán phân

loại nơi dữ liệu có thê được mô hình băng các phân phôi Gaussian và các lớp dữ liệu

Trang 27

có các hiệp phương sai khác nhau Tuy nhiên, nó có thê gặp khó khăn khi dtr liệu có

số chiều cao và kích thước mẫu nhỏ, do đó cần cân nhắc trong việc áp dụng QDA vào

các bài toán cụ thê

2.2.1.6 Gaussian Naive Bayes

Gaussian Naive Bayes là một phương pháp phân loại dựa trên giả định Gaussian

(phân phối chuẩn) cho các biến đầu vào Nó là một biến thé của mô hình Naive Bayes,

một thuật toán học máy đơn giản và hiệu quả dựa trên nguyên tắc Bayes Phương

pháp này thường được sử dụng trong bài toán phân loại, đặc biệt là trong việc xử lý

văn bản và phân tích ngôn ngữ tự nhiên.

Giả định Gaussian trong Gaussian Naive Bayes cho rằng các biến đầu vào được

mô hình hóa bằng phân phối chuẩn (Gaussian) Nghĩa là giá trị của biến đầu vào đượcxem như là một biến ngẫu nhiên tuân theo phân phối chuẩn Mô hình này giả định

rằng các biến đầu vào độc lập với nhau khi đã biết lớp (class) của dữ liệu

Quá trình huấn luyện của Gaussian Naive Bayes bao gồm việc tính toán các

tham số của phân phối Gaussian, bao gồm giá trị trung bình (mean) và độ lệch chuẩn

(standard deviation) cho mỗi lớp Khi đã có các tham số này, mô hình có thể sử dụng

công thức Bayes dé tính xác suất của mỗi lớp dựa trên các giá trị đầu vào Xác suất

cao nhất sẽ xác định lớp được dự đoán cho mẫu dữ liệu mới

Một ưu điểm của Gaussian Naive Bayes là tính đơn giản và tốc độ huấn luyện

nhanh Tuy nhiên, giả định về phân phối Gaussian và sự độc lập giữa các biến đầu

vào có thê làm giảm hiệu suât của mô hình trong một sô trường hợp.

10

Trang 28

Naive Bayes Classifier

Thuật toán sử dụng một hàm kích hoạt (activation function) để xác định đầu ra dựa

trên tông trọng sô của các đâu vào.

11

Trang 29

Perceptron được áp dụng trong các bài toán phân loại nhị phân và có thể mở

rộng dé xử lý các bài toán phân loại đa lớp thông qua các kỹ thuật như One-vs-All

hoặc One-vs-One Mặc dù đơn giản, Perceptron vẫn có thể mang lại hiệu quả trong

việc phân loại dữ liệu tuyên tính và là nên tảng cho các mô hình neural network phức tạp hơn.

2.2.1.8 Passive Aggressive Classifier

Passive Aggressive Classifier là một thuật toán hoc may được sử dụng trong

các bài toán phân loại nhị phân và tương đương với một Support Vector Machine.

Thuật toán Passive-Aggressive được thiết kế để xử lý các tác vụ phân loại dữliệu có tính chất thay đôi theo thời gian, nghĩa là dit liệu mới có thể được đưa vào và

mô hình sẽ cập nhật dé thích ứng với dit liệu mới này Điều này rat hữu ích trong cáctình huống mà môi trường hoặc phân phối của dữ liệu thay đổi theo thời gian

Thuật toán Passive-Aggressive có hai biến thé chính là Passive-Aggressive I(PA-I) và Passive-Aggressive II (PA-II), khác nhau trong cách cập nhật trọng số khi

dự đoán sai PA-I cập nhật trọng số một cách tuyến tính, trong khi PA-II áp dung mộtcông thức tính toán phức tap hơn dé điều chỉnh trong số Sự lựa chọn giữa PA-I va

PA-II phụ thuộc vào từng bài toán cụ thé và yêu cầu về hiệu suất và thời gian huấn

luyện.

12

Trang 30

Thuật toán Passive-Aggressive có ưu điểm là đơn giản, dễ hiện thực và tiêu thụ

ít tài nguyên Nó thích hợp trong các tình huống cần áp dụng học máy trực tuyến và

thích ứng với dữ liệu thay đổi theo thời gian Tuy nhiên, nó có thé không hiệu quả

trong các bài toán phân loại đa lớp và dữ liệu có tính chất phức tạp

2.2.1.9 Stochastic Gradient Descent Classifier

Bộ phân loại Stochastic Gradient Descent (SGD) là một thuật toán hoc máy

phân loại được sử dụng phổ biến trong các bài toán lớn và có số lượng dữ liệu lớn

Thuật toán này dựa trên phương pháp tối ưu hoá Gradient Descent (GD) dé tìm ra các

trọng số tối ưu cho mô hình phân loại

Phương pháp tối ưu hoá SGD được gọi là "stochastic" vì nó sử dụng một mẫu

dữ liệu ngẫu nhiên dé tính gradient và cập nhật trọng số trong mỗi vòng lặp Điều này

giúp thuật toán hội tụ nhanh hơn và giảm độ phức tạp tính toán so với Gradient

Descent truyền thống

13

Trang 31

SGD Classifier có khả năng phân loại cho cả bài toán nhị phân và đa lớp Nó

hỗ trợ nhiều hàm mat mát (loss function) phù hợp với từng bài toán cụ thé, bao gồm

hàm mat mát đa lớp softmax cho phân loại đa lớp và hàm mat mát logistic cho phân

dung dựa trên scikit-learn.

TPOT sẽ tự động hóa phần tẻ nhạt nhất của quá trình học máy bang cách khám

phá hàng nghìn quy trình khả thi một cách thông minh đề tìm ra quy trình tốt nhấtcho dữ liệu đầu vào

Sau khi TPOT tìm kiếm xong (hoặc dừng quá trình chạy), nó sẽ cung cấp filePython cho quy trình tốt nhất mà nó tìm thay dé có thé sửa lại quy trình từ đó

Feature

Construction

Hình 2-7: Cơ chế hoạt động của TPOT

(Nguồn: hftp:/epistasislab github.io/tpot/)

14

Trang 32

2.2.2.2 PyCaret

PyCaret là thư viện open-source machine learning trong python, Thư viện tích

hợp sẵn các mô hình cần thiết, giúp chúng ta train mô hình một lần trên nhiều thuật

toán máy học khác nhau.

PyCaret là một thư viện mã thấp thay thế có thê được sử dụng đề thay thế hàng

trăm dòng mã chỉ bằng vài dòng Điều này làm cho các thử nghiệm nhanh và hiệu

quả theo cấp số nhân

2.2.2.3 Auto Sklearn

Auto-sklearn là bộ công cụ học máy tự động và là một lựa chọn thay thế nhanh

gọn nhẹ thay cho các thuật toán của scikit-learning.

2.2.3 Các mô hình học sâu

2.2.3.1 Convolutional Neural Network — CNN

Mang Neural Tích Chap (Convolutional Neural Network - CNNs) là một

trong những mô hình tiên tiến của Deep Learning, cho phép xây dung các hệ thốngthông minh với độ chính xác cao Trong thời gian gần đây, CNNs đã được rat phố

biến và sử dụng rộng rãi trong các bài toán nhận dạng đối tượng trong ảnh Tuy

nhiên, chúng cũng có thê được áp dụng cho các bài toán phân loại với dữ liệu dạng

bảng.

Mạng CNN bao gồm nhiều lớp tích chập xếp chồng lên nhau và sử dụng cáchàm kích hoạt phi tuyên như ReLU và tanh đề kích hoạt các trọng số trong các nút.Mỗi lớp sau khi thông qua các hàm kích hoạt sẽ tạo ra các thông tin trừu tượng hơncho các lớp tiếp theo Trong quá trình truyền thăng của mạng, mỗi nút đầu vào sẽ

kết nôi với moi nút dau ra trong các lớp tiêp theo.

Mỗi lớp tiếp theo được tạo ra bằng cách sử dụng phép tích chập trên kết quả

của lớp trước đó, tạo ra các kết nối cục bộ Điều này có nghĩa là mỗi neuron trong

lớp kế tiếp được tạo ra từ kết quả của việc áp dụng bộ lọc lên một vùng ảnh cục bộ

trong lớp trước đó.

15

Trang 33

Mạng CNN thường sử dụng nhiều bộ lọc khác nhau, thường có hàng trăm

hoặc hàng nghìn bộ lọc, và kết hợp kết quả của chúng Ngoài ra, mạng cũng sử

dụng các lớp pooling/subsampling dé lọc và giữ lại các thông tin hữu ích, loại bỏ

thông tin nhiễu.

Tom lại, Mang Neural Tích Chap là mô hình mạnh mẽ trong Deep Learning,

được sử dụng rộng rãi trong nhận dạng ảnh và các bài toán phân loại dữ liệu bảng.

Nó tạo ra các thông tin trừu tượng và sử dụng các bộ lọc và các lớp pooling đề xử lý

dữ liệu một cách hiệu quả.

Convolutions Subsampling Convolutions Subsampling Fully connected

Hình 2-8: Cơ chế hoạt động cua CNN

(Nguồn: convolutional-neural-network-from-scratch-kuzushiji-mnist-75f42c175b21)

https://towardsai.net/p/machine-learning/beginner-guides-to-2.2.4 Cac mô hình hoc máy kết hop (hybrid model)

2.2.4.1 CNN - Random Forest

CNN là một loại mang nơ-ron nhân tạo đặc biệt được thiết kế dé xử ly đữ liệu

có cau trúc như hình ảnh Nó sử dụng các lớp convolutional và pooling để trích xuất

các đặc trưng cục bộ từ dữ liệu đầu vào Sau đó, các lớp fully connected sẽ sử dụngcác đặc trưng này dé phân loại dữ liệu

Random Forest là một thuật toán học máy dựa trên cây quyết định Nó hoạt

động bằng cách xây dựng nhiều cây quyết định ngẫu nhiên và kết hợp kết quả củacác cây dé đưa ra dự đoán cuối cùng Mỗi cây trong Random Forest được xây dựng

16

Trang 34

bang cách chọn ngẫu nhiên một tập con của dit liệu đào tạo và các đặc trưng tươngứng Quá trình này giúp tránh overfitting và tăng tính tổng quát của mô hình.

Khi kết hợp CNN và Random Forest, CNN được sử dụng để trích xuất các đặc

trưng can thiết từ dữ liệu đầu vào Các đặc trưng này sau đó được chuyên đến mô

hình Random Forest dé thực hiện quá trình phân loại Sự kết hợp này cho phép môhình tận dụng được khả năng trích xuất đặc trưng mạnh mẽ của CNN va khả năng

phân loại chính xác của Random Forest.

Mô hình kết hợp này có thé được áp dụng trong nhiều lĩnh vực, như xử lý hìnhảnh, nhận dạng văn bản, hoặc phân loại dữ liệu trực tuyến Việc sử dụng CNN détrích xuất đặc trưng giúp mô hình học được các biểu diễn tự động từ dir liệu, trongkhi Random Forest đảm bảo tính tổng quát và khả năng phân loại hiệu quả

2.2.4.2 CNN-SVM

SVM là một thuật toán hoc máy thuộc loại học có giám sát Nó tạo ra một siêu

phang (hyperplane) trong không gian đa chiều dé phân tách các điểm dữ liệu thuộcvào các lớp khác nhau SVM có khả năng tối ưu hóa độ rộng của siêu phẳng và tạo

ra một biên quyết định tốt giữa các lớp đữ liệu

Tương tự mô hình CNN — Random Forest, CNN được sử dụng dé trích xuất các

đặc trưng quan trọng từ đữ liệu đầu vào Các đặc trưng này sau đó được đưa vào SVM

để thực hiện quá trình phân loại SVM sẽ sử dụng các đặc trưng này để tìm ra siêuphăng tốt nhất dé phân tách các lớp dữ liệu Mô hình này cũng rất tiềm năng đối vớimột số bài toán phân loại nhất định

2.3 Phân loại một lớp cho dữ liệu không cân bang

Ngoại lệ (Outliers) hoặc bất thường (anomalies) là những ví dụ hiếm hoi không

phù hợp với phần còn lại của dữ liệu

Việc xác định các ngoại lệ trong dữ liệu được gọi là phát hiện ngoại lệ hoặc bất

thường và một lĩnh vực máy học tập trung vào vấn đề này được gọi là phân loại một

lớp - One-Class Classification (OCC) Đây là một kỹ thuật học máy được thiết kế để

17

Trang 35

giải quyết vấn dé dữ liệu mắt cân bằng, trong đó một lớp dữ liệu bị thiếu hơn đáng ké

so với các lớp khác OCC tập trung vào việc xác định các trường hợp thuộc một lớp

mục tiêu cụ thé trong tập dữ liệu, ngay cả khi có thông tin hạn chế hoặc không có

thông tin về các lớp khác Kỹ thuật này đặc biệt hữu ích khi làm việc với dữ liệu chưa

được gán nhãn, trong đó chỉ có các trường hợp dương tích cực của lớp mục tiêu có

san dé huấn luyện.

Đề thực hiện OCC hiệu quả, việc trích xuất đặc trưng đóng vai trò quan trọngtrong việc biểu diễn dữ liệu Điều này có thể bao gồm các kỹ thuật khác nhau nhưđặc trưng được tao bang tay, feature engineering hoặc sử dụng các phương pháp học

sâu như autoencoders dé học các biéu diễn tiềm ân Sau khi các đặc trưng được trích

xuất, các thuật toán OCC như Support Vector Machines (SVMs), Isolation Forestshoặc Gaussian Mixture Models (GMMs) được sử dung dé học ranh giới quyết định

bao quanh lớp mục tiêu trong khi loại trừ các trường hợp không thuộc lớp mục tiêu.

One-Class Classification cho dữ liệu mất cân bằng được áp dụng trong nhiềulĩnh vực khác nhau, bao gom phát hiện gian lận, phát hiện xâm nhập và phát hiện cáctrường hợp ngoại lệ Băng cách xác định các trường hợp khác thường hoặc bấtthường, OCC cung cấp thông tin quý giá về hành vi không bình thường trong dữ liệu,

từ đó tạo điều kiện cho các biện pháp ứng phó dé giải quyết các trường hợp đó

Chương 3 PHƯƠNG PHÁP THỰC HIỆN

3.1 Tong quan về mô hình phát hiện tan công

Bản thân mạng CAN Bus là một giao thức, được sử dụng trong các phương tiện

thông minh và một số mục đích công nghiệp khác CAN Bus cho phép các đơn vịđiều khiển điện tử ECU khác nhau giao tiếp với nhau.

Nói một cách ngắn gọn nhất, các ECU giao tiếp với nhau bằng cách gửi các tin

nhắn CAN Mỗi tin nhắn bao gồm 2 phan: phần ID dùng để định danh tin nhắn, vàphan dữ liệu, chứa dữ liệu của tin nhắn được gửi Các ECU nhận được các tin nhắn

18

Trang 36

này và từ đó xác định được các tác vụ cân phải thực hiện, ví dụ như tăng tôc, giảm

tốc, phanh, bật đèn xe

Tuy nhiên, bằng nhiều phương pháp khác nhau, kẻ tắn công có thê khai thác và

tan công vào hệ thống và các ECU này Một số ví dụ có thé ké đến như: tan công giadanh, trong đó kẻ tấn công sẽ giả danh một nút ECU thực sự của hệ thống bằng cách

tạo tin nhắn giả dạng với ID là ID của một nút ECU dé gửi các tin nhắn tan công đếncác nút ECU khác Nếu không nhận biết được đây là tin nhắn tan công, các ECU khác

sẽ nhận và thực thi tin nhắn tấn công một cách bình thường, dẫn đến các hậu quả cóthé xảy ra

ECU communication in Car

IDS

Data

Processing

Detect

Hình 3-1: Mô hình phát hiện tấn công

Vì vậy, ta cần một hệ thống phát hiện tấn công (IDS) dé có thé nhận diện vàngăn chặn các tan công Hệ thống IDS sẽ được cài đặt vào mang CAN Bus, quét cáctin nhắn được gửi đi giữa các ECU dé phát hiện các bat thường đang xảy ra Nếu phát

19

Trang 37

hiện được dấu hiệu bất thường, nghĩa là đây có thẻ là tin nhắn của kẻ tấn công, từ đó

giúp đưa ra các phương án đối phó thích hợp, ví dụ như chặn tin nhắn bất thường, déngăn chặn kịp thời các hậu quả có thê xảy ra.

3.2 Phương thức thực hiện và đánh giá

3.2.1 Môi trường thực nghiệm

Mục tiêu chính của đề tài này, đó là xây dựng một hệ thống kết hợp thuật toán

ML với dữ liệu CAN bus thu thập từ các nguồn về dé phát hiện các luồng xâm nhậpbat hợp pháp Công việc này nhằm cung cấp một hệ thống phát hiện xâm nhập có thê

hữu ích cho các doanh nghiệp quan tâm đến vấn đề bảo mật cho hệ thống mạng của

xe bus nói chung và xe hơi nói riêng Tat cả các thí nghiệm đều được thực hiện triển

khai trên Google Colab, kết hợp với các thư viện Sklearn, Pandas, Keras

3.2.2 Đánh giá các metrics

Trong quá trình xây dựng mô hình Machine Learning, việc đánh giá mô hình

là một phần không thé thiếu dé đánh giá chất lượng của nó va chọn lựa mô hình phù

hợp cho bài toán cụ thê.

Dé đánh giá hiệu năng của một mô hình, chúng ta thường sử dung tap dit liệukiểm thử (test data) Khi có tập kiểm thử, ta tiến hành dự đoán đầu ra sử dụng mô

hình và so sánh kết quả dự đoán với các giá trị thực tế của dữ liệu Cu thê, kết quả

dự đoán được mô tả bởi vector y_pred, trong đó mỗi phần tử là class được dự đoán

của một điềm dữ liệu trong tập kiểm thử Chúng ta cần so sánh vector dự đoán

y_pred nay với vector y_true, đại diện cho các giá tri class thực sự của dữ liệu.

Có nhiều cách dé đánh giá hiệu suất của mô hình phân lớp, và từ đó chon ra

các chỉ số phù hợp như Accuracy, Precision, Recall và F1-score Những chi số này

được tính dựa trên các giá trị True Positive (TP), True Negative (TN), False

Positive (FP) va False Negative (FN) TP là số lượng điểm thuộc lớp positive đượcphân loại đúng là positive, TN là số lượng điểm thuộc lớp negative được phân loại

đúng là negative, FP là số lượng điểm thuộc lớp negative bị phân loại nhằm thành

20

Trang 38

positive và FN là số lượng điểm thuộc lớp positive bị phân loại nhằm thành

negative.

Accuracy:

Mặc dù Accuracy giúp chúng ta biết được mức độ chính xác của dự đoán của

mô hình, nhưng nó không thê hiện được mô hình đang dự đoán sai như thế nào Đểđánh giá khía cạnh này, ta cần sử dụng một phương pháp khác, đó là Confusion

Matrix Confusion Matrix là một công cụ quan trọng đề đánh giá hiệu năng của các

mô hình phân loại.

Confusion Matrix là một ma trận được sử dụng để biểu thị số lượng điểm dữ

liệu được dự đoán vào từng lớp và số lượng điểm dữ liệu thực tế thuộc vào từng

lớp Bang cách này, ta có thé biết chính xác các điểm dữ liệu nào được phân loại

đúng và nhầm vào từng lớp

Qua Confusion Matrix, chúng ta có cái nhìn rõ ràng hơn về hiệu năng của môhình và có thé đánh giá các sai sót mà mô hình đang thực hiện trong quá trình phânloại Điều này giúp chúng ta cải thiện mô hình và điều chỉnh các thông số dé đạt

hiệu suất tốt hơn trong các bài toán phân lớp

TP+TN

E059 7 TP TN + FP + FN

Tính toán accuracy trên sklearn

[ |] from sklearn.metrics import accuracy_score

accuracy_score(y_true, y_pred)

Hình 3-2: Tính Accuracy trên Sklearn

Trong đó y_true là nhãn của dữ liệu và y_pred là nhãn dự báo.

Confusion Matrix:

21

Trang 39

Nhược điểm của Accuracy là chỉ cho ta biết độ chính xác khi dự báo của mô

hình, nhưng không thé hiện mô hình dang dự đoán sai như thé nào, vi vậy chúng ta

cần một phương pháp đánh giá khác — Confusion Matrix Confusion matrix là một

kỹ thuật đánh giá hiệu năng của mô hình cho các bài toán phân lớp Confusion

matrix là một ma trận thê hiện số lượng điểm dữ liệu thuộc vào một class và được

dự đoán thuộc vào class.

Precision được sử dụng dé đo lường khả năng của mô hình phân loại đúng

các điểm dữ liệu vào lớp Positive Nó trả lời câu hỏi: trong số các điểm dữ liệu được

mô hình phân loại vào lớp Positive, có bao nhiêu điểm thực tế thuộc về lớp Positive.Giá trị của Precision nằm trong khoảng từ 0 đến 1, và càng gần 1 thì mô hình càng

chính xác.

22

Trang 40

Recall, một chỉ số khác, cho chúng ta biết có bao nhiêu điểm thực tế thuộc

lớp Positive được mô hình phân loại đúng trong tông số các điểm thực tế thuộc lớp

Positive Có thể hiểu rằng, Recall giúp chúng ta đánh giá khả năng mô hình không

bỏ sót các điểm dữ liệu thực sự thuộc lớp Positive Giá trị của Recall cũng nằm

trong khoảng từ 0 đến 1, và càng gần 1 thi mô hình càng đáng tin cậy

Nhìn chung, cả Precision và Recall đều cung cấp thông tin quan trọng vềhiệu suất của mô hình, và việc có cả hai chỉ số này càng cao sẽ cho thay mô hình

đang hoạt động chính xác và đáng tin cậy trong việc phân loại các điểm dữ liệu vào

giá tri cao cùng một lúc (giá tri của một thường tăng thì giá tri của thứ hai thường

giảm) Dé đánh giá mô hình dựa trên cả Precision và Recall đồng thời, ta sử dung

độ đo F-Score.

Độ đo F-Score được quyết định bởi tham số B, đây là yếu tố quyết định mức độ

coi trọng giữa Precision va Recall:

e KhiB> 1: Recall được đặt lên hang dau, tức là mô hình tập trung vào việc

giảm bỏ sót các điểm dữ liệu thuộc lớp cần quan tâm hơn là tránh phân loại

Sal.

e Khi <1: Precision được đặt lên hàng đầu, tức là mô hình tập trung vào việc

giảm sai số trong quá trình phân loại hơn là tối thiểu hóa số lượng điểm dữ

liệu bị bỏ sót.

23

Ngày đăng: 02/10/2024, 04:49

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

TÀI LIỆU LIÊN QUAN