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: Nghiên cứu mô hình tin cậy và bền vững trong phát hiện mã độc đa hình

86 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 đề Nghiên Cứu Mô Hình Tin Cậy Và Bền Vững Trong Phát Hiện Mã Độc Đa Hình
Tác giả Trương Thị Hoàng Hảo, Nguyễn Thái Dương
Người hướng dẫn TS. Phạm Văn Hậu, ThS. Nghi Hoàng Khoa
Trường học Đạ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 2024
Thành phố TP.HCM
Định dạng
Số trang 86
Dung lượng 88,3 MB

Nội dung

Các công trình này đã tích hợp thành công mô hình học máy vào việc phát hiện và phân loại các mẫu mã độc.. TỔNG QUAN ĐỀ TÀIkhông đủ để mô hình học máy có thể nhận diện được những bộ nén

Trang 1

TRUONG THI HOANG HAO - 20520191

NGUYEN THAI DUONG - 20520463

KHOA LUAN TOT NGHIEP

NGHIEN CUU MO HINH TIN CAY VA BEN VUNG TRONG

PHAT HIEN MA DOC DA HINH

A STUDY ON TRUSTWORTHY AND ROBUST MODEL FOR

POLYMORPHIC MALWARE DETECTION

CU NHAN NGANH AN TOAN THONG TIN

GIANG VIEN HUONG DAN:

TS Pham Van Hau

ThS Nghi Hoang Khoa

TP.H6 Chi Minh - 2024

Trang 2

LỜI CẢM ƠN

Trong quá trình nghiên cứu và hoàn thành khóa luận, nhóm đã nhận được sự

định hướng, giúp đỡ, các ý kiến đóng góp quý báu và những lời động viên của

các giáo viên hướng dẫn và giáo viên bộ môn Nhóm xin bày tỏ lời cảm ơn tới thầyNghi Hoàng Khoa, thầy Phạm Văn Hậu đã tận tình trực tiếp hướng dẫn, giúp đỡ

trong quá trình nghiên cứu.

Chúng tôi xin gửi lời tri ân và biết ơn đến ThS Phan Thế Duy đã trực tiếp quantâm, đồng hành và hướng dẫn tận tình trong suốt quá trình chúng tôi tìm hiểu vàthực hiện dé tài Nhóm xin gửi lời cảm ơn đến gia đình và bạn bè đã động viên,đóng góp ý kiến trong quá trình làm khóa luận

Nhóm cũng chân thành cảm ơn các quý thầy cô trường Đại học Công nghệ Thông

tin - ĐHỌG TP.HCM, đặc biệt là các thầy cô khoa Mạng máy tính và Truyềnthông, các thầy cô thuộc bộ môn An toàn Thông tin đã giúp đỡ nhóm

Cuối cùng, do kiến thức chuyên môn còn hạn chế nên khóa luận chắc chắn không

tránh khỏi những thiếu sót Rất mong nhận được nhận xét, ý kiến đóng góp, phêbình từ quý thay cô trong hội đồng để khóa luận được hoàn thiện hon

Trương Thị Hoàng Hảo Nguyễn Thái Dương

ii

Trang 3

Mục lục

THONG TIN HỘI DONG CHAM KHÓA LUẬN TỐT NGHIỆP ¡

LỜI CẢMƠN Q2 Q2 nho ii TOM TAT KHOA LUAN 1 1 TONG QUAN DETAI 2 11 Lydochon dé tai 0 ee eee 2 1.2 Phuong pháp nghiên cứu 4

13 Mục tiêu nghiên cứu ẶẶẶ 4 1.4 Phạm vi và Đối tượng nghiên cứu 4

15 Cấu trúc Khóa luận tốtnghiệp 5

2 CƠ SỞ LÝ THUYẾT 6 21 Tệp thực thì PE 3» ( .ố.ˆ” Ặ.Ặ 6 2.11 Cấu trúc tệp thựcthi 6

Trường tiêu dé DOS (DOS Header) 7

Trường DOSSTUB 9

Trường tiêu dé PE (PE Header) 9

Phan đoạn bang (Section Table) 10

Phân đoạn tập tin PE (Section PEEile) 10

212 Hợpngữ Ha 11 22_ Mô hình phát hiện mã độc 13

2.21 Phương pháp phân tíchtính 14

2.2.2 Phương pháp phân tchđộng 15

Kỹ thuật Giám sáthànhvIi 15

Kỹ thuật giả lap (Emulation) 15

2.2.3 Mô hình phát hiện mã độc dựa trên học máy 16

Thuật toán cây quyết định - 17

11

Trang 4

2.24 Thuật toán rừng ngẫu nhiên 19

2.2.5 Thuật toán tăng cường độ dốc (Gradient Boosting) 19

2.2.6 Thuậttoán AdaBoost 22

2.27 Mạng nơron tchchập 24

2.3 Mô hình khả diễn giải-XAI 25

2.3.1 XAI với SHAP (SHapley Additive exPlanations) 26

2.3.2 Giá trịSHAP (SHAPValues) 26

2.3.3 TreeSHAP Q Q Q Q Q Q Q ee 29 2.34 AMM 0.0 cee eee 29 2.3.5 Ung dung SHAP vào phát hiện mã độc dựa theo phương pháp phân tích nh 29

2.3.6 Deep Learning Important FeaTures -DeepLIFT 29

2.3.7 DeepLIFTSHAP (DeepLIFT + Giá triSHAP) 30

2.3.8 Shapley Additive Global importancE (SAGE) 31

2.4 Tình hình nghiên cứu và các công trình liên quan 31

PHƯƠNG PHÁP THỰC HIỆN 34 3.1 Kiến trúctổng quát nho 34 32 ChitiétmOhinh ẶẶcc So 35 3.2.1 Luông hoạtđộng chính - 35

3.2.2 Lựa chọn đặc trưng hướng dẫn bởi XAI 36

3.2.3 Phat sinh mẫu đối kháng với XAI-GAN 40

3.24 Huẩn luyện đối kháng - 44

THỰC NGHIỆM VÀ ĐÁNH GIÁ 46 41 Hiệnthực ẶẶ ee 47 411 Tậpdữliệu Ặ.Ặ 47 Thông tin chung về tập dữ liệu 47

Wild Dataset 47

Lab Dataset ẶẶẶ So 48 Thuộc tính Ặ ee 48 Môi trường thực nghiệm 49

Xử lý dữ liệu c2 51 4.1.2 Các têu chíđánhgiá 52

1V

Trang 5

4.1.3 Thông tin về cau hình của các mô hình được sử dụng trong

4.1.4 Độ tin cậy của những mẫu mã độc sau khi được thực hiện

tạo mẫu đối kháng - 55

4.2.1 Cáccâuhỏinghiêncứu 56

4.2.2 Các kết quathucnghiém 56

Kịch bản 1a: Kiểm tra khả năng phát hiện mã độc đa hình

của mô hình cơsở 56

Kịch bản 1b: Kiểm tra khả năng chống lại mẫu đối kháng

của mô hình cơ sở trước và sau khi thực hiện huấnluyện đối kháng 59

Kịch bản 2a: Kiểm tra khả năng phát hiện mã độc da hình

của mô hình đã được cập nhật thuộc tinh 63

Kịch bản 2b: Kiểm tra khả năng chống lại mẫu đối kháng

của mô hình đã cập nhật thuộc tính trước và saukhi thực hiện huấn luyện đối kháng 66

43 Thaoluamy W Ae GÀ fl ee 69

5 KET LUẬN VÀ HƯỚNG PHAT TRIEN 70

51 KếtluG Ố 705.2 Hướng phát ;¡/ 1mm 71

Trang 6

Danh sách hình ve

2.1

2.2

2.3

2.4

2.5

2.6

2.7

2.8

2.9

2.10

2.11

2.12

3.1

3.2

3.3

3.4

3.5

3.6

3.7

4.1

4.2

4.3

4.4

4.5

4.6

Cấu trúc định dang tập tinPE - 8

Ví dụ về hợp ngữ Q Q Q eee 11 Ví dụ về thuật toán cây quyết định 18

Ví dụ về thuật toán rừng ngẫu nhiên 20

Ví dụ về thuật toán Gradient Boosting 21

Ví dụ về thuật toán AdaBoost 23

Ví dụ về thuật mạng nơ-ron tích chập 24

Ví dụ về bước nhảy trong mạng CNN 25

Tổng quan về bộ công cụ SHAP 27

Tính toán phân phối cận biên cho một thuộc tính 28

Tính toán giá trị SHAP một thuộc tính 28

Mô hình xAI-GAN[I5] 33

Kiến trúc tổng quát mô hình mà nhóm dé xuất 34

Luéng hoạt động của giai đoạn chon lọc thuộc tinh 36

Thuật toán chọn lọc không gian đặc trưng dựa trên AMM [19] 38

Cách tnhAMM es 39 Luông hoạt động của giai đoạn phát sinh mẫu đối kháng 41

Kiến trúc mô hình xAI-GAN Ặ co 43 Luéng hoạt động của giai đoạn huấn luyện đối kháng 45

Kiến trúc mạng nơ ron tích chập -CNN - 53

Kết quả giá tri SAGE để giải thích cho mô hình 55

Luéng thực nghiệm chung cho kịch bản la 57

Luéng thực nghiệm chung cho kịch ban 1b giai đoạn đầu 59

Luéng thực nghiệm chung cho kịch ban 1b giai đoạn sau 61

Luông thực nghiệm chung cho kịch bản2a 63

VI

Trang 7

4.7 Kết quả của các mô hình khi thay đổi giá trim 4.8 Luông thực nghiệm chung cho kịch bản 2b giai đoạn đầu

4.9 Luông thực nghiệm chung cho kịch bản 2b giai đoạn sau

vii

Trang 8

Danh sách bảng

4.1

4.2

4.3

4.4

4.5

4.6

4.7

4.8

Thông tin tổng quát về nguồn dit liéu của dé tài 46

Chi tiết dữ liệu của tập train và tập test 51

Kết quả phát hiện mã độc trên các mô hình khác nhau 57

Kết quả tan công đối kháng trên các mô hình khác nhau 60

Kết quả mô hình sau khi được huấn luyện đối kháng 62

Kết quả mô hình sau khi được giảm 100 thuộc tính 65

Kết quả tân công đối kháng trên những mô hình sau khi lược bỏ 100 thuộc tính ẶẶ eee 67 Kết quả của mô hình phát hiện mã độc đáng tin cậy 68

Vili

Trang 9

Danh mục từ viết tắt

AMM Accrued Malicious Magnitude

SAGE Shapley Additive Global importancE

XAI eXplainable Artificial Intelligence

GAN Generative Adversarial Network

SHAP SHapley Addictive exPlanations

TreeSHAP Tree-based SHapley Addictive exPlanations

CNN Convolutional Neural Network

DNN Deep Neural Network

DeepLIFT Deep Learning Important FeaTures

DeepLIFTSHAP Deep Learning Important FeaTures SHapley Addictive exPlanations

ix

Trang 10

Danh mục tư tạm dịch

Biên độ độc hại tích lũy

Mô hình khả diễn giải

Tập train Tập test

Tổng cộng

Đặc trưng dé bị ảnh hưởng nhưng ít đóng góp

Đặc trưng /Thuộc tính Lành tính

Độc hại Hàm kích hoạt

Ham mat mát

Hoc có giám sát Học không giám sát

Học sâu

Học máy

Mô hình cơ sở

Rừng ngẫu nhiên Tăng cường độc dốc

Kinh nghiệm

Lớp đầu vàoLớp đầu ra

Lớp an

Lớp tích chập

Lop gop

AMM XAI

Train set Test set Total

Fragile feature feature

Benign

Malicious Activation function Loss function

Supervised learning

Unsupervised learning

Deep learning

Machine learning Baseline model

Random Forest

Gradient Boosting

Experience Input layer

Output layer Hidden layer

Convolution Layer

Pooling layer

Trang 11

Không gian đặc trưng

Không gian van dé

Precision

Recall

Feature-space

Problem-space

Trang 12

TÓM TẮT KHOÁ LUẬN

Trong những năm gan đây, các nhà nghiên cứu về an toàn thông tin, cụ thể là mãđộc đã không ngừng cải tiến các hệ thống phát hiện mẫu Các công trình này đã

tích hợp thành công mô hình học máy vào việc phát hiện và phân loại các mẫu

mã độc Tuy nhiên, đi kèm với những cải tiến này, thủ thuật tấn công cũng trở

nên tinh vi hơn.

Để chống lại các hình thức tấn công đối kháng đang không ngừng phát triển, rấtnhiều nghiên cứu đã được dé xuất và thực hiện Adversarial training - huấn luyện

đối kháng là một trong những chiến lược phòng thủ phổ biến nhất để chống lại

tấn công đối kháng và tuân theo một quy trình như sau: các mẫu đối kháng sẽ

được tạo và mô hình học máy được huấn luyện lại trên các mẫu đối kháng đó.

Phương pháp này đã được chứng minh trong thực nghiệm rằng nó có thể giảm

thiểu một hoặc một số tân công đối kháng xuống một mức độ nào đó nhưng nó

vẫn chưa cung cấp được sự đáng tin cậy cho người dùng.

Để giải quyết những van dé trên, nhóm chúng tôi quyết định tiến hành nghiêncứu về việc xây dựng một mô hình bền vững và đáng tin cậy trong việc nhận diện

mã độc, kể cả những mã độc đột biến chẳng hạn như mã độc nén hoặc mã độc

đối kháng bằng cách áp dụng mô hình học máy khả diễn giải - Explainable AI

(XA]) và bộ sinh đối kháng GAN kết hợp với kĩ thuật huấn luyện đối kháng.

Kết quả đạt được cho toàn bộ các mô hình là 90% ở chỉ số độ chính xác cho thấykhả năng phát hiện mã độc nén va mã độc đối kháng đã đạt được bước tiền vượtbật sau khi áp dụng mô hình mà nhóm đề xuất

Trang 13

Chương 1

TONG QUAN DE TÀI

Tom tat chuong

Chương nay giới thiệu về van dé và các nghiên cứu liên quan Đồng thời, trongchương này chúng tôi cũng trình bày phạm vi và câu trúc của Khóa luận

11 Lý do chọn đề tài

Trong bối cảnh số lượng các loại mã độc đang tăng lên với một tốc độ chóng mặt,rất nhiều nghiên cứu về ứng dụng các kỹ thuật học máy để phát hiện và phân loại

mã độc đã được ra đời Việc áp dụng các mô hình học máy giúp cho quá trình

tự động hóa và phát hiện mã độc trở nên dé dàng hơn, một số nghiên cứu về mô

hình nhận diện mã độc xoay quanh bộ dữ liệu EMBER [3] có tỷ lệ phát hiện mãđộc rat cao, chang hạn như mô hình DeepMalNet [21] có kết quả phát hiện ma

độc với độ chính xác lên đến 98% Tuy nhiên, để qua mặt các công cụ phân tích

mã độc tĩnh, các phần mềm độc hại có thể sử dụng các phương pháp đột biến

khác nhau để né tránh Một trong những phương pháp có tỉ lệ né tránh sự phát

hiện của các mô hình học máy thành công cao chính là phương pháp nén.

Công trình nghiên cứu trong bai bao "When Malware is Packin’ Heat" [2] của

nhóm Aghakhani đã chỉ ra rằng những bộ nén lưu giữ những thông tin "hữu ích"

cho việc nhận diện mã độc, tuy nhiên những thông tin này không thực sự hữu

ích trong việc phân tích hành vi của mã độc Công trình này nghiên cứu về nhữnghạn chế của việc sử dụng học máy trong việc phân tích thuộc tính tĩnh Kết quả

từ những nghiên cứu này chỉ ra rằng, việc trích xuất thuộc tính từ các tệp nén là

Trang 14

Chương 1 TỔNG QUAN ĐỀ TÀI

không đủ để mô hình học máy có thể nhận diện được những bộ nén mới, chưa

từng xuất hiện trước đây, áp dụng học máy một cách "ngây thơ" sẽ làm tăng đáng

kể các kết quả dương tính giả, từ đó việc nhận diện những file mã độc đã đượcnén trong thực tế sẽ không chính xác

Thông qua các nghiên cứu về việc áp dụng các mô hình học máy để nhận diện

mã độc đột biến gần đây, nhóm chúng tôi nhận thấy rằng những bộ nén khác

nhau sẽ có cách trích xuất đặc trưng khác nhau Trong đó, những thuộc tính như

kích thước của file (file size) khá quan trọng trong việc nhận dạng những mẫu đã

được nén Ngoài ra, nghiên cứu của [2] cũng đã chỉ ra rằng những mô hình học

máy chỉ có kha năng nhận điện được những bộ nén đã được học hoặc những bộ

nén có chức năng gần giống

Việc áp dụng học máy trong việc phát hiện mã độc đã giúp cho quá trình phát

hiện được tự động hóa và trở nên nhanh chóng hơn Tuy nhiên, những mô hìnhnày rất dé bị đánh lừa bởi các cuộc tấn công đối kháng, khiến cho việc phát hiện

mã độc trở nên khó khăn [6] Chính vì thế, độ tin cậy và hiệu quả của chúng đã

bị đặt một dấu hỏi lớn Ví dụ về cách tạo mẫu đối kháng được thể hiện ở Hình 1

Trong những năm gan đây, để chống lại các hình thức tấn công đối kháng đangkhông ngừng phát triển, rất nhiều nghiên cứu đã được đề xuất và thực hiện Dựatheo khảo sát của [11], adversarial training - huấn luyện đối kháng là một trongnhững chiến lược phòng thủ phổ biến nhất để chống lại tan công đối kháng Cácnghiên cứu dựa trên chiến lược phòng thủ này như [22] và [23] đều tuân theo

một quy trình tương tự nhau: các mẫu đối kháng sẽ được tạo và mô hình học

máy được huấn luyện lại trên các mẫu đối kháng đó Phương pháp này đã đượcchứng minh trong thực nghiệm rằng nó có thể giảm thiểu một hoặc một số tancông đối kháng xuống một mức độ nào đó nhưng nó vẫn chưa cung cấp được sự

đáng tin cậy cho người dùng.

Để giải quyết những vấn dé trên, nhóm chúng tôi quyết định tiến hành nghiêncứu về việc xây dựng một mô hình bền vững và đáng tin cậy trong việc nhận điện

mã độc, kể cả những mã độc đột biến chẳng hạn như mã độc nén hoặc mã độc

đối kháng bang cách áp dung Explainable AI (XAI) và bộ sinh đối kháng GAN

kết hợp với kĩ thuật huấn luyện đối kháng.

Trang 15

Chương 1 TỔNG QUAN ĐỀ TÀI

1.2 _ Phương pháp nghiên cứu

Tìm hiểu cơ chế hoạt động của mã độc, đặc biệt là mã độc nén, từ đó phát triển

mô hình phát hiện mã độc bằng phương pháp học máy, ngoài ra triển khai thêm

XAI kết hợp với GAN để tăng độ hiệu quả và mạnh mẽ cho mô hình, trở thànhmột mô hình phát hiện mã độc đáng tin cậy, có khả năng chống lại mã độc độtbiến và cả tấn công đối kháng Ngoài ra nhóm chúng tôi còn thực hiện đánh giá,kiểm thử tính mạnh mẽ của mô hình đối với phương pháp tấn công đối kháng vàđưa ra hướng mở rộng để có thể triển khai mô hình trong thực tế

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

Khóa luận gồm bốn mục tiêu chính như sau:

1 Mã độc đột biên (mã độc nén)

2 Xây dựng hệ thống phát hiện mã độc đột biến bằng cách kết hợp mô hình

học máy khả diễn giải và mạng sinh đối kháng

3 Xây dựng tính bền vững và tin cậy cho hệ thống phát hiện mã độc đột biến

chống lại các mẫu đối kháng

4 Đánh giá độ hiệu quả của mô hình đề xuất trên các tập dữ liệu.

1.4 Phạm vi va Đối tượng nghiên cứu

Nhóm chúng tôi thực hiện phát triển mô hình phát hiện mã độc bằng phươngpháp học máy, trong đó phần xử lý đặc trưng bằng công cụ AMM được dựa trên

công trình nghiên cứu "Mate! Are You Really Aware?" [19] của Ruoxi Sun và cộng

sự kết hợp với SAGE [5] Sau đó nhóm chúng tôi kết hợp triển khai thêm mô hìnhXAI kết hợp với GAN dua dựa theo mô hình xAI-GAN [15] để có thể tạo ra nhữngmẫu mã độc đối kháng tốt nhất để có thể huấn luyện đối kháng cho mô hình, trởthành một mô hình phát hiện mã độc đáng tin cậy, có khả năng chống lại mã độcđột biến và cả tan công đối kháng

Trang 16

Chương 1 TỔNG QUAN ĐỀ TÀI

1.5 Cau trúc Khóa luận tốt nghiệp

Khóa luận được tổ chức trong 6 chương như sau:

Chương 1: TONG QUAN DE TÀI

Trình bày khái quát định hướng nghiên cứu của khóa luận mà chúng tôi

muốn hướng tới

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

Trình bày các định nghĩa, khái niệm cũng như những kiến thức nền tảng để

có thể thực hiện được nghiên cứu Đồng thời trình bày sơ lược một số công

trình liên quan có cùng hướng nghiên cứu.

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

Là phần trọng tâm của khoá luận, trình bày những nội dung chính về phươngpháp thực hiện và mô hình được sử dụng.

Chương 4: HIỆN THỰC, ĐÁNH GIÁ VÀ THẢO LUẬN

Đề cập đến quá trình hiện thực hóa phương pháp dé cập ở Chương 3 Sau đótrình bày phương pháp thực nghiệm, đánh giá kết quả và thảo luận chung

Chương 5: KET LUẬN VÀ HƯỚNG PHÁT TRIỂN

Dua ra kết luận về đề tài, dé xuất một số hướng phát triển mở rộng cho các

nghiên cứu trong tương lai.

Trang 17

cách kết hợp giữa XAI va GAN để lọc ra những thuộc tính, những mẫu đối kháng

tốt nhất nhằm phục vụ cho việc huấn luyện đối kháng

2.1 Tệp thực thi PE

2.1.1 Cấu trúc tệp thực thi

Trong nghiên cứu này chúng tôi chỉ sử dụng những tệp thực thi có định dạng PE

làm đối tượng nghiên cứu

Định dạng tệp PE, là một loại tệp thực thi tiêu chuẩn trên hệ hiệu hành Windows,

tên đầy đủ là Portable Executable (PE), định dạng tệp tin PE là định dạng của tệp

thực thi executables(.exe) và dynamic link library(.dll), được sử dụng cho cả 2

phiên bản hệ điều hành 32 bit và 64 bit Định dạng này là một cấu trúc đóng gói

đữ liệu cho trình tải hệ điều hành Windows(Windows OS loader) để quản lý và

thực thi những mã lệnh Những chức năng cơ bản của định dạng tệp tin PE:

¢ Mô tả Dinh dang PE: Dinh dang PE (Portable Executable) cung cấp một bản

đồ chi tiết về cách chương trình được tải vào bộ nhớ Nó xác định vị trí vàcách mã và dữ liệu được lưu trữ trong bộ nhớ, cũng như các thư viện cần

6

Trang 18

Chương 2 COSO LY THUYẾT

thiết và cách chúng được liên kết Bằng cách này, nó quy định cách chính

xác để hệ điều hành tải chương trình và đảm bảo tính đồng nhất trong quá

trình thực thi.

© Tài nguyên sử dụng trong quá trình thực thi: Chương trình cung cấp các

tài nguyên như hình ảnh, video, và chuỗi ký tự mà nó có thể sử dụng trong

suốt quá trình thực thi Các tài nguyên này đóng vai trò quan trọng trongviệc cung cấp trải nghiệm người dùng hoàn chỉnh và đa dạng, bổ sung chochức năng chính của chương trình.

e Cơ chế bảo mật: tập tin PE thường sử dung chữ ký số và các phương tiện

khác để hệ điều hành có thể xác thực nguồn gốc của chương trình được nạp.Qua đó, hệ điều hành có khả năng đảm bảo tính toàn vẹn và nguồn gốc của

mã, giúp ngăn chặn các cuộc tân công độc hại và đảm bảo tính ổn định của

hệ thống.

Cấu trúc chung của định dạng tệp tin PE sẽ có 2 phần là header và section, phầnheader dùng để lưu các giá trị định dang va offset của các section trong phan

section.

Trường tiêu dé DOS (DOS Header)

Trường tiêu dé DOS có mục dich để thông báo tệp tin không thé hoạt động Trong

môi trường MS-DOS, trường này được thực thi mỗi khi tệp tin chạy trong môi

trường MS-DOS Cụ thể, Trường tiêu dé DOS chiếm 64 bytes đầu tiên trong tệp

và bao gồm hai giá trị quan trọng: e magic (0x5a4b) và e_lfanew, một DWORD

4 bytes Giá trị trong e_lfanew chứa khoảng cách (offset) đến Trường tiêu dé tập

tin PE, xác định cách thức tập tin sẽ được thực thi Để đảm bảo khả năng thực thi

trong môi trường MS-DOS, 64 bytes đầu tiên của tệp thực thi PE được chiếm bởi

trường tiêu dé DOS Trong trường này, e_magic là chữ ký của tệp thực thi PE vae_là một DWORD chứa offset của PE Header so với vị trí đầu tệp Thông qua việcnày, tệp tin được xác định và chuẩn bi để thực thi, giúp tăng tính linh hoạt của nó

trong các môi trường khác nhau.

Trang 19

Chương 2 COSO LY THUYẾT

6x000

6x0008 6x0010

6x0018 6x0020 0x0028 0x0030 0x0038

0x0040

0x0048 9x0050 0x0058

@xa060 0x0068

Windows Specific Fields

Data Directories

Section Table

Optional Header

Trang 20

Chương 2 COSO LY THUYẾT

Trường DOS STUB

Trường này là một chương trình DOS EXE dùng để thông báo lỗi: “This is

pro-gram cannot be run in DOS mode” khi chương trình không tương thích.

Trường tiêu dé PE (PE Header)

Truong PE header bao gom cac thong tin can thiét dé tai chương trình lên bộ nhớ.Câu trúc này gồm 3 phần được định nghĩa trong windows.inc:

¢ Signature: là 1 DWORD bắt đầu của PE Header chứa chữ ký : 50h, 45h, 00h,

00h.

se IMAGE FILE HEADER: Trường nay bao gồm 20 bytes tiếp theo của PE

Header, phan này chứa thông tin về sơ dé bố trí vật lý và các đặc tính của

tệp tin.

e® IMAGE_OPTIONAL_HEADER: Gồm 224 bytes tiếp theo sau

FILE_HEADER Chứa thông tin về sơ đồ logic trong tệp tin PE Trường naychứa một số thông tin quan trọng giành cho việc chỉnh sửa tệp tin

Magic (2 bytes): Xác định là tệp tin 32 bit (OB 01) hay 64 bit (OB 20)

AddressOfEntryPoint (4bytes): Chứa dia chi ảo tương đối (RVA) củacâu lệnh đầu tiên sé được thực thi khi chương trình PE loader san sàng

để chạy tệp thực thi PE (.text) Nếu muốn chương trình bắt đầu từ một

địa chỉ khác (để thực thi câu lệnh với mục đích khác) thì cần thay đổiđịa chỉ này về địa chỉ tương đối của câu lệnh muốn thực thi

ImageBase: địa chỉ nạp được ưu tiên cho tệp tin PE.

Section Alignment: Phần liên kết của các Section trong bộ nhớ

File Alignment: Phan liên kết của các Section trong tệp tin Tương tự

như SectionAlignment nhưng áp dụng với tệp tin.

SizeOfImage: Toàn bộ kích thước của Pe image trong bộ nhớ, là tổng

của tất cả các headers và sections được liên kết tới Section Alignment

SizeOfHeaders: Kích thước của tất cả các headers + section table =

kích thước tệp tin trừ đi tổng kích thước của các section trong tệp tin.

9

Trang 21

Chương 2 COSO LY THUYẾT

— Data Directory: là một mảng gồm 16 phan tử, trong đó mỗi phần liên

quan đến một cấu trúc di liệu quan trọng trong tệp tin PE

Phân đoạn bảng (Section Table)

Section Table là thành phần tiếp theo ngay sau Trường tiêu để PE, Section ble bao gồm một mảng những câu trúc IMAGE_SECTION_HEADER, Mỗi thànhphần trong đó đều chứa thông tin về một phân đoạn cụ thể trong tệp tin PE:

Ta-¢ Kích thước ảo (VirtualSize): Kích thước thật của dữ liệu sau khi được tải

lên bộ nhớ.

¢ Dia chỉ ao (VirtualAddress): Giá trị ánh xạ của các section sau khi được tải

lên bộ nhớ.

* SizeOfRawSection: Kích thước của section data có trên 6 đĩa

* PointerOfRawSection: là offset từ đầu tệp tin cho tới section data

¢ Đặc tinh (Characteristic): Chia đặc tính của section: thực thi, dữ liệu khởi

tạo

Phân đoạn tập tin PE (Section PE File)

Phan sections của một tệp tin PE chứa dữ liệu cần thiết dé có thể thực thi đượctệp tin Mỗi phan của PE section đều có chứa tiêu dé riêng (Section Header) được

lưu trữ trong Section Table Section gồm có:

© text: Phần text là phân đoạn chứa mã thực thi của tệp tin PE

e data: Chua dữ liệu, các biến được khởi tao trong mã lệnh

© rdata: Chứa những dữ liệu chỉ đọc, các biến const

* idata: Chứa bảng nhập (Import Tables) Phan này được trình tai sử dụng để

xác định sẽ tải những DLL nào va các chức năng được sử dụng từ mỗi DLL.

© edata: Chứa những thư mục xuất (Export Directory) Phan nay bao gồm

những hàm có chức năng xuất

10

Trang 22

Chương 2 COSO LY THUYẾT

© rsrc: Chứa tai nguyên mà một chương trình sử dung Bao gồm hình ảnh,

biểu tượng,

2.1.2 Hop ngữ

Hop ngữ hay còn được gọi là Assembly code, là một loại ngôn ngữ bac thấp va

có khả năng tương tác trực tiếp với vi xử lý Hợp ngữ có thể được dịch sang ngôn

ngữ khác thông qua trình biên dịch assembly (assembler) và trình dịch ngược

(disassembler) [1] Dịch mã độc sang hợp ngữ giúp việc phân tích và điều tra trở

nên dé dàng hơn nhờ tính tương thích với hoạt động của máy tính.

Malware Author Malware Analyst

High-level Language Low-Level Language

này được nạp vào bộ nhớ khi chương trình chạy Các loại mã độc thường lợi dụng

DLL để thay đổi thanh ghi hệ thống, sao chép tập tin,

11

Trang 23

Chương 2 COSO LY THUYẾT

Nghiên cứu của Moskovitch [14] cũng chi ra rằng việc sử dung hợp ngữ sé có hiệu

quả cao hơn trong việc phân tích mã độc so với mã máy, ngoài ra mã độc nén và

mã độc đa hình có thể bị phân tích bằng cách sử dụng những trình disassembler

như IDA.

Các kỹ thuật biến đổi hình dạng mã độc trên hợp ngữ như chèn mã chết, tái khaibáo thanh ghi, tái sắp xếp chương trình con, thay thế lệnh, chuyển vị mã và tíchhợp mã nhằm mục đích tránh được phát hiện bởi các trình phát hiện mã độc.Điều này làm nảy sinh nhu cầu phân tích mã hợp ngữ của các nhà khoa học đểhiểu rõ cơ chế phát hiện mã độc của các công cụ phát hiện hiện tại

Một số vai trò của hợp ngữ trong việc phát hiện và phân tích mã độc:

s® Phân tích chuyên sâu và chi tiết: Mã độc thường được viết hoặc dịch sang

hợp ngữ để tăng độ khó trong việc phát hiện và phân tích Khả năng đọc

hiểu hợp ngữ giúp các chuyên gia an ninh mạng tiếp cận mã độc từ gốc rễ,

phân tích các hành vi bat thường hoặc độc hai ma các công cu tự động có

thể bỏ sót Nghiên cứu của Gu và cộng sự [4] đã nhấn mạnh tầm quan trọng

của việc sử dụng hợp ngữ trong việc phát hiện mã độc thông qua phân tích

tính và học máy.

© Phat hiện kỹ thuật xáo trộn (Obfuscation): Kỹ thuật xáo trộn mã nhằm che

giấu mục đích thực sự của mã độc bang cách thay đổi cấu trúc mà không

làm thay đổi hành vi của nó Các nhà phân tích, nhờ vào kiến thức về hợpngữ, có thể giải mã các đoạn mã xáo trộn này, từ đó phát hiện và hiểu rõhơn về cách thức hoạt động của mã độc Nghiên cứu của Gibert và cộng sự

[8] đã đề cập đến các thách thức trong việc phân tích mã độc khi phải đối

mặt với kỹ thuật xáo trộn và cách hợp ngữ có thể hỗ trợ trong việc này

¢ Tạo chữ ký mã độc (Malware Signature): Hợp ngữ giúp tao ra các chữ ký

mã độc cụ thể, dựa trên các mẫu hành vi hoặc các đoạn mã độc hại đã biết.Những chữ ký này sau đó được sử dụng trong các hệ thống phát hiện mãđộc để so sánh và phát hiện các mối đe dọa tiềm ẩn Theo nghiên cứu trong

"EURASIP Journal on Information Security" [7], việc sử dụng hợp ngữ để

tạo chữ ký mã độc giúp nâng cao hiệu quả phát hiện và đối phó với các mối

đe dọa mới.

12

Trang 24

Chương 2 COSO LY THUYẾT

2.2 Mô hinh phat hiện mã độc

Trong bối cảnh an ninh mạng ngày càng trở nên phức tạp và khó lường, mã độc

là một mối đe dọa đáng sợ đối với cả người dùng cá nhân và doanh nghiệp.Những cuộc tan công ransomware gần đây đã gây ra những thiệt hại nghiêmtrọng, không chỉ về tài chính mà còn ảnh hưởng lớn đến uy tín và sự hoạt độngliên tục của các tổ chức Điều này đã nhắn mạnh sự cần thiết của việc phát triểncác phương pháp phát hiện mã độc hiệu quả Việc phát hiện và phòng chống mãđộc không chỉ là một thách thức kỹ thuật mà còn là một yếu tố then chốt trongviệc bảo vệ hệ thống khỏi các cuộc tấn công nguy hiểm

Để đối phó với các mối đe dọa ngày càng tinh vi, các nhà nghiên cứu đã phát

triển hai phương pháp chính để phát hiện mã độc: phân tích tĩnh và phân tích

động Phân tích tĩnh là quá trình nghiên cứu mã nguồn hoặc mã biên dịch của

một chương trình mà không cần thực thi nó Phương pháp này tập trung vào việc

kiểm tra các đặc điểm cố định của mã, chang hạn như cấu trúc, chuỗi ký tự, và

các mẫu lệnh Phân tích tĩnh có thể phát hiện mã độc thông qua việc so sánh với

các chữ ký mã độc đã biết hoặc thông qua các kỹ thuật học máy để nhận diện các

mẫu mã độc mới.

Ngược lại, phân tích động liên quan đến việc theo dõi hành vi của chương trìnhtrong khi nó đang thực thi Phương pháp này giúp nhận diện các hành vi bat

thường hoặc đáng ngờ mà mã độc có thể thực hiện, chẳng hạn như truy cập trái

phép vào các tài nguyên hệ thống, ghi lại thao tác bàn phím, hoặc mã hóa dữ liệu

để tống tiền Phân tích động thường được thực hiện trong một môi trường kiểm

soát, chẳng hạn như máy ảo hoặc sandbox, để đảm bảo rằng mã độc không gây

hại đến hệ thống thực tế

Sự kết hợp giữa phân tích tĩnh và phân tích động cung cấp một cách tiếp cận toàn

điện hơn để phát hiện mã độc Phân tích tĩnh giúp nhanh chóng lọc ra các mẫu

mã có khả năng là mã độc, trong khi phân tích động cung cấp thông tin chỉ tiết

về hành vi thực tế của chúng Bằng cách sử dụng cả hai phương pháp này, cácchuyên gia an ninh mạng có thể nâng cao khả năng phát hiện và phản ứng kịpthời với các mối đe dọa, giảm thiểu thiệt hại và bảo vệ tốt hơn cho hệ thống và dữ

liệu quan trọng.

13

Trang 25

Chương 2 COSO LY THUYẾT

2.2.1 Phương pháp phân tích tinh

Kỹ thuật phát hiện mã độc dựa trên phương pháp phân tích tĩnh giúp hệ thốngphát hiện được mã độc mà không cần phải thực thi chương trình, giúp giảm nguy

cơ mã độc gây hại trong quá trình phân tích mà thay vào đó những thuộc tính của

tệp thực thi được trích xuất ra bằng một số kỹ thuật chuyên sâu chẳng hạn như

trích xuất từ trường Header, trích xuất từ các đoạn mã được tải lên

Ngoài ra, phân tích tĩnh còn cho phép kiểm tra toàn bộ mã nguồn và cấu trúc của

chương trình, giúp nhận diện các đặc điểm đặc trưng của mã độc Ví dụ, các đặc điểm như chuỗi ký tự đặc biệt, những đoạm đáng ngờ, việc sử dụng các đặc điểm này trong mô hình học máy có thể nâng cao độ chính xác trong việc phát hiện mã

độc.

Những nhóm thuộc tính của tệp thực thi PE có thể trích xuât được là: DOS, PE,

Optional and Sections Table đối với trường header, còn với trường sections sẽ là

những nhóm thuộc tính như Code, Imports và Data [10] Những thuộc tính trong

những trường này sẽ được trích xuât nhằm mục đích huấn luyện cho mô hình

phát hiện mã độc dựa trên học máy.

Để có thể trích xuất được những thuộc tính nhằm huấn luyện mô hình trong

phương pháp phân tích tĩnh, một số trình dịch ngược, trình gỡ lỗi được sử dụng

để phân tích tệp tin mã độc như IDA Pro và OllyDbg [20], những công cụ này

cung cấp cho những nhà nghiên cứu những thông tin chuyên sâu về cơ chế hoạtđộng của phần mềm độc hại Ngoài ra một số công cụ trích xuất bộ nhớ LordPE

và OllyDump [20] có thể được sử dụng để lấy mã được bảo vệ (protected code)nằm trong bộ nhớ của hệ thống nhằm phát hiện được những mẫu mã độc nén

Việc phát hiện mã độc bằng phương pháp phân tích tĩnh sẽ có kết quả rất tốt tuynhiên, đối với những loại mã độc đột biến khi này, những nhóm thuộc tính sẽkhông còn như ban đầu vì vậy phương pháp phân tích tĩnh sẽ trở nên mắt lợi thế

khi phải nhận diện những mẫu mã độc đột biến.

14

Trang 26

Chương 2 COSO LY THUYẾT

2.2.2 Phương pháp phan tích động

Phân tích động là một phương pháp hiệu quả để phát hiện và phân tích mã độc

bằng cách thực thi mã trong một môi trường kiểm soát và giám sát các hành vi

của nó Khi mã độc được thực thi, các nhà nghiên cứu có thể quan sát các hành

động và thay đổi mà mã độc thực hiện trên hệ thống, từ đó xác định được những

hoạt động bat thường hoặc nguy hiểm

Để áp dụng phương pháp này, mã độc thường được thực thi trong các môi trường

cách ly như máy ảo hoặc sandbox Các môi trường này mô phỏng hệ thống thật

nhưng tách biệt hoàn toàn, giúp ngăn chặn mã độc lan rộng và gây hại Quá trình

giám sát có thể được thực hiện bằng các công cụ như Process Monitor và ProcessHacker, cho phép theo dõi chỉ tiết các tiến trình và thay đổi trong hệ thống Bên

cạnh đó, Wireshark được sử dụng để giám sát lưu lượng mạng, giúp phát hiện

các kết nối bat thường Công cụ như Regshot có thể theo dõi sự thay đổi trongregistry, cung cấp thông tin quan trọng về các thay đổi trên hệ thống mà mã độc

thực hiện.

Kỹ thuật Giám sát hành vi

Giám sát hành vi là một kỹ thuật quan trọng trong phân tích động, giúp theo đõi

và phân tích các hành vi thực thi của chương trình trong thời gian thực Kỹ thuật

này cho phép phát hiện các hành động đáng ngờ, chẳng hạn như việc mở, sửa

đổi, hoặc xóa các tập tin, thay đổi cấu trúc hệ thống như định dạng ổ đĩa hoặcthay đổi registry và các hoạt động mạng như mở các cổng đặc biệt hoặc kết nối

tới các địa chỉ IP không đáng tin cậy Từ đó đánh giá trong cả quá trình chạy, mới

có thể kết luận được những hành vi này có bat thường và khả nghỉ hay không vacòn để kết luận xem liệu tệp thực thi này có phải mã độc hay không

Kỹ thuật giả lập (Emulation)

Giả lập là một kỹ thuật cho phép các chương trình được thực thi và phân tích

trong một môi trường mô phỏng Mục tiêu của kỹ thuật này là để lộ các đặc tính

và hành vi nguy hại của mã độc khi nó được thực thi như thông thường Giả lập

cung cấp một môi trường an toàn và kiểm soát, nơi mà mã độc có thể được phân

15

Trang 27

Chương 2 COSO LY THUYẾT

tích ma không gây hai cho hệ thống thực tế Những môi trường phổ biến để ápdụng kỹ thuật này có thể kể đến như sandbox, máy ảo, vân vân Có 2 phươngpháp chính để áp dụng kỹ thuật này là:

© Tìm kiếm động (Dynamic Heuristic): Tìm kiếm động là một phương pháp

trong giả lập giúp thu thập và phân tích các hành vi của chương trình trong môi trường mô phỏng Khi mã độc được thực thi trong môi trường này, các

hành vi như truy cập tập tin, thay đổi câu trúc hệ thống, và kết nỗi mạng

được giám sát và ghi nhận Phương pháp này cho phép phát hiện các mẫu

hành vi đáng ngờ, giúp tăng độ chính xác trong việc phát hiện mã độc.trình khả nghỉ.

¢ Giải mã chung (Generic Decryption): Giải mã chung là một kỹ thuật đặc biệt

hữu ích trong việc đối phó với các mã độc đa hình (polymorphic malware).Các mã độc này thường sử dụng các phương pháp mã hóa phức tạp để chegiấu bản chất thực sự của chúng, khiến cho việc phát hiện trở nên khó khăn.Khi mã độc được giải mã trong môi trường giả lập, các phần tử nguy hại

của nó có thể được phát hiện bằng các phương pháp dò quét thông thường

Quá trình giải mã chung thường bao gồm việc cho phép mã độc tự giải mãtrong môi trường kiểm soát Khi quá trình giải mã diễn ra, phần thân của

mã độc trở nên rõ ràng và có thể được phân tích Điều này giúp các công cụchống mã độc nhận diện và ngăn chặn các hành vi nguy hại một cách hiệuquả.

2.2.3 Mô hình phát hiện mã độc dựa trên học máy

Trong hai kỹ thuật vừa nêu, phân tích tĩnh và phân tích động, có thể thấy rằng cảhai đều dựa trên việc nhận diện các mẫu mã độc đã được ghi nhận hoặc các biếnthể của chúng Các phương pháp này dựa trên sự đúc kết và phát triển các khuônmẫu từ những dữ liệu mã độc đã biết Do đó, khi gặp phải các loại mã độc hoàntoàn mới mà chưa từng xuất hiện, hệ thống chống mã độc có thể gặp khó khăntrong việc nhận diện và ngăn chặn Điều này dẫn đến một rủi ro cao là hệ thống

có thể bị xâm nhập và gây thiệt hại đáng kể

Hơn nữa, việc phân tích mã độc sau khi chúng xuất hiện và triển khai các biệnpháp đối phó thường đòi hỏi một khoảng thời gian không nhỏ Trong khoảng

Trang 28

Chương 2 COSO LY THUYẾT

thời gian nay, mã độc có thể lây lan và xâm nhập sâu hơn vào hệ thống, gây ra

những hậu quả nghiêm trong Sự chậm trễ trong việc phát hiện va phan ứng có

thể tạo cơ hội cho mã độc khai thác các lỗ hổng và gây ra thiệt hại lan rộng

Hiện nay, với sự phát triển mạnh mẽ của các thuật toán và khối lượng dữ liệu

lớn, học máy đã được áp dụng rộng rãi trong lĩnh vực phát hiện mã độc, nhằm

mục đích dự đoán và nhận diện các loại mã độc mới Các mô hình học máy có

khả năng tự động khám phá và học hỏi từ các dữ liệu được trích xuất, từ đó nhận

điện các khuôn mẫu mã độc một cách hiệu quả.

Các thuật toán học máy phổ biến được sử dụng trong việc phát hiện mã độc baogồm: Cây quyết định, Máy véc-tơ hỗ trợ (SVM), Naive Bayes, Rừng ngẫu nhiên(Random Forest), Mạng nơ-ron (Neural Networks), và K hàng xóm gần nhất (K-

Nearest Neighbors) Những thuật toán này không chỉ giúp phát hiện các mẫu mã

độc đã biết mà còn có khả năng dự đoán và nhận diện các mã độc mới xuất hiện,

nhờ vào khả năng học và phân tích dữ liệu phức tạp iệHn nay, với sự phát triển

của các thuật toán và dữ liệu, học máy đã được ứng dụng trong lĩnh vực phát hiện mã độc với mục đích dự báo được các loại mã độc mới Mô hình phát hiện

mã độc dựa học máy cung cấp khả năng khám phá các khuôn mẫu mã độc mộtcách tự động dựa trên các dữ liệu được trích xuất Các thuật toán học máy phổbiến được ứng dụng trong việc phát hiện mã độc có thể kể tới như: Cây quyết

định, Máy véc-tơ hỗ trợ (SVM), Naive Bayes, Rừng ngẫu nhiên (Random Forest),

Mạng no-ron (Neural Networks), K hàng xóm gan nhất (K-Nearest Neighbors), Trong phạm vi khóa luận này, chúng tôi sẽ mô tả về các mô hình học máy được

áp dụng chính trong bài là Cây quyết định tăng cường tốc độ (Gradient booosting

decision tree - GBDT) và Mạng no-ron (Neural Networks) Trong phạm vi khóa

luận này, chúng tôi sẽ tập trung mô tả hai mô hình học máy chính được áp dụng

là Tăng cường tốc độ (Gradient Boosting), Cây quyết định (Decision Tree), Rừngngẫu nhiên (Random Forest), mạng nơ-ron thần kinh tích chập (Convolutional

neural network) và

Thuật toán cây quyết định

Decision Tree là một thuật toán supervised learning (học có giám sát) Thuật toán

cây quyết định là một trong những công cụ mạnh mẽ được áp dụng trong việc

17

Trang 29

Chương 2 COSO LY THUYẾT

phát hiện mã độc nhờ vào khả năng phân loại và dự đoán dựa trên các đặc điểm

cụ thể của dữ liệu Thuật toán này hoạt động bang cách chia nhỏ dữ liệu thành

các tập con dựa trên các điều kiện xác định, giúp tối ưu hóa quá trình nhận diện

các mẫu mã độc.

Một trong những ưu điểm nổi bật của cây quyết định là khả năng xử lý và phân

tích dữ liệu một cách nhanh chóng và hiệu quả Thuật toán này không chỉ dễ hiểu

và dễ triển khai mà còn cung cấp một cách trực quan để diễn giải các quyết định

được đưa ra Đặc biệt, cây quyết định có thể xử lý cả dữ liệu phân loại và dữ liệu

liên tục, giúp mở rộng phạm vi ứng dụng trong các tình huống khác nhau

Play (Y) or Not (N)

Hình 2.3 là một ví dụ 1 về cây quyết định Giả sử dựa theo thời tiết mà một gia

đình có quyết định đi chơi hay không ? Dựa theo mô hình trên, nếu trời nắng, độ

ẩm bình thường thì khả năng gia đình này đi chơi cao Còn nếu trời nắng, độ ẩm

cao thì khả năng sẽ không đi.

18

Trang 30

Chương 2 COSO LY THUYẾT

2.2.4 Thuật toán rừng ngẫu nhiên

Nếu như thuật toán cây quyết định tượng trưng cho sự quyết định bởi một cây

thì Random Forest sẽ gộp nhiều cây quyết định lại với nhau, mỗi quyết định của

mỗi cây sẽ được tổng hợp lại và đưa ra quyết định cuối cùng

Rừng ngẫu nhiên mang lại nhiều lợi ích trong việc phát hiện mã độc Một trong

những ưu điểm chính là khả năng giảm thiểu hiện tượng overfitting, vốn là một

van dé phổ biến ở các mô hình cây quyết định đơn lẻ Bằng cách sử dung một

tập hợp lớn các cây quyết định được huấn luyện trên các tập dữ liệu ngẫu nhiênkhác nhau, rừng ngẫu nhiên có thể tổng hợp các dự đoán từ nhiều mô hình khác

nhau để cải thiện độ chính xác tổng thể và tính ổn định của dự đoán Nhờ vào

sự kết hợp của nhiều cây quyết định, rừng ngẫu nhiên có thể nắm bắt được các

mối quan hệ phức tạp trong đữ liệu Giả sử như có 2 cây quyết định đưa ra quyết

định là táo, cây cuối cùng lại đưa ra chuối thì kết quả cuối cùng sẽ được tổng hợp

lại đưa ra quyết định đó là táo

2.2.5 Thuật toán tăng cường độ đốc (Gradient Boosting)

Gradient Boosting là một thuật toán tang cường mạnh mẽ, kết hợp những môhình học yêu thành mô hình học mạnh mẽ, trong đó mỗi mô hình mới được huấnluyện để giảm thiểu ham mat mát (loss function) của mô hình trước đó bằng cách

sử dụng phương pháp descent Trong mỗi lần lặp, thuật toán tính toán độ dốccủa hàm mat mát theo các dự đoán hiện tại và sau đó huấn luyện một mô hình

mới để giảm thiểu độ đốc này Các dự đoán của mô hình mới sau đó được thêm

vào tập hợp và quá trình này được lặp lại cho đến khi đáp ứng tiêu chí dừng

Gradient Boosting có khả năng tự động hóa việc chọn lựa các đặc điểm quan

trọng, giúp tối ưu hóa quá trình phát hiện mã độc Thuật toán này sử dụng mộtcách tiếp cận lặp đi lặp lại để xây dựng các cây quyết định mới dựa trên lỗi củacác cây trước đó, từ đó cải thiện hiệu suất của mô hình một cách liên tục Điều

này đặc biệt quan trọng trong lĩnh vực phát hiện mã độc, nơi mà các mẫu mã độc

mới và biến thể có thể xuất hiện liên tục

19

Trang 31

Chương 2 COSO LY THUYẾT

Instance

HÌNH 2.4: Ví dụ về thuật toán rừng ngẫu nhiên

20

Trang 32

Chương 2 COSO LY THUYẾT

HÌNH 2.5: Ví dụ về thuật toán Gradient Boosting

Thuật toán Gradient Boosting nhằm để giải quyết bài toán tối ưu sau:

minc,,w„L(y, Wn_—1 + CnWn)

Trước tiên cần phải nói về công thức cập nhật tham số mô hình theo hướng giảm

của đạo hàm (Gradient Descent):

Nếu coi các mô hình boosting là một hàm số W thì mỗi hàm learner có thể coi là

một tham số w Đến đây, để cực tiểu hóa hàm mat mát L(y, W) sẽ có công thức:

Trang 33

Chương 2 COSO LY THUYẾT

Với mỗi wn là mô hình tiếp theo được thêm vào thuật toán Mô hình sẽ cần học

để phù hợp với giá trị —7 sxL(Wn~1) Giá trị này có tên gọi là pseudo-residuals

và được sử dụng làm nhãn cho mô hình tiếp theo

2.2.6 Thuật toán AdaBoost

AdaBoost (được coi là 1 trường hợp đặc biệt của Gradient Boosting) là thuật toán

với ý tưởng đơn giản là sử dụng các cây quyết định(1 gốc, 2 lá) để đánh trọng sốcho các điểm dữ liệu, từ đó cải thiện hiệu suất của các mô hình yếu để tạo ra một

mô hình mạnh.

Một trong những ưu điểm chính của AdaBoost là khả năng nâng cao hiệu suấtcủa các mô hình học máy yếu Bằng cách tập trung vào các mẫu khó phân loại,AdaBoost có thể cải thiện độ chính xác của mô hình tổng thể một cách đáng kể.Thuật toán này cũng rat linh hoạt và có thể kết hợp với nhiều loại mô hình yếu

khác nhau, chẳng hạn như cây quyết định, để tạo ra một mô hình mạnh mẽ hơn

Trong lĩnh vực phát hiện mã độc, AdaBoost có thể được sử dụng để phân loại và

nhận diện các mẫu mã độc mới bằng cách học từ các đặc điểm của dữ liệu đã biết.Điều này đặc biệt hữu ích khi đối phó với các biến thể mới của mã độc, giúp nângcao khả năng bảo vệ hệ thống trước các mối đe dọa chưa từng gặp Các bước triểnkhai thuật toán AdaBoost dựa theo hình 2.6 được triển khai như sau:

Đối với giải thuật AdaBoost bước đầu cần khởi tạo trọng lượng cho từng input,

thuật toán trên nhằm để khởi tạo trọng lượng ban đầu là bằng nhau và bằng 4

cho mỗi điểm dữ liệu:

11, 1

W, = Als {1,2, ,n} — Liw; = 1

Với mỗi vòng lặp sé huấn luyện mô hình học yếu moi w; mới được thêm vào.Tính giá trị mat mát và từ đó tính ra được giá trị điểm tự tin Cj của mô hình vừa

mới huấn luyện Cập nhật lại mô hình chính W = W + c¡w¡ Bước cuối cùng sẽ

đánh giá lại trọng số cho các điểm dữ liệu và tiếp tục tiến tới mô hình mới i+ 1

22

Trang 34

Chương 2 COSO LY THUYẾT

Weigh each data points

equally with weight,

Trang 35

Chương 2 COSO LY THUYẾT

2.2.7 Mạng nơ-ron tích chập

Trong những mô hình nơ-ron, mạng nơ-ron tích chập(CNN) được dùng cho việc

nhận dạng và phân loại hình ảnh Mạng nơ-ron tích chập phân loại bằng cách laymột đữ liệu đầu vào, xử ly và phân loại nó thành 1 nhãn nhất định (ví dụ: nam,nữ, ).Sau khi mô hình được huấn luyện, mỗi dữ liệu đầu vào sẽ được chuyểnqua những lớp tích chập (convolutional layer) với các bộ lọc (Kernals), tổng hợplại các lớp được kết nối đầy đủ (Full Connected) và áp dụng hàm Softmax để

phân loại đối tượng.

Trong mạng CNN có những thành phần chính sau đây:

¢ Lớp đầu vào: Là Lớp thể hiện cho những đầu vào của mạng

© Lớp tích chập: Tích chập là lớp đầu tiên để trích xuất các tính năng từ dữ

liệu đầu vào Lớp này duy trì mối quan hệ giữa các pixel bằng cách tìm hiểu

các thuộc tính của dữ liệu.

* Bước nhảy (Stride): Stride là số pixel thay đổi trên ma trận đầu vào Khi

stride là 1 thì ta di chuyển các kernel 1 pixel Khi stride là 2 thì ta di chuyểncác kernel đi 2 pixel và tiếp tục như vậy

* Đường viễn (Padding): Trong trường hop kernal không phù hợp thì lớp

padding sẽ được sử dụng để thêm các trọng số vào đường biên của dữ liệu

24

Trang 36

Chương 2 COSO LY THUYẾT

HINH 2.8: Ví du về bước nhảy trong mang CNN

¢ Lớp gộp (Pooling Layer): Lớp gộp thường được sử dung dé giảm bớt số

lượng khi dữ liệu qúa lớn Có 3 loại lớp gộp là Max Pooling, Average Pooling

và Sum Pooling:

- Max Pooling: Lay phan tử lớn nhất từ ma trận đối tượng

— Average Pooling: Lay trung bình tổng các ma trận đối tượng

— Sum Pooling: Tổng tat cả các phan tử trong ma trận

Mạng nơ-ron tích chập có những ưu điểm sau so với mạng nơ-ron truyền thống:Lượng tham số ít hơn nhiều so với mạng kết nối đầy đủ Các lớp tích chập(CONV), các lớp gộp giúp trích xuất đặc trưng của ảnh khiến ma trận ảnh điqua mỗi lớp nhỏ dan di, vì thế lượng tham số cần học cũng giảm theo Ngoài ra

vì loại đi những dữ liệu thừa có ảnh hưởng đến vị trí của đối tượng nên mạng

nhận diện chính xác một đối tượng nằm ở các vị trí khác nhau trong một ảnh

2.3 Mô hình khả diễn giải - XAI

Mô hình khả diễn giải, hay còn gọi là Explainable AI (XA]), là một lĩnh vực trong

trí tuệ nhân tạo tập trung vào việc phát triển các mô hình học máy mà con người

có thể hiểu được Mục tiêu chính của XAI là làm cho các quyết định và dự đoán

của mô hình trở nên minh bạch, dé hiểu va dé giải thích đối với người dùng cuối

25

Trang 37

Chương 2 COSO LY THUYẾT

Điều này đặc biệt quan trong trong các lĩnh vực nhạy cảm nói chung và lĩnh vực

an toàn thông tin nói riêng nơi mà các quyết định dựa trên AI có thể có mang sức

ảnh hưởng lớn đối với các hệ thống, hạ tang công nghệ thông tin

Khi các mô hình AI trở nên phức tạp và mạnh mẽ hơn, việc giải thích cách chúng

đưa ra quyết định trở nên khó khăn hơn Điều này có thể dẫn đến sự không tintưởng và lo ngại từ phía người dùng, đặc biệt khi các quyết định đó có tác độngtrực tiếp đến họ XAI giúp làm rõ quá trình ra quyết định của AI, từ đó ngườidùng có thể hiểu và tin tưởng vào các kết quả mà mô hình đưa ra

Khả năng diễn giải một mô hình có thể được chia thành hai loại: khả năng diễn

giả toàn cục (global interpretability) và khả năng diễn giải cục bộ (local

inter-pretability) Khả năng diễn giải toàn cục có nghĩa là người dùng có thể hiểu môhình trực tiếp từ cầu trúc tổng thể của nó còn khả năng diễn giải cục bộ chỉ kiểmtra một đầu vào và tìm hiểu tại sao mô hình lại đưa ra quyết định cụ thể cho đầu

vào đó.

2.3.1 XAI với SHAP (SHapley Additive exPlanations)

SHAP là một phương pháp được sử dung bởi những người làm việc với các mô

hình học máy hoặc những nhà phát triển AI để giải thích các dự đoán của mô hình Điểm mạnh của SHAP so với các giải pháp XAI khác đó là có thể được sử

dụng để giải thích các dự đoán của bất kỳ mô hình nào SHAP được phát triển

và tổng hợp từ nhiều công cụ XAI khác như LIME, DeepLift, Ý tưởng chính củaSHAP là tính toán các giá trị SHAP (SHAP values) cho từng thuộc tính của tập

dữ liệu được sử dụng để huấn luyện và kiểm tra mô hình học máy Những thuộc

tính này sẽ được diễn giải với giá trị SHAP thể hiện tác động của tính năng đó

trong việc tao ra dự đoán do mô hình đưa ra.

2.3.2 Giá trị SHAP (SHAP Values)

Giá trị Shapley được lấy khái niệm từ lý thuyết của trò chơi hợp tác Mục tiêu

của giá trị Shapley là đo lường sự đóng góp của mỗi người chơi cho trò chơi.

Khái niệm việc tính toán các giá trị Shapley dựa theo một trò chươi trong đó ’n’

người chơi tham gia vào trò chơi với mục đích đạt được phần thưởng ’a’ và phan

26

Trang 38

Chương 2 COSO LY THUYẾT

Base rate = 0.1 ‘ Base rate = 0.1

HINH 2.9: Tổng quan về bộ công cu SHAP

thưởng này được phân bổ công bằng cho mỗi người chơi theo đóng góp của từng

cá nhân Hãy tưởng tượng một nhóm người (A, B, C, D, E) đang thực hiện một dự

án nhằm thu được lợi nhuận (P) cho công ty Để phân chia lợi nhuận của công ty

một cách đồng đều cho 5 người dựa trên nỗ lực của họ để đạt được lợi nhuận đó,chúng ta cần tính toán phần đóng góp của từng cá nhân để đạt được lợi nhuận

(P) Đóng góp này là chính là giá trị Shapley cho mỗi người trong nhóm hoặc trong trường hợp học máy sẽ là từng thuộc tính Để tính giá trị Shapley của một

người ‘A’ trong nhóm, chênh lệch giữa lợi nhuận được tạo ra khi có thành viên đó

và khi vắng mặt thành viên đó sẽ được tính Sự khác biệt này được gọi là “đóng

góp cận biên của thành viên ‘A’ cho nhóm hiện tại Tat cả các nhóm khác nhau

mà thành viên ‘A’ có mặt tượng trưng cho sự liên kết của dữ liệu Do đó, để tínhtoán tất cả các khoản đóng góp cận biên cho thành viên nay (‘A’), dựa trên tat cảcác liên kết có thể có của họ Giá trị trung bình của tất cả các phân phối cận biên

là “Giá trị Shapley’ cho thành viên ‘A’ này.

27

Trang 39

Chương 2 COSO LY THUYẾT

Cae

Profit generated by |= generated by

coalition of members coalition of members

Trang 40

Chương 2 COSO LY THUYẾT

2.3.3 TreeSHAP

TreeSHAP, hay còn gọi là Tree-based SHAP [13], là một phiên ban mở rộng của

SHAP được thiết kế để giải thích các mô hình học máy dựa trên cây quyết định.Chính vì thế, nó đặc biệt phù hợp để giải thích cho các mô hình học máy dựatrên cây quyết định như Random Forest (RF), Decision Trees (DT) va Gradient

Boosting (GB).

2.3.4 AMM

AMM [19] được định nghĩa là tích của độ lớn của các giá trị SHAP trong mỗi đặc

trưng và số lượng mẫu có giá trị hướng độc hại (tức là các giá trị nghiêng về phía

dương, vì 1 biểu thị độc hại) trong đặc trưng tương ứng Theo tác gia, AMM được

dùng để xác định những đặc trưng của phần mềm độc hại có thể bị thao túng để

đạt được khả năng né tránh phát hiện cao nhất

2.3.5 Ứng dụng SHAP vào phát hiện mã độc dựa theo phương

pháp phân tích tính

Trong ngữ cảnh phát hiện mã độc, Phương pháp XAI có khả năng cung cấp chocác nhà phân tích mã độc một số giải thích vẻ lý do tại sao một mẫu nhất địnhđược phân loại là độc hại hoặc lành tính Hơn nữa đối với phương pháp phântích tĩnh, những thuộc tính được trích xuất ra từ mẫu mã độc, qua quá trình huấnluyện sẽ là những nhân tố quyết định tại sao mô hình đưa ra kết quả như vậy Vìthế bộ công cụ SHAP được sử dung tai đây để giải quyết van dé về những thuộc

tính nào sẽ quyết định một mẫu là độc hại hay lành tính và từ đó giúp chúng ta

có cái nhìn khái quát hơn về ngữ cảnh áp dụng học máy vào mã độc nén

2.3.6 Deep Learning Important FeaTures -DeepLIFT

DeepLIFT được tác giả Avanti Shrikumar và cộng sự công bố vào năm 2017 [18]

DeepLIFT là một thuật toán hoạt động dựa trên nguyên lý so sánh sự khác biệt

trong đầu ra của mô hình khi đầu vào thay đổi từ giá trị tham chiếu đến giá trịthực tế Thay vì chỉ tính toán sự thay đổi tuyệt đối trong đầu ra, DeepLIFT phân

29

Ngày đăng: 08/12/2024, 15:46

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

TÀI LIỆU LIÊN QUAN