Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot trang 1

Trang 1

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot trang 2

Trang 2

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot trang 3

Trang 3

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot trang 4

Trang 4

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot trang 5

Trang 5

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot trang 6

Trang 6

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot trang 7

Trang 7

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot trang 8

Trang 8

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot trang 9

Trang 9

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 150 trang nguyenduy 11/05/2024 490
Bạn đang xem 10 trang mẫu của tài liệu "Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

Tóm tắt nội dung tài liệu: Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot

Luận án Nghiên cứu đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc botnet trên các thiết bị Iot
g cạnh 푒 và không có nhãn, minh họa trực quan ở hình 2.12. 
 Hình 2.12. Minh họa một đồ thị đơn giản 
 Để làm giàu thêm thông tin đồ thị, có thể bổ sung thêm hướng hoặc nhãn đồ thị. 
Một nhãn là tập hợp các biểu tượng, các loại nhãn có thể là số nguyên, chuỗi màu sắc 
hoặc một ký tự nào đó. Gán nhãn cho đồ thị tạo cho các đỉnh và các cạnh có tính riêng 
biệt, giúp mô tả sự khác biệt với các phần khác trong đồ thị, mang lại nhiều thông tin 
hơn. Các nhãn có thể được thêm vào cả cạnh và đỉnh. Hình 2.13 thể hiện một đồ thị có 
hướng với các đỉnh và các cạnh đều có nhãn. 
 Hình 2.13. Minh họa một đồ thị có hướng và nhãn 
 57 
2.2.2.2. Đặc trưng đồ thị luồng điều khiển 
 Các đặc trưng dựa trên cấu trúc đồ thị (như đồ thị luồng điều khiển, đồ thị lời gọi 
hàm, đồ thị mã) có khả năng biểu diễn hành vi của các tập tin thực thi bởi đồ thị là 
phương pháp mạnh mẽ trong mô hình hóa các mối quan hệ phức tạp của dữ liệu. Các 
đặc trưng phổ biến được sử dụng trong phát hiện mã độc là đồ thị luồng điều khiển (CFG 
- Control Flow Graph). Một đồ thị luồng điều khiển là đồ thị có hướng biểu diễn tất cả 
các đường đi có thể được thực thi trong các chương trình, ở đó mỗi đỉnh (nút) được biểu 
diễn bởi một khối cơ sở (basic block) và các cạnh có hướng biểu diễn luồng điều khiển 
có thể giữa các đỉnh. 
 Theo hướng tiếp cận này, Hisham Alasmary và cộng sự [33] đã sử dụng đồ thị 
luồng điều khiển như một cấu trúc trừu tượng để nhấn mạnh sự tương đồng và khác biệt 
giữa các tập tin nhị phân mã độc IoT botnet và mã độc Android. Để đạt được mục tiêu 
này, nhóm tác giả đã phân tích cấu trúc thông qua các đặc trưng lý thuyết đồ thị như 
kích thước đồ thị (số lượng đỉnh, số lượng cạnh), trung bình đường đi ngắn nhất trong 
đồ thị, độ trung tâm ở giữa (betweeness centrality), độ trung tâm dựa trên sự gần gũi 
(closeness centrality) - chỉ ra vị trí các nút trong mạng và khả năng kết nối các thành 
phân hoặc nhóm trong mạng), độ trung tâm dựa trên trị riêng (eigenvalue centrality) - 
chỉ ra nút đó có độ trung tâm nhất trong toàn đồ thị, độ trung tâm dựa trên bậc của nút 
(degree centrality) - là độ đo chỉ dựa vào bậc của nút và được xác định bằng số cạnh hay 
số kết nối mà một nút có),  Kết quả thực nghiệm trên bộ dữ liệu chứa 2874 mẫu mã 
độc IoT botnet và 201 mẫu mã độc Android đã cho thấy mã độc IoT có số lượng đỉnh 
và cạnh ít hơn nhiều so với mã độc Android, và các đặc trưng lý thuyết đồ thị luồng điều 
khiển giữa mã độc IoT botnet và Android cũng có biến thiên lớn. Do đó, nhóm tác giả 
đã chứng mình được tính hữu dụng của CFG trong phân biệt mã độc IoT botnet và mã 
độc Android. 
 58 
 Hình 2.14. Đồ thị CFG của một mẫu mã độc botnet Linux.Bashlite 
 Tiếp tục cải thiện và mở rộng hướng nghiên cứu đó trong phát hiện mã độc IoT, 
Hisham Alasmary và cộng sự [32] đã trình bày một phương pháp phát hiện mã độc IoT 
dựa trên sử dụng 23 đặc trưng tĩnh để biểu diễn đặc trưng CFG của mã độc IoT botnet. 
Phương pháp này gồm 3 giai đoạn: (1) sinh đồ thị lời gọi hàm của các mẫu nhị phân; (2) 
tính toán các tính chất chung của lý thuyết đồ thị; (3)áp dụng các kỹ thuật học máy và 
học sâu để phân loại tập dữ liệu thành 2 lớp: mẫu mã độc và lành tính. Bước đầu tiên, 
công cụ radera2 được sử dụng để sinh đồ thị CFG của các tập tin thực thi, công cụ mã 
nguồn mở này hỗ trợ nhiều kiến trúc (MIPS, ARM, ). Sau đó, các tác giả đã sử dụng 
framework NetworkX để tính toán các tính chất của CFGs. Những tính chất đó là số 
lượng đỉnh và cạnh; độ trung tâm dựa trên sự gần gũi (closeness centrality), độ trung 
 59 
tâm dựa trên trị riêng (eigenvalue centrality),  Bước cuối cùng, pha phát hiện sẽ được 
thực hiện bằng các thuật toán học máy và học sâu. Thực nghiệm trên bộ dữ liệu gồm 
6000 mẫu mã độc và lành tính, độ chính xác đạt được 99,66%. Mặc dù nghiên cứu này 
đem lại kết quả phát hiện cao, nhưng tính toán các tính chất của CFG là tiến trình có độ 
phức tạp tính toán lớn. 
2.2.2.3. Đặc trưng đồ thị Opcode 
 Đồ thị Opcode là đồ thị được xây dựng dựa trên các đỉnh là các giá trị Opcode và 
các cạnh thể hiện mối liên kết giữa các opcode, trong đó mối liên kết được xây dựng và 
thu thập dựa trên đồ thị luồng điều khiển. Trong hướng tiếp cận sử dụng đặc trưng có 
cấu trúc đồ thị, Azmoodeh và cộng sự [36] đã trình bày một phương pháp dựa trên học 
sâu để phát hiện mã độc IoT botnet bằng đồ thị Opcode. Phương pháp đề xuất được đánh 
giá với tập dữ liệu chứa 128 mẫu mã độc IoT botnet và 1078 mẫu lành tính IoT (tất cả 
các mẫu đều dựa trên ARM), đạt độ chính xác 99.68 % với tỷ lệ precision và recall ở 
mức 98,37% và 98,59% theo thứ tự. Tuy nhiên, phương pháp này không đủ độ mạnh 
mẽ do bộ dữ liệu thực nghiệm có số lượng mẫu mã độc IoT botnet hạn chế, và vấn đề 
đa kiến trúc không được xem xét đề cập đến trong nghiên cứu này do tập dữ liệu thực 
nghiệm chỉ dựa trên kiến trúc ARM. 
 Hình 2.15. Minh họa đồ thị Opcode 
 Với nội dung đã trình bày, thảo luận bên trên về các phương pháp phát hiện mã 
độc IoT botnet dựa trên đặc trưng tĩnh, việc so sánh các phương pháp được tổng hợp 
trong bảng 2.4 cho thấy các nghiên cứu hiện nay sử dụng các đặc trưng tĩnh trong phát 
hiện mã độc IoT botnet còn những hạn chế. 
 60 
 Bảng 2.4. So sánh các phương pháp phát hiện mã độc IoT botnet dựa trên đặc trưng tĩnh trong các nghiên cứu gần đây 
 Hướng tiếp 
 Các nghiên cứu cận dựa trên Phương pháp 
 Cơ chế thực hiện Điểm yếu 
 liên quan đặc trưng đánh giá 
 tĩnh 
 Hamed HaddadPajouh Xác định mã độc thông qua Chỉ sử dụng tập mẫu dựa trên kiến trúc ARM 
 Opcode Mạng nơ-ron 
 [14] chuỗi opcode 
 Ensieh Modiri Dovom Áp dụng fuzzy pattern tree - Chỉ sử dụng tập mẫu dựa trên kiến trúc ARM 
 Opcode Fuzzing 
 [57] để phát hiện mẫu mã độc - Tập dữ liệu không đủ lớn 
 Phát hiện mã độc dựa trên Chỉ sử dụng tập mẫu dựa trên kiến trúc ARM 
 Darabian [52] Opcode Học máy 
 tần xuất opcode 
Mohannad Alhanahnah Sinh chữ kỹ để phân loại mã - Độ phức tạp tính toán lớn 
 Strings Phân cụm 
 [4] độc - Chỉ sử dụng cho 4 loại mã độc 
 Trích xuất các đặc trưng từ Cấu trúc của tập tin nhị phân dễ dàng bị chỉnh 
 F. Shahzad et al. [96] ELF header section của tập tin nhị phân Học máy sửa 
 để phát hiện mã độc 
 61 
 Hướng tiếp 
 Các nghiên cứu cận dựa trên Phương pháp 
 Cơ chế thực hiện Điểm yếu 
 liên quan đặc trưng đánh giá 
 tĩnh 
 Biểu diễn các mẫu nhị phân Thiếu độ chính xác khi các mẫu sử dụng kỹ thuật 
 Grayscale 
 Jiawei Su et al. [25] như ảnh đa mức xám để Mạng nơ-ron gây rối hoặc mã hóa 
 image 
 phát hiện mã độc 
 Tính toán 23 thuộc tính lý - Độ phức tạp tính toán lớn 
Hisham Alasmary et al. thuyết đồ thị của CFG để Học máy, học 
 CFG - Xác định các tính chất chưa chính xác 
 [32] phân biệt các mẫu mã độc sâu 
 và lành tính 
 Xây dựng đồ thị opcode dựa Chỉ sử dụng tập mẫu dựa trên kiến trúc ARM 
 Amin Azmoodeh et al. 
 Opcode graph trên CFG để phát hiện mã Lý thuyết đồ thị 
 [36] 
 độc 
 62 
 Dựa trên khảo sát, đánh giá các nghiên cứu hiện nay về vấn đề phát hiện mã độc 
IoT botnet, thấy rằng các nghiên cứu đều có những ưu điểm và hạn chế. Tuy nhiên, mỗi 
phương pháp nghiên cứu lại thực nghiệm trên các bộ cơ sở dữ liệu và môi trường khác 
nhau. Trên cơ sở đó, luận án tiến hành đánh giá một cách khách quan các nghiên cứu 
hiện nay với cùng môi trường thử nghiệm và trên cùng bộ cơ sở dữ liệu. Phần tiếp theo 
luận án sẽ trình bày chi tiết về bộ cơ sở dữ liệu, bộ cơ sở dữ liệu này không chỉ dùng để 
thực nghiệm cho phần đánh giá ở Chương này mà còn được sử dụng thực nghiệm ở các 
Chương sau của luận án. 
2.2.3. Xây dựng bộ cơ sở dữ liệu thử nghiệm 
 Đối với các bài toán phát hiện mã độc thì luôn cần dữ liệu đầu vào để huấn luyện 
và thử nghiệm, đánh giá. Trong khi đó, mã độc IoT botnet là một lĩnh vực nghiên cứu 
tương đối mới, chưa có nhiều nơi công bố các tập dữ liệu thử nghiệm liên quan. Trong 
luận án này, dữ liệu đầu vào là các tập tin thực thi mã độc và lành tính trên thiết bị IoT. 
Để phục vụ các nghiên cứu thực nghiệm của luận án một cách tin cậy, đúng đắn thì việc 
xây dựng tập dữ liệu các tập tin thực thi mã độc và lành tính trên thiết bị IoT có ý nghĩa 
quan trọng. Đối với tập dữ liệu mã độc IoT botnet thì luận án tiến hành thu thập từ 02 
nguồn khác nhau là IoTPOT [22] và VirusShare [122]. 
 Dữ liệu được thu từ IoTPOT, một giải pháp mạng bẫy (honepot) IoT của các giáo 
sư Nhật bản để thu thập mã độc IoT botnet có đặc điểm sau: 
 - Được thu thập trong 01 năm từ 10/2016 đến 10/2017 với 4000 mẫu mã độc IoT 
botnet. 
 - Ban đầu IoTPOT tập trung vào thu thập các tập tin từ các thiết bị IoT bị tấn 
công dựa trên giao thức telnet (telnet-based), hiện nay mạng bẫy này đã mở rộng hơn 
với các hình thức tấn công khác [33], ví dụ như tấn công dò quét trên TCP qua các cổng 
23, 80, 8080, 5916 và cổng UDP như 123, 3143. 
 Hình 2.16. Kết quả tải về tập dữ liệu mã độc IoT botnet từ IoTPOT 
 63 
 Hình 2.17 minh họa sự tương tác giữa máy khách và máy chủ trong giao thức 
telnet. Sau khi thực hiện bắt tay 3 bước, máy khách và máy chủ có thể trao đổi các tùy 
chọn Telnet, máy chủ Telnet hoặc máy khách Telnet có thể khởi tạo yêu cầu như “Do 
Echo”, một yêu cầu cho gửi trả lại echo và “Do NAWs” để gửi yêu cầu tới NAWs 
(Negotiate About Window size). Sau khi trao đổi các tùy chọn, máy chủ gửi một thông 
điệp chào mừng tới máy khách, ngay sau đó là thông tin đăng nhập. Ví dụ “TPLink 
Router” là thông điệp chào mừng và “Login:” là thông điệp đăng nhập, ở đây phần khởi 
tạo tương tác này gọi là tiêu ngữ tương tác (banner interactions). Sau đó, máy khách gửi 
cặp tên đăng nhập/mật khẩu để đăng nhập vào máy chủ, được gọi là xác thực 
(authentication). Cuối cùng, nếu việc xác thực là hợp lệ thì máy khách đăng nhập và ra 
lệnh cho máy chủ sử dụng nhiều lệnh shell, được gọi là tương tác câu lệnh (command 
interactions). 
 Hình 2.17. Giao thức telnet 
 Các tập tin được thu thập có các đặc trưng với các chuỗi chỉ thị lệnh quan sát 
được bởi IoTPOT có thể kể đến như: 
 - Kiểm tra shell của thiết bị nạn nhân bằng lệnh “sh” 
 - Kiểm tra lệnh wget có được kích hoạt không 
 - Kiểm tra busybox shell có được sử dụng trên thiết bị nạn nhân 
 - Xóa nhiều chỉ thị lệnh và các tập tin trong các vị tri /usr/bin, /bin, var/run/, /dev 
 64 
 - Sao chép /bin/sh với tên tập tin ngẫu nhiên 
 - Sử dụng nền tảng của kẻ tấn công để tải các tập tin nhị phân. Địa chỉ IP và giá 
trị cổng của máy chủ tải mã độc có thể tìm thấy trong chỉ thị lệnh 
 - Kiểm tra phản hồi lỗi của thiết bị nạn nhân bằng cách chạy các câu lệnh không 
tồn tại như ZORRO, “enable”, “shell” 
 - Tải về các đoạn mã thực thi shell 
 - Sử dụng các đoạn mã thực thi đã tải để ngắt hoặc ngăn chặn các tiến trình độc 
hại đã chạy trước đó trên thiết bị nạn nhân, tải các tập tin thực thi có kiến trúc khác nhau, 
ngăn chặn kết nối cổng 23/TCP. 
 - Các tập mẫu thu thập được thực hiện các hình thức tấn công phổ biến là từ chối 
dịch vụ như tấn công tràn UDP, tấn công tràn TCP, DNS Water Torture, tấn công tràn 
ACK, tấn công SSL,  
 Ngoài việc sử dụng các mẫu mã độc trên thì luận án cũng sử dụng mẫu mã độc 
IoT botnet từ VirusShare. VirusShare [122] là một kho lưu trữ mã độc trực tuyến được 
cung cấp cho các nhà nghiên cứu bảo mật, các nhà ứng phó sự cố an toàn thông tin và 
điều tra số có thể truy cập vào các tập mẫu mã độc. Việc truy cập chỉ được thực hiện với 
các tài khoản được cấp quyền. Để yêu cầu quyền truy cập, các nhà nghiên cứu cần thư 
điện tử tới người quản trị và giải thích mục đích của việc truy cập kho lưu trữ. Luận án 
xây dựng bộ thu thập (crawler) mã độc IoT từ VirusShare với đầu vào là tên các loại mã 
độc IoT botnet [12] (đã trình bày ở mục 1.1.3 như Mirai, bashlite, Tsunami, Aidra, ). 
Kết quả đã thu thập được 3199 mẫu mã độc IoT botnet. 
 Hình 2.18. Giao diện của VirusShare sau khi đăng nhập với tài khoản được cấp 
 65 
 Hình 2.19. Kết quả tải về tập dữ liệu mã độc IoT botnet từ VirusShare 
 Bên cạnh tập dữ liệu mã độc IoT botnet thì luận án cũng thu thập tập dữ liệu lành 
tính trên IoT. Tập dữ liệu lành tính được trích xuất từ các bản ảnh phần sụn (firmware) 
của các thiết bị IoT dân dụng (SOHO) bằng công cụ binwalk [116]. Cụ thể, các bản ảnh 
phần sụn được tải từ trang web của các hãng sản xuất thiết bị IoT như TP-Link, D-Link, 
Asus,  Để đa dạng tập dữ liệu lành tính, luận án không những thu thập thêm các bản 
ảnh nhị phân phần sụn từ OpenWRT [119] cho các hãng khác như Buffalo, Netgear hoặc 
Tenda, mà còn từ một số nghiên cứu trước có chia sẻ tập mẫu lành tính IoT [36]. 
 Để huấn luyện và đánh giá mô hình, giải pháp đề xuất của luận án với tỷ lệ dương 
tính giả thấp thì cần đảm bảo gán nhãn chính xác cho các tập tin mã độc và các tập tin 
lành tính. Luận án thực hiện điều này bằng cách chạy tất cả dữ liệu thông qua VirusTotal 
[123], một công cụ hỗ trợ phân tích trực tuyến mã độc với hơn 68 bộ dò quét mã độc 
của nhiều hãng phần mềm phòng chống mã độc như Kaspersky, Norton, Avast,  Luận 
án sử dụng chiến lược bỏ phiếu [17], [81] để quyết định xem một tập tin là mã độc hoặc 
lành tính, thể hiện qua đẳng thức (2.1): 
 ã độ , 푛ế ( 1(푆) ∨ 2(푆) ∨  푛(푆)) 
 푙 푠푠푙 = { (2.1) 
 퐿à푛ℎ 푡í푛ℎ, 푛ế (! ( 1(푆)) ∧ ! ( 2(푆)) ∧  ! ( 푛(푆))
 Từ đẳng thức trên có thể thấy rõ ràng là một tập tin được gán nhãn mã độc nếu 
có bất kỳ một bộ dò quét mã độc từ 1(푆) tới 푛(푆) xác nhận là mã độc. Ngược lại một 
tập tin mẫu được gán nhãn là lành tính nếu không có bất kỳ bộ dò quét nào xác nhận là 
mã độc. 
 Với mỗi mẫu, luận án chọn tên mã độc IoT botnet được xác định từ nhiều bộ dò 
quét nhất. Đồng thời, luận án chuẩn hóa tên mã độc như AVCLASS [94] bởi mỗi bộ dò 
quét lại đưa ra một tên gọi khác nhau cho một mẫu mã độc IoT botnet, mặc dù các tên 
gọi khác nhau đó cùng chỉ về một lớp mã độc IoT botnet. Ví dụ, luận án thay thế Gafgyt 
 66 
và Lightaidra bằng Bashlite. Cuối cùng, luận án chia tập dữ liệu mã độc thành 03 lớp là 
Mirai, Bashlite và các loại mã độc khác (Other Botnet). Như vậy, tập dữ liệu thu thập 
được gồm có 11200 mẫu gồm 7199 mẫu mã độc IoT botnet và 4001 mẫu lành tính IoT. 
Sử dụng công cụ IDA Pro để tiến hành tiền xử lý các tập tin, cụ thể là các mẫu không 
phải tập tin nhị phân, không thể đọc được bằng IDA Pro cũng như trùng lặp sẽ bị xóa 
bỏ khỏi tập dữ liệu. Cuối cùng, tập dữ liệu có 10010 mẫu gồm 6165 mẫu mã độc IoT 
botnetvà 3845 mẫu lành tính IoT, mô tả chi tiết ở bảng 2.5. 
 Bảng 2.5. Mô tả tập dữ liệu mẫu để thử nghiệm 
 Kiến Kiến 
 Các lớp Biến thể Số lượng trúc trúc 
 ARM MIPS 
 Mirai 7 1765 331 301 
 Bashlite 5 3720 762 646 
 Other botnet 9 680 152 103 
 Benign - 3845 561 533 
 Total 10010 1806 1583 
 Hơn nữa, luận án tiến hành khảo sát kiến trúc vi xử lý của các mẫu mã độc trong 
tập dữ liệu bằng câu lệnh file trong hệ điều hành Linux. Hình 2.20 cho thấy sự đa dạng 
kiến trúc vi xử lý của các mẫu mã độc IoT botnet trong trong tập dữ liệu, trong đó các 
kiến trúc MIPS, ARM và Intel 80386 là 3 kiến trúc phổ biến nhất cho mã độc IoT botnet. 
 67 
 Hình 2.20. Sự phân bố kiến trúc vi xử lý trong các mẫu mã độc IoT botnet 
 Tóm lại, bộ dữ liệu của luận án xây dựng có chứa các tập mẫu mã độc botnet và 
lành tính IoT thực tế, đa dạng về kiến trúc nên giúp phản ánh tính chất của Internet nói 
chung và mạng IoT nói riêng một cách trung thực và đáng tin cậy. 
2.2.4. Các tiêu chí đánh giá 
 Để đánh giá tính hiệu quả của các phương pháp phát hiện mã độc IoT botnet, 
luận án sử dụng các tiêu chuẩn TP, TN, FP và FN được mô tả như sau: 
 - True positive (TP): cho biết rằng một mẫu mã độc được phát hiện chính xác và 
gán nhãn là mã độc 
 - True negative (TN): cho biết rằng một mẫu lành tính được phát hiện chính xác 
và gán nhãn là lành tính 
 - False positive (FP): cho biết rằng một mẫu lành tính bị phát hiện sai và gán nhãn 
là mã độc 
 - False negative (FN): cho biết một mẫu mã độc bị phát hiện sai và gán nhãn là 
lành tính 
 Dựa trên những tiêu chuẩn này, các độ đo thường được sử dụng trong học máy 
được tính toán. Để đánh giá tính hiệu quả của các phương pháp đề xuất, các thực nghiệm 
trong luận án này, ở mỗi Chương, luận án không sử dụng hết các độ đo mà lựa chọn các 
độ đo phù hợp. Các độ đo gồm: 
 + Độ chính xác (Accuracy): là tỷ lệ giữa số lượng các mẫu được gán nhãn đúng 
chia cho tổng số dữ liệu kiểm thử (gồm cả mẫu mã độc và lành tính) 
 푃 + 
 = (2.2) 
 푃 + 퐹푃 + + 퐹 
 + Tỷ lệ dương tính đúng (TPR – True Positive Rate): số lượng mẫu mã độc đã 
dự đoán được phân loại đúng là mã độc chia cho tổng số tập tin mã độc. 
 푃
 푃푅 = (2.3) 
 푃 + 퐹 
 + Tỷ lệ dương tính giả (FPR – False Positive Rate)/tỷ lệ phát hiện nhầm: số lượng 
mẫu lành tính đã dự đoán bị phân loại nhầm là mã độc chia cho tổng số tập tin lành tính. 
 68 
 퐹푃
 퐹푃푅 = (2.4) 
 퐹푃 + 
 + Tỷ lệ chính xác (Precision): thể hiện khả năng mô hình dự đoán đúng nhãn, tức 
là xem xét trên tập dữ liệu kiểm tra xem có bao nhiêu dữ liệu được mô hình dự đoán 
đúng (tức là trả lời câu hỏi bao nhiêu cái đúng được lấy ra). Việc tăng hay giảm Precision 
phụ thuộc vào FP nên Precision cao đồng nghĩa với FP nhỏ hay số nhãn lành tính dự 
đoán nhầm sang mã độc. 
 푃
 푃 푒 𝑖푠𝑖표푛= (2.5) 
 푃 + 퐹푃
 + Recall (tức là trả lời câu hỏi bao nhiêu cái được lấy ra là đúng), chỉ số này còn 
được gọi là độ bao phủ tức là xem xét một mô hình tìm được có khả năng tổng quát hóa 
như thế nào. 
 푃
 푅푒 푙푙= (2.6) 
 푃 + 퐹 
 + Độ đo F-score: còn gọi là trung bình điều hòa của các tiêu chí Precision và 
Recall. Nó có xu hướng lấy giá trị gần với giá trị nào nhỏ hơn giữa 2 giá trị Precision và 
Recall và đồng thời nó có giá trị lớn nếu cả 2 giá trị trên đều lớn. Do đó F-score thể hiện 
được một cách khách quan hơn hiệu năng của một mô hình học máy. 
 푃 푒 𝑖푠𝑖표푛 × 푅푒 푙푙
 퐹 − 푠 표 푒= 2 × (2.7) 
 푃 푒 𝑖푠𝑖표푛+ 푅푒 푙푙
 Bên cạnh đó, việc tăng hay giảm FNR (được tính bằng 1-TPR) và FPR có thể 
thực hiện bằng việc thay đổi một ngững nào đó. Luận án coi lớp 1 là lớp mã độc 
(positive) và lớp 0 là lành tính (negative), vậy làm thế nào để tăng mức độ báo nhầm 
(FPR) để giảm mức độ bỏ sót (FNR), trong đó khi tăng FNR thì đồng nghĩa với việc 
giảm TPR. Như vậy ứng với mỗi giá trị của ngưỡng thì sẽ có một cặp (FPR, TPR). Việc 
biểu diễn các điểm (FPR, TPR) trên đồ thị khi thay đổi ngưỡng (thường từ 0 đến 1) ta 
sẽ thu được một đường cong gọi là ROC. Dựa trên đường cong ROC, ta có thể xác định 
rằng mô hình có hiệu quả hay không. Bên cạnh đó còn có một giá trị đại diện cho diện 
tích nằm dưới ROC (tức các điểm dữ liệu ở góc trên cùng bên tay trái sẽ là tối ưu, hiệu 
quả cao), giá trị này được gọi là AUC (Area Under the Curve), kết quả từ AUC có thể 
được thể hiện “càng lớn thì mô hình càng tốt”. 
 69 
 Để tiến hành các thực nghiệm trong Chương này, luận án chia tập dữ liệu thành 
2 tập con với tỷ lệ là: 70% tập dữ liệu là tập huấn luyện và 30% còn lại là để kiểm thử. 
Thực nghiệm được xây dựng với ngôn ngữ Python và thư viện Scikit-Learn (một thư 
viện về học máy phổ biến hiện nay, được viết trên ngôn ngữ Python) trên nền tảng hệ 
điều hành Ubuntu 16.04 sử dụng chip Intel Core i5-8500, 3.0GHz và bộ nhớ RAM 32 
GB. 
2.2.5. Kết quả thực nghiệm và nhận xét 
 Nhằm đánh giá một cách trực quan và đáng tin cậy về các phương pháp phát hiện 
mã độc IoT botnet dựa trên đặc trưng phân tích tĩnh, đã được trình bày chi tiết ở mục 
2.2.1 và 2.2.2. Phần này luận án sẽ tiến hành thực nghiệm lại chính xác các phương pháp 
đó trên cùng một bộ dữ liệu lớn các tập tin thực thi IoT và cùng cấu hình hệ thống đã 
trình bày chi tiết ở phần 2.2.3. Kết quả tổng hợp, đánh giá các hướng tiếp cận dựa trên 
đặc trưng tĩnh trong phát hiện mã độc IoT botnet được thể hiện ở Bảng 2.6 
 70 
 Bảng 2.6. Kết quả thực nghiệm các hướng tiếp cận dựa trên đặc trưng tĩnh hiện nay trong phát hiện mã độc IoT botnet 
 Hướng tiếp Độ FPR (False FNR (False Thời gian trích 
 Thời gian 
 cận dựa trên Bộ phân lớp chính Positive Rate - Negative Rate - xuất đặc trưng và 
 phân lớp 
đặc trưng tĩnh xác dương tính giả) âm tính giả) ti

File đính kèm:

  • pdfluan_an_nghien_cuu_de_xuat_dac_trung_do_thi_psi_trong_phat_h.pdf
  • docx3. Đóng góp mới - Tiếng Anh (2 bản).docx
  • docx3. Đóng góp mới - Tiếng Việt (2 bản).docx
  • pdfDongGopMoi_TiengAnh.pdf
  • pdfDongGopMoi_TiengViet.pdf
  • pdfNguyễn Huy Trung - Tóm tắt luận án - TAnh.pdf
  • pdfNguyễn Huy Trung - Tóm tắt luận án - TViet.pdf