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 2

Trang 3

Trang 4

Trang 5

Trang 6

Trang 7

Trang 8

Trang 9

Trang 10
Tải về để xem bản đầy đủ
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
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ả) tiFile đính kèm:
luan_an_nghien_cuu_de_xuat_dac_trung_do_thi_psi_trong_phat_h.pdf
3. Đóng góp mới - Tiếng Anh (2 bản).docx
3. Đóng góp mới - Tiếng Việt (2 bản).docx
DongGopMoi_TiengAnh.pdf
DongGopMoi_TiengViet.pdf
Nguyễn Huy Trung - Tóm tắt luận án - TAnh.pdf
Nguyễn Huy Trung - Tóm tắt luận án - TViet.pdf

