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

Luận văn thạc sĩ Công nghệ thông tin: Phân loại mã độc Android dựa trên quyền hạn, lời gọi hàm hệ thống và danh sách thư viện

114 1 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 đề Phân loại mã độc Android dựa trên quyền hạn, lời gọi hàm hệ thống và danh sách thư viện
Tác giả Ngo Huu Phuc
Người hướng dẫn TS. Nguyen Tan Cam
Trường học ĐẠI HỌC QUỐC GIA TP. HCM
Chuyên ngành Công nghệ thông tin
Thể loại Luận văn thạc sĩ
Năm xuất bản 2023
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 114
Dung lượng 60,53 MB

Nội dung

kaspersky Hình 5: Thong kê phan mềm độc hại phát hiện theo loại, Q4 2022 va Q1 2023 Dé bảo vệ thiết bi Android khỏi mã độc, người dùng nên cập nhật hệ điều hành vaứng dụng thường xuyên,

Trang 1

ĐẠI HỌC QUỐC GIA TP HCM

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

BOK CR

hes,

NGO HUU PHUC

PHAN LOAI MA DOC ANDROID DUA TREN QUYEN HAN,

LOI GOI HAM HE THONG VA DANH SACH THU VIEN

LUẬN VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN

Mã số: 8.48.02.01

GIẢNG VIÊN HƯỚNG DAN:

TS NGUYÊN TẤN CẢM

TP HÒ CHÍ MINH, 12/2023

Trang 2

LỜI CAM ĐOAN CỦA HỌC VIÊN

Tôi xin cam đoan luận văn với đề tài “PHAN LOẠI MA ĐỘC ANDROID DUA TREN QUYỀN HAN, LOI GOI HAM HE THONG VÀ DANH SÁCH THU VIỆN” được thực hiện một cách độc lập dưới su hướng dẫn tận tâm của Thay TS Nguyễn

Tấn Cầm, báo cáo trung thực không gian lận các kết quả và số liệu Tôi đã thực hiện nghiên cứu, tìm hiểu và tự thân viết báo cáo luận văn, không sao chép mà không được ghi chú từ bat kỳ nguồn nào Nếu phát hiện được bất kỳ sự gian lận nào, tôi xin chịu

trách nhiệm về công trình nghiên cứu viết trong bài báo cáo luận văn này.

Học viên

Ngô Hữu Phúc

Trang 3

LỜI CẢM ƠN CỦA HỌC VIÊN

Trân trọng cảm ơn một cách sâu sắc đến thay TS Nguyễn Tấn Cầm hỗ trợ và hướng dẫn tôi hoàn thành nghiên cứu và thực hiện báo cáo tốt nghiệp cuối khóa Tôi cũng trân trong cảm ơn đến các thay, cô, gia đình đã cé vũ tôi trong suốt khoảng thời

gian học tập Ngoài ra, xin cảm ơn tất cả các bạn bè, anh chị, đã giúp đỡ, hỗ trợ, chia

sẻ kinh nghiệm và kiến thức dé tôi có thể học hỏi và tích lũy thêm kiến thức bản thân trong suốt thời gian qua Kính mong thay cô và các bạn góp ý dé hoàn thành báo cáo

luận văn một cách tốt nhất.

Tran trong!

TPHCM, ngay 16 thang 5 nam 2023

Hoc vién thuc hién

Ngô Hữu Phúc

Trang 4

MỤC LỤC CỦA LUẬN VĂN

LOT CAM DOAN CUA HỌC VIÊN cccesccczreeetrrrxessrtrrreererrresere 2 LOT CAM ON CUA HỌC VIEN wesecscssssesssssssesssssseccessssescsssnecsssssseccesssecsessasecessansecets 3 MỤC LUC CUA LUẬN VĂN

DANH MỤC CÁC HÌNH ANH DUNG TRONG LUẬN VĂN 7

DANH MỤC BANG BIỀU ccee<©©CEEEE+xetetttrvrkkkreertrkrrkrressrivl 9

DANH MỤC TỪ NGỮ VIET TAT SỬ DỤNG -ss<ccssssees 10

TOM wvyv0n 029 11

Chuong 1 GIOI THIEU

1.1 Xu hướng di động thông mỉnh s- << s «se «s4 «se ssseseseses 12

1.2 Cấu trúc AndroidOS ‹ e«s ccxxxeesstrrrtrrkkirrrrrrrrrkke 14

1.3 Nguy cơ mã độc tan công.

1.4 Phan loại mã độc Android -ssessesseseesesessrsersrssssee 19

1.5 Cách tiếp cận nghiên cứu của dé tài -c‹ss<c+veexxeeseerer 20

Chương 2 LÝ THUYET HQC MAY, MỘT SO BÀI BAO NGHIÊN CỨU VA CONG TRÌNH LIEN QUAN ccscssccssssssssssssssssssssusnusssssssseccececeeceeseeesecesssssnnnnnsessetsee 23 2.1 Lý thuyết học máy -veesstettrrr+xseettsrrrrkksesrttrrrkkkrsee 23

2.2 Trí thông minh nhân tao

2.2.1 Học máy HGS - kh HH HH it 24 2.2.2 Học máy HKGS - S2 HH 24 2.2.3 Học máy HBGS S2 TH HH HH grưy 25

2.3 Một số giải thuật máy học cs-ceeeccvveseeerrxeseerrrsssrrrrrsee 26

2.3.1 Giải thuật hồi quy logistic -5cccccccessrrrrrtrrrrrrrrrrrrrrrrree 26

2.3.2 Giải thuật k-NN SH HH rưe, 27 2.3.3 Giải thuật SVM Ăn ưei 28

Trang 5

2.3.4 Thuật toán DĨT -cc + 2t rrertrrerierirrerrrrrrerrrrerdee 28

2.3.5 Thuật toán RE LH HH HH ky 29

2.3.6 Giải thuật Mạng Nơ-ron óc S55 stsseerersreerrerrrrrrrrererree OO

2.4 Một số bài báo liên quan nghiên cứu se sccsseeccsssse 31 Chương 3 MÔ HÌNH DE XUẤT ccs 222vvsseeeevvvvvvesseersrerrree 43 3.1 Nguồn trích xuất đặc tính -«ss<+veseecxseetrsserrsssrrrssee 43

3.2 Mô tả bộ dữ liệu huấn luyện -secvsseevvvxeseeervssserrrrsee 43

3.3 Chuẩn hóa bộ dữ liệu -©©©++eeearrrkeeeeretrrrrirrrree 44 3.4 Trích xuất dữ liệu

3.4.1 Các bước trong quá trình trích xuât đặc trưng từ AndroPyTool 46 3.4.2 Thực hiện rút trích đặc trưng thư viỆn ¿+ =+xsszx+x++=xe 46

4.2.4 Recall (REC) cưa 54

4.2.5 Fl-score (F1)

4.3.1 RE HH hờn 55

Trang 6

= ° " 57

43.4 DT nhi 58

¬ h ố.ốố 59 4.3.6 MLP os.2 222222222 1E 60

4.3.7 Giá trị kết quả trung bình huấn luyện các mô hình 6l

4.3.8 So sánh kết quả huấn luyện mô hình SVM với ba loại đặc trung 62

4.3.10 Đề thị điểm Fl-score -ccccvvvrvevrrrrrrirrrrrrrrrirrrrrrrrri 64 Chương 5 KET LUẬN VÀ ĐỊNH HƯỚNG CÁC CHIEN LƯỢC NGHIÊN CỨU THOT GIAN TỚII 2 -+©2s°VE+++EEEE+SdEvEvveseetvvxseterrrxseeerrrsseesrrsssedi 66

5.1 Kết luận kết quả thực nghiệm -«°vvvvvveseertrrrrrxxesee 66

5.11 Kết quả thử nghiệm sau khi thực hiện huấn luyện -«- 66

5.1.2 Một số thách thức, hạn chế gặp phải -c-¿ cccc+ 67 5.2 Hướng phát triỂn .-. -e se©©cseeereeeerxeeerrseeersesersesrrrssed 67

TÀI LIỆU THAM KHẢO

Trang 7

DANH MỤC CÁC HÌNH ANH DUNG TRONG LUẬN VAN

Hình 1: Thống kê thị phần hệ điều hành di động đến quý 01/2023 - 13 Hình 2: Kiến trúc AndroidOS - s55 ckccEềE tk E111 1112111211122 Erree 15 Hình 3: Thành phân tập tin APK 5- 25522 2222S 222221 E11 ccerrrerree, 17

Hình 4: Thống kê mã độc được phát hiện, Q2 2022—Q2 2023 19 Hình 5: Thống kê phan mém độc hại phát hiện theo loại, Q4 2022 và Q1 2023 20 1857/17/18 26

Hình 7: Một ví dụ về phân lớp Kecccccsscsssssssssessssscssssessssssessusssssessssessssuessssessssessssesesses 27

Hình 8: Một mô tả ví dụ mô hình ŠVÌM - 55c 5+ +vESE+veeretrrxeerrrrrrerexrr 28

Hình 9: Một hình ảnh mình họa ví dụ về mô hình DT e-cccccxccrxeerxeerxeerrcer 29

Hình 10: Một mô ta ví dụ mô hình RF eccssssssssssssssssssssssessssssssssssessscssssssssssssssessessesess 30

Hình 11: Kiến trúc của đơn vị RNN và khối bộ nhớ LSTM[ l] - - 31 Hình 12: Kiến tric dé xuất phân loại Android dựa vào quyển - 3⁄2

Hình 13: Quy trình xứ lý của PerinMdjDs 5ằcc5ccc+ccscereerererrreeree 32

Hình 14: Sơ đô quy trình phân loại APK độc hại và lành tính „33 Hình 1ã: Kiến trúc hệ thong phát hiện và phân loại PMĐH bằng cách dùng lời gọi

34 35

Hình 17: Mô hình tổng thé phát hiện mã độc Android bằng cách kết hợp các quyén

hàm

Hình 16: Quy trình đề xuất phân loại phần mém độc hai tự động.

Hình 18: Sơ đô AFCŒDroid 5 2222222222+222222+2E2223112212111221111 22211 cxer 36

Hình 19: Mô hình phân loại kết hợp quyên và chữ ký cccccccccccccescr 37

Hình 21: M6 hình DeejDC@fFd 5 St S*S‡eEEverererekerrserrerrerrrrre DO

Hình 22: M6 hình MAPAS đề xuất của nhóm tác giả ccccccccccev 39

Hình 23: Mô hình Bayesian của tac giả cScSc St Skk+k++tEkkekkkeskkisekkekerree 39

Hình 24: Tổng quan về thiết kế của MADS -2255:525sc22cxccccxersrxersrreeerrvee 40

Hi 010/00/78 0Nnnn8Ẻ8Ẻ88 41

Hình 26: M6 hình hệ thống của công cụ AndroPyTool - ccc:©cccscczcc2 45

Hình 27: Hàm duyệt lấy tên đanh sách thư vIiỆn ¿+ 5+ +++s+s+ssesvxeersesssez 47

Trang 8

Hình 28: Hàm trích xuất dữ liệu thư viện .2 2¿¿2222+z++22vvvzesrrrxeeerrr 47

Hình 29: Hàm code thực hiện chọn lọc đặc trưng . ¿- 5 +5 ++++xecse 48

Hình 30: Giải pháp dé xuất phát hiện APK là độc hại hay lành tính - 48 Hình 31: Bộ dit liệu đã chuẩn hóa hoàn tắt eccccccccccceerrrrrrrrrrrrrrrre 49 Hình 32: Mô hình tổng thể hệ thong dé xuất - 22252c52csccscccvvccscrvseerrr 50

Hình 33: CFM mô hình RF Nomalize c5 SeSSE‡k‡EeEEkeketekerkrkrkererrre 55 Hình 34: CFM mô hình LR NoinidÌÏiZ6 - 5-5555 SeS*‡E‡tsreetrkekerererrrrterrrsee 56

Hình 35: CFM mô hình KNN Nomalize «c5 ScSxtétererkreketrrerrkekererre 57

Hình 36: CFM mô hình DT Nomalize 5-5 5< 5S S*Sk‡‡k‡EkEkEkekEErkrrkrkekererre 58 Hình 37: CFM mô hình SVM NOimiÏiZ€ - 5-5-5555 E‡S‡E‡E+v+EeEekerrkrkererre 59

Hình 38: CFM mô hình MLP Nomalize 55-5-5552 5+2++ccce+erereeesrersre 60

Hình 39: Độ chính xác và Loss qua từng EpCho -c-+ccccsccccscceeercer 61

Hinh 40: Dé thi ROC cua tập đữ liệu CIC-MalDroid2020 55+ <+55c>+ 64 Hình 41: Điển F1 tập dữ liệu CIC-MalDroid2020 sau khi huấn luyện 65

Trang 9

DANH MỤC BANG BIEU

Bang 1: Cau hình máy rút trích đặc trunng - 55-5 cc+cs+cccEczterkerkerkerkererree 51Bang 2: Ý nghĩa các biến số trong CF M 2+ ©c+Sk+E+E+EEESEEEEEerEerkerkersrree 52Bang 3: Thông số đánh giá huấn luyện bằng RF ©555cccccceccrcerkerecres 55

Bang 4: Thông số đánh giá huấn luyện LR vecescescessesssessessesseesessesseessessesseesesssesseeseees 56

Bang 5: Thông số đánh giá huấn luyện băng KNN -2c©cccccccccsrrrssree 57

Bang 6: Kết quá đánh giá huấn luyện bằng DT 5-52 5c<+cccceceesrsreerecres 58

Bang 7: Kết quả đánh giá huấn luyện bằng SVM - 2 2©52+se+ee£te£erersscez 59Bang 8: Két quả đánh giá huấn luyện bằng ANN 555 Scccccckerererrree 60Bảng 9: Giá trị trung bình kết quả huấn luyện các mô hình với dữ liệu CIC-

Bang 10: Bang kết quả so sánh với ba bộ dữ liệu veesceecescescescescsseesseseesessesseesesseesesseess 62

Trang 10

Recurrent Neural Network

Support Vector Machine

Convolutional Neural Network

Application Programming Interface

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

10

Trang 11

TÓM TAT LUẬN VĂN

Phần mềm độc hại (malware) đang trở thành một trong những mối đe doa

lớn nhất đối với bảo mật trên Internet Sự phát triển nhanh như vũ bão của

malware và việc chúng ngày càng trở nên tinh vi làm cho việc phát hiện va

ngăn chặn chúng trở nên cực kỳ khó khăn Ngày nay, mã độc phát triển ngày trở nên tinh vi băng cách ân bản thân với các kỹ thuật mã hóa, nên phát hiện ra PMDH là rất khó khăn và cực ky thử thách Ngoài ra, sự gia tăng nhanh chóng của nhiều loại phần mềm mã độc với nhiều thé loại tiếp tục là nguyên nhân của

việc xác định và phát hiện chúng.

Ở bài cáo này, chúng tôi thu thập đữ liệu bằng cách trích xuất đặc trưng của tập tin APK, sau đó chọn lọc đặc trưng, phát hiện và phân loại mã độc băng

giải thuật học máy như SVM, RF, LR, KNN va DT được sử dụng Kết quả thực

nghiệm dé đánh giá hiệu quả của thuật toán với các độ đo FI, Precision va

Recall.

11

Trang 12

Chương 1

GIỚI THIỆU

Nội dung tóm tắt trong chương này bao gồm xu hướng di động thông minh, rủi ro

nhắm đến người dùng sử dụng các thiết bị di động thông mình chạy AndroidOS.Chương này cũng giới thiệu kiến trúc AndroidOS, trình bày các loại mã độc và mộtvài phương pháp phân tích mã độc Qua đó, mô tả đối tượng, mục tiêu và cách tiễn

hành, hướng tiếp cận nghiên cứu của đề tài

1.1 Xu hướng di động thông minh

Điện thoại di động thông minh là một công cụ không thé thiếu trong cuộc sống hiệnđại Với khả năng kết nối internet, chụp ảnh, gọi điện, nhắn tin và hàng loạt các tác

vụ khác Cùng với sự phát triển của công nghệ, smartphone ngày càng xử lý nhanh

và mạnh mẽ, mang đến cho con người nhiều tiện ích, thay đối nhiều thói quen giải trí

và làm việc từ xa.

Trong số các hệ điều hảnh điện thoại di động thông minh, Android được coi

là một hệ điều hành di động phô biến nhất và mạnh mẽ Android được coi là hệ điềuhành di động nổi tiếng nhất AndroidOS được Google phát triển, cung cấp một giaodiện dễ sử dụng, đa dạng ứng dụng và tính năng linh hoạt Android là một hệ điềuhành mở được thiết kế dành cho điện thoại di động thông minh, máy tính bảng vàthiết bị di động có màn hình cảm ứng Do khả năng tùy biến cao và mã nguồn mở,

Android được nhiều nhà sản xuất sử dụng Thiết bị di động chiếm 71,44% thị phần

của hệ điều hành di động quý 01/2023

Với Android, người dùng có thể truy cập vào kho ứng dụng từ Google Play

Store, từ các ứng dụng xã hội, trò chơi, ứng dụng học tập đến công cụ làm việc và

quản lý tài chính Sự phổ biến của Android là nền tảng thuận lợi cho các ứng dụngđộc hại như lừa đảo, phần mềm gián điệp và phần mềm khai thác lỗ hồng hoặc thư

rác.

12

Trang 13

.Ø ORO OOM CRN O DOIN ^ 28.ở 2Ð ð 2ð ở 2Ð ở 2ồ ở ở ở 2ð 2ö 29 ở ở ở

“® Android =@® iOS Samsung =@ Windows Phone

=@ Symbian OS* =@ Series 40 (Nokia)* =@®= BlackBerry OS »@ Unknown / Other

Hình 1: Thống kê thị phan hệ điều hành di động đến quý 01/2023!

Vào năm 2020, tông cộng hơn 43.000.000 PMĐH trên thiết bị di động đã được phát

hiện Chỉ trong quý 4 năm 2020, đã có hơn 3.200.000 PMĐH mới (Mcafee, 2021).

Đây là một tín hiệu bao động VỀ sự bùng phát của mã độc, chính vì điều đó cần phải

có cách thức tìm ra mã độc chưa biết trước đó một cách nhanh chóng và hiệu quả

Có một số cách khác nhau đề phát hiện malware trên thiết bị Android Trong

bài báo cáo nghiên cứu, chúng tôi đưa ra trình bày cách phát hiện PMDH dựa trên

việc phân tích các quyên, lời gọi hàm và danh sách thư viện Phương pháp này giảinén tệp APK và giải mã nó dé trích xuất các quyền, lời gọi hàm và danh sách thư

viện Sau đó, chúng tôi dùng mô hình học máy phân loại tệp APK dựa trên các đặc

trưng thu được.

Trên Android, các tập tin cai đặt được triển khai dưới dang gói công cụ APK

(Android Package Kit), các tập tin được đóng gói dựa trên định dạng nén ZIP truyềnthống nên việc chỉnh sửa và đóng gói lại tập tin tương đối dễ dàng Thiết bị phải luôn

đối mặt với nguy cơ nhiễm mã độc và các lỗ hồng khác Các ứng dụng thường đượcchỉnh sửa, chèn quảng cáo và sau đó đóng gói lại để hưởng doanh thu quảng cáo,

tương tự như việc chèn quảng cáo xấu Kẻ xấu có thé thêm mã độc dé lấy thông tin

nhạy cảm hoặc gây nhiều tác hại đến thiết bị mà người dùng chúng không hè hay biết

'

https://www.statista.com/statistics/272698/global-market-share-held-by-mobile-operating-systems-since-13

Trang 14

Phương pháp phân tích phần mềm được chia thành ba cách Phương thức độngcần thực thi chương trình và kiểm tra kết quả sau đó, phương pháp tĩnh cần phân tích

mã nguồn, xác định dựa trên kỹ năng của người phân tích và phương pháp còn lại thì

gộp cả hai cách trên.

1.2 Cấu trúc AndroidOS

Cấu trúc Android (AndroidOS) là một phần quan trọng trong việc xây dựng và hoạt

động của hệ điêu hành Nó là cơ sở đê quản lý tài nguyên và cung câp các dịch vụ

cho ứng dụng và người dùng AndroidOS sử dụng kiến trúc "Linux kernel-based",

điêu này có nghĩa răng nên tảng Android được tạo ra dựa trên nhân Linux, cung câp

khả năng đa nhiệm, bảo mật và hiệu suât cao Câu trúc của AndroidOS gôm các thành

phân sau:

Kernel (Nhân): Chính là trung tâm của AndroidOS Kernel quản lý tác vụ như

quan lý tài nguyên phần cứng, bộ nhớ, trao đồi thông tin với phan cứng và xử

lý thông tin yêu cầu từ các ứng dụng

Libraries (Bộ thư viện): AndroidOS cung cấp thư viện liên quan các chức năng

và tiện ích Các thư viện này bao gồm các chức năng liên quan đến đồ họa,mang, âm thanh, xử lý hình ảnh Các nhà phát triển có thé sử dụng các thưviện này dé tăng cường kha năng và tính năng của ứng dụng

Runtime (Thực thị): Android sử dụng môi trường thực thi gọi là Android

Runtime (ART) ART chuyên đôi mã nguồn Java thành mã máy tương ứng déchạy ứng dụng trên thiết bị ART cũng hỗ trợ các tính năng như quản lý bộnhớ, xử lý tương đồng và tối ưu hóa hiệu suất

Framework (Khung ứng dung): Android Framework là tập hợp các lớp va giao

diện lập trình ứng dụng (API) dé xây dựng các ứng dung Android Framework

cung cấp các chức năng như xử lý sự kiện, các giao diện người dùng, quản lýtài nguyên, truy cập vào dịch vụ hệ thống và nhiều tính năng khác

Applications (Ứng dụng): Giao diện người dùng tương tác trực tiếp Các ứng

dụng này có thể bao gồm ứng dụng có sẵn (như ứng dụng thoại, ứng dụng hỗtrợ nhắn tin, email) và các ứng dụng bên thứ ba (như trò chơi, ứng dụng xử lý

chuyên ngành ) Các ứng dụng này tận dụng các tính năng và khả năng của

14

Trang 15

AndroidOS hỗ trợ người dùng đa dạng và phong phú.

Activity Location Package

View System Resource Telephony

Android Runtime

OpenMAX AL Android Runtime (ART

Media Framework OpenGL ES

Các thành phần trên giao tiếp với nhau dé tạo nên một hệ thong hoạt động linh hoạt

và mạnh mẽ trên thiết bị Android

Thành phần của một tập tin ứng dụng Android (APK) bao gồm:

e_ Tập tin mã nguồn (code files): Day là phần chứa mã nguồn được viết bằng

? https://developer.android.com/guide/platform

15

Trang 16

ngôn ngữ lập trình Java hoặc Kotlin Tệp mã nguồn này bao gồm các lớp,phương thức và tài nguyên khác cần để xây dựng và chạy được ứng dụng.

Tập tin tài nguyên (resource files): Tệp tài nguyên chứa các tải nguyên như

hình anh, âm thanh, video, văn bản Các tài nguyên này được dùng dé hiểnthị giao diện ứng dụng và cung cấp các tài nguyên hỗ trợ khác cho ứng dụng.Tập tin Manifest: Day là tệp XML chứa thông tin câu hình và quyền của ứngdụng Tệp Manifest cung cấp thông tin liên quan ứng dụng như tên ứng dụng,phiên bản, quyền truy cập hệ thống, thành phan chính (như hoạt động, dich vụ,giao diện người dùng), và các cấu hình khác Tệp Manifest giúp AndroidOShiểu và quản lý ứng dụng

Tập tin cau hình (configuration files): Các tệp cấu hình lưu thông tin câu hình

và tùy chỉnh của ứng dụng, bao gồm các thông số kỹ thuật, tùy chọn, cài đặtmạng và các câu hình khác Các tệp cấu hình này giúp ứng dụng hoạt độngđúng cách trên các thiết bị và môi trường khác nhau

Tập thư viện (library files): Các tệp chứa mã nguồn được viết trước và có théđược sử dụng lại trong nhiều ứng dụng khác nhau Thư viện giúp chúng tagiảm thiểu thời gian và công sức đề phát triển chức năng mới bang cách cungcấp chức năng sẵn có mà không cần phải viết lại từ đầu

Tập tin khác: Ngoài các thành phần chính đã đề cập, một tập tin APK còn cóthể chứa các tệp khác như tệp dữ liệu, tệp cau hình hệ thống hoặc các tệp khácliên quan đến ứng dụng

16

Trang 17

YÝ App example

Hinh 3: Thanh phan tập tin APK?

Tất cả các thành phan này đóng vai trò quan trọng trong việc cai đặt, xây dựng va

chạy các ứng dụng Các tập tin APK kết hợp các thành phần này thành một gói ứng

dụng.

1.3 Nguy cơ mã độc tan công

Mã độc Android là một loại PMĐH được thiết kế đặc biệt dé tan công và xâmnhập vào các thiết bị chạy AndroidOS Nó có khả năng thực hiện các hoạt động độchại mà người dùng không biết và không đồng ý Mã độc Android thường được pháttán qua những ứng dụng giả mạo, các trang web độc hại, tin nhắn hoặc email lừa đảo

Khi người dùng cài đặt ứng dụng hoặc tương tác với nội dung độc hại, mã độc sẽ tiễn

3

https://www.appdome.com/how-to/devsecops-automation-mobile-cicd/appdome-basics/structure-of-an-android-app-binary-apk

17

Trang 18

hành khai thác lỗ hồng trong hệ thống để xâm nhập vào thiết bị Mã độc Android hoạt

động đa dạng:

e Trộm thông tin cá nhân: Mã độc có thé âm thầm thu thập thông tin nhạy cảm

như mật khẩu, danh bạ, tài khoản giao dịch ngân hàng, tin nhắn, thông tin thẻ

tín dụng, cuộc gọi và vị trí GPS của người dùng.

e Hiển thị các quảng cáo mà người dùng không mong muốn: Mã độc có thé hiền

thị quảng cáo liên tục và gây phiền toái cho người dùng Quảng cáo này có thể

xuất hiện trong các ứng dụng, trình duyệt hoặc màn hình chính của thiết bị

e Gay hại hệ thống: Mã độc có thê làm chậm hoạt động của thiết bị, tiêu tốn tài

nguyên hệ thống, gây sự cố hoặc treo may

e Lây nhiễm và lây lan: Mã độc có khả năng lây nhiễm sang các thiết bị khác

thông qua kết nối mạng, Bluetooth, thẻ SD hoặc email Nó có thể tạo ra hàng

loạt các thiết bị đã nhiễm và thực hiện các hoạt động độc hại trên quy mô lớn

e Kiểm soát từ xa: Mã độc có thé cho phép kẻ tan công từ xa kiểm soát và điều

khiến thiết bị của người dung, gửi và nhận các lệnh từ xa mà không được sự

Trang 19

Hình 4: Thống kê mã độc được phát hiện, Q2 2022-02 20234

Dé bảo vệ thiết bị Android khỏi mã độc, người dùng nên cập nhật hệ điều hành

và bản vá lỗi ứng dụng thường xuyên, cài đặt các ứng dụng từ những nguồn tin cậy,thường xuyên diệt virus và chú ý đến các thông báo bảo mật và quyền truy cập ứng

dụng.

1.4 Phân loại mã độc Android

Mã độc Android được phân loại dựa trên tính năng của chúng và hoạt động của chúng.

Dưới đây là một số phân loại phô biến của mã độc Android:

Worms: Có khả năng sao chép và gửi tập tin sang thiết bị khác, worm trên thiết

bị Android thường được gửi qua tin nhắn văn bản SMS / MMS và thường không

cần người dùng can thiệp mà tự động thực thi

Trojan: Là loại mã độc giả mạo thành các ứng dụng hợp pháp hoặc đính kèm vào

các ứng dụng khác Một khi được cài đặt, TroJan thường thực hiện hoạt động độc

hại mà người sử dụng thiết bị không biết

Spyware: Là loại mã độc giám sát và thu thập thông tin cá nhân của người dùng

một cách trái phép, gồm các thông tin như tin nhắn, cuộc gọt, vị tri GPS, danh ba

va thông tin tài khoản ngân hang.

Ransomware: Là loại mã độc có khả năng mã hóa dt liệu trên thiết bị của ngườidùng và yêu cầu một khoản tiền chuộc dé giải mã Ransomware gây ra sự matđiều khiển đối với người dùng và có thé gây thiệt hại nghiêm trọng cho dit liệu cá

nhân và doanh nghiệp.

Adware: Là loại mã độc được thiết kế cho phép hiên thị quảng cáo trên thiết bi

của người dùng Adware thường làm giảm trải nghiệm sử dụng và gây khó chịu

cho người dùng bằng cách hiền thị quảng cáo liên tục và không mong muốn

Phishing: Là loại mã độc hoặc các trang web giả mạo được thiết kế nhằm lừa đảongười dùng lay cá nhân nhạy cảm, ví dụ như tên đăng nhập, mật khẩu, thông tin

tài khoản ngân hàng.

* https://securelist.com/it-threat-evolution-q 1-2023-mobile-statistics/109893/

19

Trang 20

e Rootkit: Là loại mã độc có khả năng chiếm quyền kiểm soát toàn bộ hệ thống

Android và ân đi sự tồn tại của nó Rootkit thường khó phát hiện và loại bỏ, và có

thê cho phép tin tặc có quyền truy cập và kiểm soát thiết bị từ xa

kaspersky

Hình 5: Thong kê phan mềm độc hại phát hiện theo loại, Q4 2022 va Q1 2023

Dé bảo vệ thiết bi Android khỏi mã độc, người dùng nên cập nhật hệ điều hành vaứng dụng thường xuyên, cài đặt các ứng dụng từ các nguồn đáng tin cậy, sử dụng

phần mềm diệt virus và chú ý đến các thông báo bảo mật và quyên truy cập của ứng

dụng.

1.5 Cách tiếp cận nghiên cứu của đề tài

1.5.1 Đặt vấn đề

e Phần mềm độc hại thường sử dụng các chiến thuật ngụy trang dé che giấu bản

chất thực sự của chúng và tránh bị phát hiện Mã độc có thể được nhúng vàotrong các ứng dụng giả mạo hoặc ngụy trang thành ứng dụng hữu ích và phố

Š https://securelist.com/it-threat-evolution-q 1-2023-mobile-statistics/109893/

20

Trang 21

biến để người dùng tải về Mã độc có thể được thiết kế dé phát hiện khi nó

đang chạy trên môi trường kiêm thử hoặc trong quá trình phân tích động Phầnmềm độc hại thường tập trung vào việc gây tôn that tài chính, đánh cắp thôngtin cá nhân, hoặc thậm chí kiểm soát và tận dụng các thiết bị mà chúng xâm

nhập.

Việc phân tích mã độc từ mã nguồn bằng phương pháp thủ công có thé rất khóđối với đa số người dùng, đặc biệt là những người không có kinh nghiệmchuyên sâu về bảo mật và lập trình, việc này có thé là một thách thức đặc biệt.Người dùng cần công cụ phát hiện, cảnh báo phần mềm độc hại Công cụ phải

mạnh mẽ và nhẹ nhàng, thực hiện phân loại các tập tin trước khi chúng được

cài đặt Công cụ cần phải có hiệu suất tốt mà không làm giảm tốc độ hoạt động

của hệ thống quá mức Điều này đặc biệt quan trọng dé đảm bao trải nghiệmngười dùng không bi ảnh hưởng đáng ké Việc phân loại tập tin trước khichúng được cài đặt là một bước quan trọng dé ngăn chan người dùng từ việctải về và cài đặt các tập n có khả năng chứa mã độc Công cụ nên tích hợpcác công nghệ bảo mật hiện đại như máy học để có khả năng phát hiện vàphòng ngừa mối đe đọa phức tạp

1.5.2 Phát biểu bài toán cần giải quyết

Từ những vấn đề trên đặt bài toán cần giải quyết: Phân loại mã độc Android từ

tập tin cài đặt (APK) sử dụng mô hình học máy.

Đầu vào: Tập tin cài đặt ứng dụng Android (APK)

Đầu ra: Kết quả tập tin thuộc về loại nào (mã độc hay lành tính)

Ràng buộc đữ liệu: Các đặc tính được trích xuất từ tập tin cai đặt: quyền, lời

gọi hàm và thư viện, vector đầu vào dưới dạng tập CSV Các mã độc được

phân thuộc một loại duy nhất.

Trong phạm vi bài nghiên cứu này, chúng tôi đưa ra giải pháp dùng học máy phân

loại phần mềm dựa trên trích xuất dữ liệu quyên, lời gọi hàm và thư viện Sau khi

nghiên cứu va phân tích sâu vê các trích xuat dtr liệu trên, luận văn sẽ giúp hiêu rõ

hơn về các loại mã độc Android, nghiên cứu và tìm hiêu các mô hình phát hiện mã

21

Trang 22

độc thông qua quyên, lời gọi hàm và thư viện Sau đó kiểm thử với các mô hình LR,

RF, SVM, KNN, MLP, DT.

1.6 Tinh mới của của luận văn

Luận văn áp dụng học máy và học sâu vào nghiên cứu phân loại mã độc Androd,

dé xuất phương pháp lay dữ liệu từ các tập tin ứng dụng APK mã độc và lành tính,

kế thừa công cụ AndroPyTool rút trích dữ liệu quyền và lời gọi hàm, kết hợp thực

hiện code python để rút trích đặc trưng thư viện dùng cho các mô hình huấn luyện

Logistic Regression, Random Forest, Support Vector Machine, K-Nearest

Neighbors, Multi-layer Perceptron, Decision Tree dé phân loại mã độc.

Luận văn này tập trung vào việc phan loại các mẫu mã độc loại mã độc, điều này

là rất quan trọng đo tính linh hoạt và thay đổi của các mẫu mã độc Mặc dù chúng

có thê thay déi dé tránh bị phát hiện, nhưng những đặc tính về quyên, lời gọi hàm

và thư viện mà phần mềm sử dụng mang đặc tinh chung, ít thay đồi, việc này giúp

nâng cao khả năng phát hiện và phân loại hiệu quả, đặc biệt là khi mẫu mã độc có

sự biên đôi.

22

Trang 23

Chương 2

LÝ THUYÉT HỌC MAY, MOT SO BÀI BAO NGHIÊN CỨU VÀ

CÔNG TRÌNH LIÊN QUAN

Nội dung tóm tắt trong chương này bao gồm giới thiệu về học máy, thuật toán ápdụng vào phân loại mã độc Android Một số bài báo liên quan cũng được trình bày

trong chương này.

2.1 Lý thuyết học máy

Quy trình học máy thường gồm các giai đoạn:

Thu thập đặc trưng từ nguồn: Thu thập những dữ liệu có khả năng liên quanđến vấn dé cần giải quyết Dữ liệu có thé được thu thập từ nguồn bên ngoài

hoặc từ dữ liệu có sẵn.

Thực hiện xử lý bộ dữ liệu đầu vào trước khi thực hiện huấn luyện: Ban đầu

dữ liệu trích xuất được thường không hoàn hảo, cần phải được xử lý trước.

Bước này cần thực hiện việc loại bỏ dữ liệu thiếu thông tin, gây nhiễu, và mã

hóa các đặc trưng.

Tạo mô hình huấn luyện: Chọn mô hình giải quyết phù hợp một van đề, CNN,

DT hoặc các mô hình nào đó tùy thuộc vào vấn đề cụ thể Lựa chọn mô hình

cũng phụ thuộc vào kích thước của dữ liệu, tính đa dạng của đặc trưng, va

nhiều yếu tô khác Thường thì việc thử nghiệm và so sánh nhiều mô hình nhằmxác định cái tốt nhất cho vấn đề của chúng ta là cách tiếp cận giải quyết vần

đề tốt nhất

Mô hình sử dụng dữ liệu huấn luyện được xử lý trước, tiếp theo thực hiện huấn

luyện, mô hình học và tìm hiểu các mối quan hệ của dữ liệu.

Đánh giá mô hình: Sử dụng dữ liệu kiểm tra hoặc dữ liệu chưa được nhìn thấytrước đó dé đánh giá độ hiệu qua làm việc của mô hình Độ đo phô biến bao

gồm đường cong ROC, độ chính xác, F1-score va recall

Tinh chỉnh mô hình: Dựa vào kết quả đánh giá, điều chỉnh mô hình đề tănghiệu suất Điều chỉnh có thể bao gồm thay đôi tham số, đặc trưng hoặc kiến

trúc mô hình.

23

Trang 24

e_ Mô hình được chỉnh sửa, khi đã đạt được hiệu suất mong muốn, sau đó thực

hiện trong môi trường thực tế, sử dụng trong các ứng dụng thực tế

© Quy trình học máy có thé lặp đi lặp lại nhiều lần dé cải thiện mô hình và hiệu

suất dự đoán

2.2 Trí thông minh nhân tạo

Trí tuệ nhân tạo (AI) là lĩnh vực nghiên cứu, phát triển công nghệ có khả năng mô phỏng, mô hình hóa và tái tạo trí tuệ con người qua các hệ thống thiết bị máy móc.

Mục tiêu là tạo ra những công cụ thực hiện các công việc của con người một cách

thông minh.

2.2.1 Học máy HGS

HGS (SL) là một phương pháp trong lĩnh vực hoc máy, giải thuật được huấn luyện

từ tập dữ liệu đầu vào có gan nhan(labeled data) Trong lĩnh vực HGS, thông tin đầu

ra mong muốn cho tung mau đữ liệu va mục tiêu là tạo ra một mô hình hoặc hàm giảthuyết (hypothesis) nhăm dự đoán đầu ra khi có mẫu dữ liệu mới

Quá trình huấn luyện trong lĩnh vực HGS bao gồm việc tìm kiếm, điều chỉnhcác tham số cho phù hợp, sao cho kết quả dự đoán của mô hình gần với thực tế Cácthuật toán phổ biến trong HGS bao gồm giải thuật hồi quy tuyến tinh(linear

regression) và giải thuật phân loại (classification).

Vi dụ, lĩnh vực HGS dùng một tập dữ liệu dùng huấn luyện gồm các email đượcgán nhãn "spam" hoặc "không spam" dé phân loại email vào hai loại: "spam" và

"không spam" Thuật toán sẽ tạo mô hình đủ khả năng phân loại các email mới vào

các lớp tương ứng bang cách học từ những đặc điểm mỗi email như địa chỉ nguồn, từkhóa, độ dài, địa chỉ đến

HGS đòi hỏi tập dữ liệu dé huấn luyện mô hình có nhãn và quá trình thực hiệnhuấn luyện dựa trên việc so sánh nhãn dự đoán và nhãn thực tế Tuy nhiên, HGS có

thê đối mặt với các thách thức như overfitting (quá khớp) hoặc bias (thiên hướng) khi

mô hình không đủ phức tạp hoặc quá phức tap so với dir liệu.

2.2.2 Học máy HKGS

HKGS (USL) là một phương pháp trong lĩnh vực học máy, trong đó thuật toán được

huấn luyện từ một tập dữ liệu đầu vào không có nhãn (unlabeled data) Trong HKGS,

24

Trang 25

chúng ta không có thông tin đầu ra mong muốn và mục tiêu là khám phá cấu trúc, môhình hoặc các mẫu ân trong tập dữ liệu.

Quá trình huấn luyện trong HKGS liên quan đến việc tìm kiếm sự tương tự

hoặc sự khác biệt giữa các mau dé liệu, phan nhóm các mẫu đữ liệu tương đồng, hoặc

khám phá các thuộc tính và mỗi quan hệ trong dữ liệu mà không có sự hướng dẫn từnhãn Các giải thuật phô biến trong HKGS bao gồm phân cum (clustering), phân phối(density estimation), và giảm chiều dữ liệu (dimensionality reduction)

Bài toán phân cum dữ liệu, HKGS sé sử dung các thuật toán như K-means

hoặc DBSCAN dé phân nhóm các mẫu dữ liệu dựa vào sự tương đồng giữa chúng.Mục tiêu là tìm ra các nhóm tự nhiên hoặc cụm trong tập dữ liệu mà không cần biết

trước nhãn của từng mẫu.

HKGS có thé làm việc với các dạng dữ liệu không cấu trúc, không có sự chuan

bị trước và không yêu cầu nhãn Tuy nhiên, việc đánh giá và đạt được sự chính xáctrong HKGS thường khó hơn so với lĩnh vực HGS, vì không có sự so sánh trực tiếp

với nhãn.

2.2.3 Học máy HBGS

HBGS (SSL) là cách kết hợp lĩnh vực HGS và lĩnh vực HKGS trong học máy TrongHBGS, chúng ta gán nhãn đữ liệu một phần nhỏ(labeled data) và

không được gán nhãn (unlabeled data).

Mục tiêu của HBGS là dùng cả dữ liệu được gan nhãn và không được gan nhãn

dé phat triển mô hình học va dự đoán nhãn cho mẫu dé liệu chưa được gán nhãn.HBGS giúp cải thiện kết quả dự đoán của mô hình và độ chính xác của mô hình bằng

mô hình phân loại rác thư điện tử.

25

Trang 26

2.3 Một số giải thuật máy học

2.3.1 Giải thuật hồi quy logistic

Phương pháp Hồi quy Logistic (LR) là giải thuật thuộc máy học dùng chủ yếu thựchiện phân loại LR được dùng khi ta muốn tìm xác suất của một mẫu nào đó bat kỳthuộc vào nhóm nhất định nào đó trong các nhóm phân loại có sẵn Nó thích hợp chogiải quyết van đề thuộc phân loại kiểu nhị phân hoặc đa nhãn (có nhiều hơn hai nhãn)

Trong thuật toán LR, hàm logistic (sigmoid) biểu diễn xác suất của một mẫu

thuộc vao nhóm dương (1) hoặc nhóm âm (0) dựa trên các đặc trưng đầu vào Hàmsigmoid đưa ra kết quả nằm trong khoảng (0 ; 1), trong đó 0.5 được chọn làm ngưỡng

để phân loại

LR tìm kiếm các tham số tối ưu (hệ số và chặn) cho dữ liệu huấn luyện là mộtphan của quá trình huấn luyện LR Dé làm điều này, thuật toán sử dụng phương phápgradient descent để thay đổi các tham số dựa trên độ lỗi (loss) giữa nhãn thực tế và

nhãn dự đoán.

Cuối cùng, mô hình cũng đã được huấn luyện hoàn tat, chúng ta có thé dùng

dự đoán nhãn cho mẫu mới dựa trên xác suất đầu ra đạt được Hiệu suất, độ chính xácđược đánh giá qua những thông số như độ phân loại, F1-score, độ chính xác, độ phủ

Phương pháp Hồi quy Logistic là một phương pháp tương đồi phô biến và rất mạnh

mẽ trong Machine Learning, ứng dụng nhiều trong giải quyết vẫn đề như phân loạiemail, phát hiện bệnh, dự đoán khách hàng tiềm năng v.v

26

Trang 27

2.3.2 Giải thuật k-NN

Giải thuật k-NN là giải thuật máy học giám sát, dùng nhiều trong lĩnh vực dự đoáncũng như phân loại Cơ bản, thuật toán KNN làm việc bằng cách xác định khoảngcách các điểm dữ liệu mới và các điểm dữ liệu đã được huấn luyện KNN lựa chọn K

vị trí dữ liệu gần nhất với vị trí di liệu mới dựa trên khoảng cách và sau đó sử dụng

đa số (majority voting) từ K điểm gần nhất đó dé xác định nhãn gan cho điểm dữ liệu

mới.

KNN được dùng ở nhiều lĩnh vực như hệ thống gợi ý, phân các loại văn bản,

và phân tích nhận dạng hình ảnh Nó là một giải thuật đơn giản và hữu ích trong

Machine Learning.

Việc phân loại email là thư rác (spam) hoặc không đúng thư rác (non-spam)

dựa trên nội dung của email Phân loại email là thư rác hoặc không phải thu rác dựa

trên nội dung của email Bộ dữ liệu email có các mẫu email đã gán nhãn là spam hoặc

non-spam Mỗi mẫu email được thể hiện bằng một vector đặc trưng, mỗi phần tử

tương ứng với một từ trong email và giá trị là sô lân xuât hiện của nó trong email.

Trang 28

2.3.3 Giải thuật SVM

Giải thuật SVM(Support Vector Machine) là một giải thuật học máy dùng cho

giải quyết các van đề liên quan đến hôi quy và liên quan phân loại Giải thuật SVM

xử lý dữ liệu tương đối mạnh, cả dữ liệu tuyến tính và dữ liệu phi tuyến tính, và nồibật với khả năng xác định đường ranh giới để phân chia điểm dữ liệu vào lớp khác

nhau.

Giả sử, chúng ta có tập dữ liệu gồm những điểm dữ liệu hai chiều, chúng thuộc

vào hai lớp hoàn toàn khác nhau: lớp A (màu xanh) và lớp B (màu đỏ) Chúng ta

muốn tạo mô hình SVM dé phân loại các điểm dit liệu mới vào đúng lớp tương ứng

Hình 8: Mội mô ta ví dụ mô hình SVM

Đường ranh giới chia không gian thành hai vùng: vùng A và vùng B Các điểm

dữ liệu nằm sát ranh giới được gọi là vector hỗ trợ (support vectors), và chúng quyết

định vị trí và hình dạng của đường ranh giới Sau khi xây dựng mô hình SVM, chúng

ta dùng đường ranh giới này nhằm dự đoán lớp của các điểm dữ liệu mới Nếu mộtđiểm dữ liệu mới nằm trên vùng A của đường ranh giới, nó sẽ được phân loại vào lớp

A, và ngược lại SVM có một số ưu điểm quan trọng:

VY Hiệu suất cao trong việc xử lý các van dé phân loại phi tuyến tính và tuyến tính

Y Tinh tổng quát và khả năng tự động xác định đường ranh giới tối ưu

* Khả năng xử lý dit liệu số chiều lớn

2.3.4 Thuật toán DT

Cây quyết định (DT) là một cấu trúc dạng cây sử dụng trong machine learning và

data mining nhằm thực hiện phân loại và dự đoán dữ liệu Các nút trong cây truong

28

Trang 29

trưng cho các quyết định hay thuộc tính, các cạnh kết nối các nút va đại diện cho các

quy tắc quyết định

Quá trình tạo ra cây quyết định đi từ nút sốc, sau đó tại một nút, mỗi thuộc

tính được chọn lựa dựa vào tiêu chí như độ đo thông tin (information gain) hoặc độ

do Gini (Gini index) dé tao ra các nhánh con Quá trình cứ được tiếp tục thực hiệncho đến khi chạm đến điều kiện dừng Mỗi nút lá trong cây tượng trưng một giá trị

dự đoán hoặc cho một lớp Cây quyết định được dùng phân loại dữ liệu mới bằng

cách duyệt qua các quyết định từ gốc đến các nút lá

Giải thuật DT dùng nhiều trong giải quyết van dé phân loại dữ liệu có cau trúc

và các thuộc tính rời rạc hoặc liên tục Ngoài ra, cây quyết định được mở rộng xử lýbài toán dự đoán giá trị số (regression) Điều này được thực hiện bang cách dùng kỹthuật như cây hồi quy (regression tree) hoặc các biến thé của thuật toán cây quyết

định như Random Forest.

cao / eae binh manh / nhe

No Yes No’ Yes

Hình 9: Một hình anh minh hoa ví du về mô hình DT’

2.3.5 Thuật toán RE

Giải thuật Rừng ngẫu nhiên (RF) là giải thuật được sử dụng dé dự đoán hoặc phân

loại dựa trên một tập dữ liệu đầu vào RF hoạt động theo cách xây dựng tập hợp các

cây độc lập Một cây trong RF được tạo bằng cách chọn một tập con của dữ liệu đầu

vào.

7 https://trituenhantao.io/kien-thuc/thuat-toan-machine-learning-ma-lap-trinh-vien-nen-biet/

29

Trang 30

Khi một dữ liệu mới cần dự đoán, RF sẽ thực hiện bằng cách cho dữ liệu điqua từng cây trong tập hợp Một cây đưa ra một kết quả riêng và kết quả dự đoán cuốicùng sẽ được áp dụng phương pháp voting (bỏ phiếu) Cụ thể, kết quả sẽ là giá trịđược bỏ phiếu nhiều nhất trong các cây.

RE có nhiều ưu điểm, khả năng vận hành xử lý bộ dữ liệu cực lớn, khả năng

xử lý các thuộc tính rời rạc và liên tục, khả năng xử lý nhiễu và khả năng đánh giá độ

quan trọng của bộ thuộc tính Ngoài ra, RF giúp giảm thiểu hiện tượng (quá khớp)

mà thường xảy ra trong các cây quyết định đơn lẻ RF được dùng trong các lĩnh vực,

bao gôm phân loại email rác, dự đoán giá cô phiêu và nhiêu vân đê khác.

Training Training Training

2.3.6 Giải thuật Mạng Nơ-ron

Giải thuật mạng nơ-ron (ANN) là một giải thuật máy học lay cảm hứng từ cách tương

tự mà hệ thần kinh con người hoạt động ANN bao gồm một mạng các "no-ron" nhântạo được tô chức thành các lớp, và thông tin chuyên qua từng lớp thông qua trọng sốliên kết giữa các nơ-ron ANN dùng rộng rãi trong lĩnh vực trí tuệ nhân tạo AI, ứng

Trang 31

vào chứa các pixel của hình ảnh, các lớp an (hidden layers) giữa và lớp đầu ra với 10

nơ-ron (mỗi nơ-ron trượng trưng một chữ số trong khoảng từ 0 đến 9) Dùng tập dữliệu lớn gồm các hình ảnh và nhãn có số đúng, huấn luyện mạng ANN sao cho nó họccách ánh xạ từ hình ảnh đầu vào sang chữ số đúng Quá trình này bao gồm điều chỉnhtrọng số liên kết giữa các nơ-ron nhằm làm giảm thiêu sai số Khi mạng ANN đượchuấn luyện hoàn tất, chúng ta dùng nó nhằm dự đoán chữ số trong các mẫu hình mớibằng cách đưa hình ảnh này vào lớp đầu vào và xem xem nơ-ron nào cho dự đoán

cao.

ANN là một công cụ mạnh mẽ trong lĩnh vực máy học và có khả năng học từ

dữ liệu, nhưng việc câu hình và huân luyện mang cân sự am hiệu và kỹ năng cụ thê.

2.4 Một số bài báo liên quan nghiên cứu

* Trong nghiên cứu [1] đã đưa ra tính hiệu quả của mạng LSTM dé phát hiện, phân

loại chính xác các ứng dụng độc hại bằng cách coi các quyền của Android là đầu

vào cho mạng LSTM Các quyền thô của Android được mô hình hóa ở cấp độ

quyền bằng cách dùng khái niệm về mô hình cấp độ từ dé nhận các giá trị số détìm hiểu ý nghĩa ngữ nghĩa của quyền trong Android và mối tương quan với cácquyền khác

HN: tanh activation function

Element-wise product

— Connection with weights

— Connection with un-weight

time-lagin connection :hde1⁄ ý Peepholes š 10 Qutnut meu

Input sequence :

Forget gate

md Recurrent sequence

Sigmoid activation function

Hình 11: Kiến tric cua đơn vị RNN và khối bộ nhớ LSTM[1]

* Trong nghiên cứu [2] các phương trình được tạo ra là kết qua của giải thuật hồi

quy tuyến tính, hai bộ phân loại dựa trên quy tắc khác nhau được tạo ra Hệ thống

phát hiện ra PMDH thu từ quy tắc đầu tiên là LinRegDroidl và hệ thống phát

3l

Trang 32

hiện ra PMĐH thu từ quy tắc thứ hai là LinRegDroid2 Các thuật toán phân loại

thu được được so sánh với KNN, SVM, cây quyết định (DT).

ML Algorithms

Classification Modets

Applications

Feature Vector

Permission-n

Classification

Hình 12: Kiến trúc dé xuất phân loại Android dựa vào quyền

Y Trong nghiên cứu [3], tác giả đưa ra bản đồ quyền (PermMaps) kết hợp thông tin

quyền của Android và mức độ nghiêm trọng tương ứng của các quyền đó dé phânloại PMDH RE có thé đạt được độ chính xác 91%

[tandroid permission WRI:

Trang 33

*_ Hệ thống phát hiện PMĐH dựa trên quyền (PerDRaML) [4] được đề xuất trích

xuất việc sử dụng quyền từ các gói ứng dụng, nhưng thay vì phân tích tất cả quyềnđược yêu cầu, PerDRaML chủ yếu nhắm mục tiêu tập hợp quyền đã chọn có hiệu

quả trong việc phân biệt và cải thiện tỷ lệ phát hiện PMDH

Hình 14: Sơ đồ quy trình phân loại APK độc hại và lành tính

Features set of trained model (Fig 1a)

——— Machine Learning Model! ~ | 1 Malicious

jachine Learning Model: APKs

Y=] Filtered |

v

Y Trong nghiên cứu [5], nhóm tác giả chỉ ra cách phát hiện PMĐH android bằng

cách sử dụng lệnh gọi hệ thống Các ứng dụng độc hại được thực thi trong môi

trường được giám sát và kiêm soát bằng cách sử dụng trình giả lập dé phát hiệnPMĐH Hành vi độc hại được kích hoạt với một số sự kiện mô phỏng trong thờigian chạy của nó dé kích hoạt hành vi phá hoại của nó Nhật ký được thu thập

trong thời gian chạy của ứng dụng được phân tích nhằm thực hiện phân loại

PMDH Kết quả chỉ ra rằng K-Nearest Neighbor và giải thuật Cây quyết định cókết quả cho ra độ chính xác tốt nhất trong việc phát hiện PMĐH và Phân loại hophần mềm tương ứng

33

Trang 34

Analysis & Malware with

Preprocessing Family Name

Benign

Hinh 15: Kién trúc hệ thống phát hiện và phân loại PMĐH

băng cách dùng lời gọi hàm

w Trong bài báo [6], tác giả đề xuất bốn tinh năng quy mô nhỏ và dễ trích xuất, đó

là kích thước và quyền của các phần PE, độ phức tạp của nội dung và thư việnnhập, dé phân loại họ PMDH và su dung máy hoc tim kiếm mô hình tốt nhất vàcác siêu thông số cho từng tính năng Phân tích dựa trên các tập lệnh tĩnh và mãmáy thập lục phân Không giống như phân tích hành vi động, phân tích tĩnh là tiếtkiệm tài nguyên và cung cấp phạm vi toàn bộ mã, các tính năng được đề xuất mớicùng với thuật toán máy học cô điển (Rừng ngẫu nhiên) thể hiện rất tốt độ chính

xác ở mức 99,40% và vectơ đặc trưng có kích thước nhỏ hơn Chúng tôi chứng

minh hiệu quả của phương pháp này thông qua tích hợp trong IDA Pro, điều nàycũng tạo điều kiện thuận lợi cho việc thu thập các mẫu mới và đào tạo lại mô hình

tiếp theo

34

Trang 35

Model Training Classification

Manual Classification

Hình 16: Quy trinh dé xuất phan loai phan mém độc hai tự động

Y Trong bài viết [7], trước tiên tác giả nghiên cứu khác biệt giữa các tính năng tai

nguyên của ứng dụng độc hại và ứng dụng thông thường, sau đó đề xuất cách tiếpcận phát hiện mã độc Android bằng cách kết hợp các quyên và tính năng API vớicác tính năng tài nguyên Các thử nghiệm cho thê hiện kết quả phân loại của

phương pháp này tốt hơn so với các phương pháp trước sử dụng quyền hoặc tính

năng API, nó sẽ bù đắp hiệu quả cho sự thiếu sót của các phương pháp phát hiệntruyền thống và do đó được sử dụng hiệu quả nhằm phát hiện ứng dụng độc hại

Application detection

APKDecom

pression

Hình 17: Mô hình tong thể phát hiện mã độc Android bằng cách

két hop các quyên va API

Y Trong bài [8], nhóm tác giả đưa ra mô hình dùng dé phát hiện PMĐH Android

bang cách sử dụng GCN dựa trên Biểu đồ lệnh gọi hàm (FCG) FCG ghi lại quan

35

Trang 36

hệ người gọi và quan hệ các phương thức bên trong APK dưới dạng biểu đồ cóhướng Mỗi nút trong FCG được gán một vectơ đặc trưng biểu thị các đặc tínhcủa nó Một tập hợp các thử nghiệm được thực hiện bằng cách thay đôi thuật toánGCN, tính năng nút và số lớp GCN trong mô hình , sau đó thực hiện đánh giá.Khi các GCN xem xét số lượng nút của FCG, dữ liệu được cân bang băng cách

sử dụng một kỹ thuật mới dé phân phối số lượng nút của APK PMĐH và APKlành tính tương tự nhau Kết quả của những thử nghiệm này là thu được độ chính

xác tối đa là 92,29% với điểm F1 là 0,9223, cho thấy rằng GCN có khả năng phát

= Trong nghiên cứu [9], nhóm tác giả đưa ra một mô hình phát hiện PMDH Android

băng cách sử dụng phát hiện mã độc Android bằng cách kết hợp các quyền và chữ

ký Ban dau, dữ liệu đều thực hiện qua quá trình phân tích và chuyên đổi từ dữ liệu

thô thành tập các thuộc tính nhằm thu hẹp phạm vi thuộc tính rộng lớn Bước tiếp

là xác định một ứng dụng độc hại hay an toàn bằng cách dùng một trong nhiều môhình phân loại được giám sát có được từ khai thác dữ liệu Cuối cùng, nhóm tác giảthấy răng phương pháp dựa trên chữ ký vượt trội hơn so với phương pháp dựa trênquyền Các phương pháp như kNN, hồi quy logistic, SVM và rừng ngẫu nhiên (RF)đều có hiệu quả tương đương nhau

36

Trang 37

Android Application

Dataset

| Clean the noisy

data

| Testing Set | Validation Set | | Testing Set |

Hình 19: Mô hình phân loại kết hợp quyên và chữ ký

" Trong nghiên cứu [11], nhóm tác gia đưa ra một mô hình phát hiện PMĐH Android

bang cách sử dụng một khung phát hiện PMĐH Android GA-StackingMD, mô hình

sử dụng Stacking tạo ra năm bộ phân loại cơ sở khác nhau giải thuật di truyền được

áp dụng nhằm tối ưu hóa các siêu tham số của khung Các thử nghiệm cho thấy Xếp

chông có thê cải thiện hiệu quả độ chính xác của việc phát hiện PMĐH so với các

bộ phân loại đơn lẻ.

Data set construction

AA AB

Static feature extraction

|

Raw feature set

Feature dimension reduction

300110111 10-1 111000110-11

High-dimension feature set

GA-StackingMD

Stacking

J_—

d quali binati Ză

Good quality combination 1 l |

of basic classifiers

1 Parameters optimization by GA.

1

ao

Classifiers with optimal parameters

vo ue

Normal Malware application

t †

— Stacking

Hinh 20: Khung GA-StackingMD

= Trong nghiên cứu [12] tác giả đưa ra mô hình DeepCatra, một phương pháp học tập

đa chế độ xem đề phát hiện PMĐH trên Android, có mô hình bao gồm LSTM haichiều (BiLSTM) và mạng lưới thần kinh đồ thị (GNN) dưới dạng các mạng con

37

Trang 38

Hai mạng con được trích xuất từ dấu vết cuộc gọi được tính toán tĩnh dẫn đến các

API quan trọng bắt nguồn từ các lỗ hồng công khai Đối với mỗi ứng dụng Android,trước tiên DeepCatra xây dựng biểu đồ cuộc gọi và tính toán các dấu vết cuộc gọiđến các API quan trọng Sau đó, các tính năng mã lệnh tạm thời được sử dụng bởimạng con BILSTM được trích xuất từ các dấu vết cuộc gọi, trong khi các tính năng

biểu đồ luồng được sử dụng bởi mang con GNN được xây dung từ tất cả các dấu

vết cuộc gọi và liên lạc giữa các thành phần Nhóm tác giả so sánh DeepCatra vớimột số phương pháp phát hiện tiên tiến nhất, điều này cho thấy hiệu quả củaDeepCatra Kết quả thử nghiệm trên hơn 18.000 ứng dụng trong thế giới thực vàPMDH phô biến cho thấy DeepCatra đạt được sự cải thiện đáng kể, vi dụ: 2/7%—

14,6% trên thước đo F1

Call graph generation

Hinh 21: M6 hinh DeepCatra

" Bai báo nghiên cứu [13], nhóm tác giả đưa ra MAPAS, mô hình phát hiện PMDH,

độ chính xác đạt được tương đối cao, khả năng tiêu thụ tài nguyên máy tinh có thé

thích ứng MAPAS phân tích hành vi của các ứng dụng độc hai dựa trên đồ thị lệnh

gọi API của chúng bang cách dùng mạng thần kinh tích chập (CNN) Tuy nhiên,MAPAS không sử dụng mô hình phân loại do CNN tạo ra, nó chỉ sử dụng CNN đềkhám phá các tính năng phổ biến của biểu đồ lệnh gọi API của PMĐH Dé pháthiện PMĐH một cách hiệu qua, MAPAS sử dụng một bộ phân loại nhẹ để tính toán

mức độ tương đồng giữa biéu đồ lệnh gọi API được sử dụng cho các hoạt động độc

hai và biéu đồ lệnh gọi API của các ứng dụng sắp được phân loại Nhóm tác giả đã

38

Trang 39

thực hiện so sánh MAPAS với MaMaDroid Kết quả đánh giá chứng minh răngMAPAS có thê phân loại ứng dụng nhanh hơn 145,8% và sử dụng bộ nhớ thấp hơnkhoảng mười lần so với MaMaDroid MAPAS có dự đoán kết quả với độ chính xáccao (91,27%) so với MaMaDroid (84,99%) dé phát hiện PMDH không xác định.

API Call Graph

Extractor U App

Jaccard

Malware

Classification

Hình 22: Mô hình MAPAS dé xuất cua nhóm tác giả

= Trong nghiên cứu [14], nhóm tác giả đưa ra một hệ thống phát hiện PMDH trên

Android dựa trên các tính năng cấp phép sử dụng phân loại Bayesian 10.000 mẫu

đánh giá được lấy từ CSDL AndroZoo và Drebin Sau đó, thử nghiệm được tiếnhành bang hai thuật toán dé lựa chọn tính năng: thu thập thông tin và chi bìnhphương Tỷ lệ phát hiện các tính năng cấp phép chính xác đạt được cao nhất khoản

Hình 23: Mô hình Bayesian cua tác giả

= Trong bài báo nghiên cứu [16], nhóm tác giả đưa ra cách phát hiện PMĐH trên

Android bao gồm một tập hợp các trình phát hiện loại cụ thể, trong đó mỗi trìnhphát hiện thực hiện phân tích nhiều giai đoạn, dựa trên các quy tắc và kỹ thuật ML,

trong các giai đoạn khác nhau cua chu trình ứng dụng (trước va sau cải đặt của nó).

39

Trang 40

Cách tiếp cận mới của tác giả cũng khác biệt giải pháp tiên tiến ở chỗ không xâm

lấn, vì nó thúc đây một quy trình dé có được các tính năng của ứng dụng không viphạm giấy phép và điều khoản sử dụng của ứng dụng Ngoài ra, theo các thử nghiệmđược thực hiện trên điện thoại di động thông minh Android thực, đề xuất của nhómtác giả mang lại những lợi ích bổ sung sau so với các giải pháp tiên tiến: quy trìnhphân loại ứng dụng hiệu quả hơn, nhanh hơn ba lần và yêu cầu mức sử dụng CPU

ít hơn mười lần trong một số trường hợp giúp tiết kiệm năng lượng, hiệu suất phát

hiện tốt hơn, số trường hợp đương tính giả ít hơn chín lần và số trường hợp âm tính

giả ít hơn mười lân.

Solution modeling Detection solution

APK files APK file

Hình 24: Tổng quan về thiết kế của MADS

= Ở bài báo nghiên cứu [17], nhóm tác giả đưa ra quy trình gồm phân tích PMĐH

tĩnh cùng với phương pháp động dé đưa ra cái nhìn day đủ về mối đe dọa Quy trình

chuẩn hóa và trích xuất đặc trưng được dùng trong giai đoạn xử lý dữ liệu đầu tiên

Cả hai tính năng tĩnh và động đều trải qua quá trình lựa chọn tính năng trong giaiđoạn thứ hai Hai chiến lược lựa chọn tính năng được đề xuất dé chọn tập hợp con

các tính năng tốt nhất dé sử dụng cho cả tính năng tĩnh và động Giai đoạn thứ ba

liên quan đến việc áp dụng mô hình phát hiện mới được đề xuất dé phân loại ứngdụng Android; mô hình dùng mạng thần kinh được tối ưu hóa với phiên bản cải

40

Ngày đăng: 08/11/2024, 17:16

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w