Bảng 3.5 So sánh mơ hình đề xuất và các nghiên cứu liên quan
Tác giả tượng nghiênDataset/Đối cứu Kỹ thuật tiền xử lý dữ liệu Số chiều vector đặc trưng được trích xuất Thuật tốn phân loại áp dụng ACC (%) FPR(%) TPR (%) AUC Alhaidari [70] NSL-KDD, IoTPOT[40], UNSW NB15/IoT Botnet Feature pruning method 31 HMM 94.67 1.88 47.86 - Alhanahnah [71] Kaspersky, IoTPOT [40], tự thu thập thêm/ IoT Malware (chủ yếu là Botnet) N-gram string
features 400 ClusteringK-means 85.20 - - -
Karanja [72] IoTPOT [40]/IoT Botnet Haralick image texture features 20 RF 95.38 - - 0.97 Meidan
[58] [40]/IoT BotnetIoTPOT
Extracting traffic statistics 115 Deep autoencoder - 1.7 - - Shobana
[73] [40]/IoT BotnetIoTPOT N-gram,TFIDF 184 RNN 98.31 - - -
Nguyen [74] IoTPOT [40], Virustotal [96], VirusShare [106]/IoT Botnet Subgraph2Vec 140 RF 97.00 - - 0.96 Mơ hình đề xuất IoTPOT [40], Virustotal [96], VirusShare [106]/IoT Botnet DSCG 128 SVM, Decision Tree, Random Forest, KNN 96,89* 1.4* 94.97* 0.989*
*Giá trị trung bình dựa trên 3 kịch bản thử nghiệm
3.5. Kết luận Chương 3
Trong chương này, nghiên cứu sinh đề xuất đặc trưng đồ thị lời gọi hệ thống cĩ hướng DSCG để cấu trúc hố một cách tuần tự các lời gọi hệ thống thu được. Phương pháp tiền xử lý dữ liệu lời gọi hệ thống được đề xuất cĩ độ phức tạp thấp, dễ áp dụng với những thuật tốn học máy đơn giản.
Ý tưởng và kết quả thực nghiệm của phương pháp đề xuất trong chương này đã được trình bày, cơng bố trên các Tạp chí, Kỷ yếu Hội thảo uy tín trong và ngồi nước. Cụ thể là:
- “Iot Botnet Detection Using System Call Graphs and One-Class CNN Classification”, International Journal of Innovative Technology and Exploring
Engineering (IJITEE), vol. 8, no. 10, pp. 937–942, Aug. 2019, (SCOPUS index), ISSN: 2278-3075, DOI: 10.35940/ijitee.J9091.0881019.
- “Đề xuất phương pháp phát hiện IoT Botnet hiệu quả dựa trên lời gọi hệ
thống”, Kỷ yếu hội thảo quốc gia lần thứ 23: Một số vấn đề chọn lọc của Cơng nghệ
CHƯƠNG 4. MƠ HÌNH HỌC MÁY CỘNG TÁC PHÁT HIỆN SỚM MÃ ĐỘC IOT BOTNET
4.1. Phát biểu bài tốn
4.1.1. Vấn đề phát hiện sớm mã độc IoT Botnet
Để cĩ thể đưa các kết quả phân tích động ứng dụng vào thực tế, nghiên cứu sinh thấy rằng việc phát hiện sớm đĩng vai trị then chốt để hạn chế lây lan và phát tán của mã độc. Mặc dù đặc trưng DSCG mang lại các kết quả khả quan nhưng việc sử dụng tồn bộ dữ liệu về quá trình hoạt động của các tập tin thực thi chưa cho phép giải quyết vấn đề phát hiện sớm mã độc IoT Botnet. Phát hiện sớm được chia làm hai nhĩm chính gồm: (1) phát hiện sớm dựa trên việc rút ngắn thời gian giám sát và (2) phát hiện sớm dựa trên việc thu thập mức tối thiểu các dữ liệu cần thiết cho phép phát hiện mã độc. Cách tiếp cận (1) bộc lộ nhiều hạn chế khi mà mã độc IoT Botnet cĩ thể ở trạng thái chờ lệnh từ C&C server trong một khoảng thời gian dài. Cách tiếp cận (2) cĩ thể khơng rõ nét trong việc phát hiện sớm về mặt thời gian cụ thể nhưng đảm bảo rằng lượng dữ liệu thu thập được cho phép phát hiện các tập tin mã độc với tỉ lệ âm tính giả thấp. Với cách tiếp cận này, nghiên cứu sinh đề xuất một mơ hình học máy cộng tác phát hiện sớm mã độc IoT Botnet. Trong mơ hình này, các dữ liệu đặc trưng động thu thập từ V- Sandbox bao gồm dữ liệu luồng mạng, lời gọi hệ thống, thơng tin sử dụng tài nguyên thiết bị,… sẽ được kết hợp với nhau trong việc xây dựng mơ hình phát hiện mã độc hợp nhất với số lượng dữ liệu thu thập là tối thiểu.
Trong phạm vi của luận án này, nghiên cứu sinh đưa ra khái niệm phát hiện sớm được sử dụng trong luận án này như sau:
Khái niệm 4.1. Phát hiện sớm là khả năng xác định được tệp thực thi là lành tính hoặc là mã độc dựa trên việc thu thập mức tối thiểu các dữ liệu cần thiết thu thập bởi q trình phân tích động.
Với hướng nghiên cứu phát hiện sớm mã độc, nhiều nhà nghiên cứu đã cơng bố các giải pháp của mình. Các mơ hình phát hiện mã độc tự động thường sử dụng các đặc trưng dựa trên mã nguồn (phân tích tĩnh) hoặc hành vi tương tác với mục tiêu (phân tích động) để phân biệt các mẫu mã độc và lành tính. Mỗi cách tiếp cận này đều cĩ những lợi ích và hạn chế của nĩ. Dựa trên khả năng thu thập nhiều loại dữ liệu hành vi tương
tác của mã độc IoT Botnet bằng V-Sandbox [105], nghiên cứu sinh lựa chọn sử dụng phương pháp phân tích động kết hợp nhiều loại nguồn dữ liệu đặc trưng hành vi để cĩ thể phát hiện sớm mã độc IoT Botnet.
4.1.2. Mơ hình học máy cộng tác trong phát hiện sớm mã độc
Với các nghiên cứu ở trên đã trình bày các phương pháp tiếp cận chủ yếu dựa vào một loại đặc trưng hoặc dữ liệu đã giám sát (như luồng mạng, lời gọi hệ thống,…) để phát hiện và phân loại mã độc. Tuy nhiên, phát hiện mã độc là một vấn đề nghiên cứu cĩ đặc điểm là đa phương thức vì nĩ bao gồm nhiều phương thức xử lý dữ liệu thu thập được từ mã độc. Học cộng tác (Collaborative Learning) là lĩnh vực nghiên cứu cách thức cĩ thể kết hợp các tín hiệu đa phương thức đĩ cùng nhau. Mặc dù việc kết hợp các phương thức hoặc loại thơng tin khác nhau để cải thiện hiệu suất cĩ vẻ là một nhiệm vụ hiệu quả về mặt trực giác, nhưng khĩ để giảm các mức độ nhiễu và xung đột khác nhau giữa các phương thức xử lý dữ liệu. Các phương pháp tiếp cận học cộng tác cĩ thể được phân loại thành ba nhĩm dựa trên cách kết hợp các phương thức xử lý dữ liệu, cụ thể:
- Mức đầu vào dữ liệu học (input-level) hoặc hợp nhất sớm (early fusion): Các phương pháp hợp nhất mức đầu vào dữ liệu học (hợp nhất sớm) tạo ra một đại diện chung của các đặc trưng đơn phương thức được tách riêng từ nhiều phương thức. Cách đơn giản nhất để kết hợp các vectơ đặc trưng đơn phương thức này là nối chúng để cĩ được một biểu diễn hợp nhất (như Hình 4.1). Tiếp theo, một mơ hình học máy duy nhất được huấn luyện để tìm hiểu mối tương quan và tương tác giữa các đặc trưng của mỗi phương thức. Kết quả cuối cùng của mơ hình cĩ thể được viết là p = h ([v1, v2, …, vm]) với h biểu thị cho mơ hình học máy duy nhất, [v1, v2, …, vm] biểu diễn sự ghép nối của các vectơ đặc trưng và m là số vectơ đặc trưng đơn phương thức riêng biệt.
- Mức quyết định (decision-level) hoặc hợp nhất muộn (late fusion): Trái ngược với phương pháp hợp nhất sớm, các phương pháp hợp nhất muộn huấn luyện một mơ hình học máy riêng biệt cho mỗi tập đặc trưng đầu vào và kết hợp các giá trị quyết định (dự đốn) đã học được với cơ chế hợp nhất như lấy trung bình (average), bỏ phiếu (vote),… (như trong Hình 4.2). Ưu điểm chính của hợp nhất muộn là cho phép sử dụng các mơ hình học máy khác nhau trên các tập đặc trưng dữ liệu khác nhau, do đĩ linh hoạt hơn trong xử lý dữ liệu đặc trưng đầu vào. Giả sử rằng mơ hình hi là giá trị quyết
định của mơ hình huấn luyện trên tập đặc trưng vi, thì kết quả cuối cùng của mơ hình hợp nhất muộn là p = F (h1(v1),h2(v2),…,hm(vm)) với F biểu thị cho loại phương thức hợp nhất kết quả quyết định đơn lẻ của h.
Hình 4.2 Phương pháp hợp nhất muộn
- Hợp nhất trung gian (Intermediate fusion): Các phương pháp hợp nhất trung gian xây dựng một biểu diễn dùng chung bằng cách hợp nhất các đặc trưng trung gian thu được bằng các mơ hình học máy riêng biệt. Sau đĩ, các đặc trưng trung gian này được nối với nhau và sau đĩ một mơ hình học máy được đào tạo để nắm bắt các tương tác giữa các đặc trưng này (như trong Hình 4.3).
Mỗi phương pháp học máy cộng tác đều cĩ những ưu và nhược điểm riêng. Tuy nhiên, với mục đích phát hiện sớm mã độc IoT Botnet, mơ hình hợp nhất muộn (late fusion) phù hợp cho việc kết hợp các đặc trưng đầu vào khác nhau của mã độc và tối ưu hĩa thời gian phát hiện. Thơng qua nghiên cứu lý thuyết và thực nghiệm, nghiên cứu sinh đã chứng minh được nhận định trên.
4.1.3. Khảo sát và đánh giá các nghiên cứu liên quan
4.1.3.1. Mơ hình học máy cộng tác trong phát hiện mã độc
Tác giả Ahmadi [114] đã đề xuất một mơ hình sử dụng các đặc trưng khác nhau của mã độc để phân loại các mẫu mã độc theo họ tương ứng của chúng. Đối với mỗi mẫu mã độc, chúng trích xuất một tập hợp các đặc trưng thống kê và nội dung phản ánh cấu trúc của tệp PE. Sau đĩ, các đặc trưng này được kết hợp bằng cách xếp chồng các danh mục đối tượng vào một vectơ đối tượng duy nhất bằng cách sử dụng một biến thể của kỹ thuật lựa chọn từng bước một (the forward step-wise selection technique). Thay vì tăng dần tập hợp đặc trưng bằng cách thêm các đặc trưng vào mơ hình, từng tập đặc trưng một, Ahmadi coi tất cả tập hợp con các đặc trưng thuộc về cùng một danh mục. Thuật tốn phân loại mà Ahmadi lựa chọn là sự triển khai song song của bộ phân loại như Gradient Boosting Tree, XGBoost. Ngồi ra, tác giả đã sử dụng giải thuật Baggy để tăng cường độ ởn định và độ chính xác của bộ phân loại.
Kolosnjaji [115] đã đề xuất một kiến trúc mạng nơron bao gồm các mạng con tích chập (convolutional) và chuyển tiếp (feed-forward). Mạng con tích chập học các đặc trưng từ chuỗi các mã nhị phân độc hại đã được dịch ngược. Ngược lại, mạng chuyển tiếp nhận làm đầu vào là một tập hợp các đặc trưng được trích xuất từ siêu dữ liệu (metadata) cĩ trong PE Header và danh sách các chức năng đã nhập và các tệp DLL của chúng. Sau đĩ, bộ phân loại dựa trên mạng nơ-ron cuối cùng kết hợp các kiến trúc mạng nơ-ron tích chập và chuyển tiếp cùng với các đặc trưng tương ứng của chúng thành một mạng duy nhất. Mạng này tạo ra kết quả phân loại cuối cùng sau khi tởng hợp các đặc trưng được học bởi cả hai mạng con.
Bayer [116] đã xây dựng thuộc tính hành vi của mã độc dựa trên các lời gọi hệ thống, sự phụ thuộc của chúng và các hoạt động mạng. Biểu diễn tởng quát này đĩng vai trị là đầu vào cho thuật tốn phân cụm nhằm nhĩm các mẫu mã độc cĩ hành vi tương tự. Phân nhĩm mã độc là một quá trình gồm nhiều bước. Bước đầu tiên là phân tích tự động các tệp thi
hành được thực hiện bởi phiên bản mở rộng của ANUBIS. Bước thứ hai là trích xuất thuộc tính hành vi. Cuối cùng, trong bước thứ ba, các mẫu biểu hiện hành vi tương tự được nhĩm lại trong cùng một cụm bằng cách sử dụng phương pháp gần đúng (approximate), xác suất dựa trên giá trị băm địa phương nhạy cảm (localitysensitive hashing) [117].
Mohaisen và Alrawi [118] đã đề xuất một cách tiếp cận dựa trên hành vi để xác định mã độc Zeus. Trojan nhằm vào ngân hàng Zeus là một dạng mã độc nhắm vào hệ điều hành Windows và thường được sử dụng để lấy cắp tiền và thơng tin đăng nhập tài khoản ngân hàng từ nạn nhân bị lây nhiễm. Với mục đích phân loại, một tập hợp 65 đặc trưng từ các dữ liệu khác nhau được trích xuất bao gồm các tệp được tạo, sửa đởi hoặc xĩa, khĩa registry được tạo, sửa đởi hoặc xĩa, địa chỉ IP đích, cởng, kết nối TCP và UDP, yêu cầu, bản ghi DNS, v.v. Sau đĩ, vectơ đặc trưng kết quả được sử dụng để đánh giá hiệu suất của các thuật tốn học máy khác nhau như SVM, LR, DT và KNN.
Dhammi và Singh [119] đã đề xuất một mơ hình phát hiện mã độc dựa trên phân tích động bằng cách sử dụng Sandbox Cuckoo. Cách tiếp cận này trích xuất các đặc trưng khác nhau từ việc thực thi mã độc như chi tiết hành vi xử lý tệp tin (tạo, mở, xĩa, thay đởi), chữ ký mã độc, máy chủ giao tiếp liên quan, tệp bị ảnh hưởng, khĩa registry đăng ký, chi tiết phiên làm việc, chuỗi ký tự. Tất cả các đặc trưng thu được từ Sandbox Cuckoo được ánh xạ thành tệp Định dạng quan hệ thuộc tính (ARFF) và sau đĩ, tệp ARRF kết quả được đưa vào WEKA để phân loại.
Pekta và Acarman [120] đã trình bày một hệ thống phân loại mã độc dựa trên hành vi theo thời gian chạy bằng cách áp dụng học máy trực tuyến (online machine learning). Hệ thống bao gồm ba giai đoạn. Giai đoạn đầu tiên bao gồm giám sát hành vi của tệp trong mơi trường Sandbox VirMon và Cuckoo. Trong giai đoạn thứ hai, trích xuất đối tượng được áp dụng để xây dựng vectơ đặc trưng bao gồm các đối tượng dựa trên hệ thống tệp, mạng và các hoạt động đăng ký registry và lời gọi API N-gram. Cuối cùng, giai đoạn thứ ba thực hiện phân loại bằng các thuật tốn học trực tuyến.
Mohaisen [121] đã đề xuất AMAL, một mơ hình phân tích mã độc dựa trên hành vi tự động cung cấp các cơng cụ để thu thập các đặc trưng hành vi dựa trên việc sử dụng hệ thống tệp, bộ nhớ, mạng và registry. Sau đĩ, vectơ đặc trưng kết quả được sử dụng để thực hiện phân loại với các thuật tốn học máy như SVM, Decision Tree, Logistic Regression, KNN.
Islam [122] đã trình bày một phương pháp tích hợp nhất các tính năng tĩnh và động vào một hệ thống phân loại duy nhất. Đối với mỗi tệp thực thi, thực hiện trích xuất và chuyển đởi thành biểu diễn vectơ cả tần số độ dài hàm và thơng tin chuỗi cĩ thể in được. Sau khi chạy các tệp thực thi và ghi nhật ký các lời gọi API Windows, Islam trích xuất các đặc trưng lời gọi API bao gồm tên và tham số hàm API. Sau đĩ, tất cả các vectơ đặc trưng được kết hợp thành một vectơ duy nhất cho mỗi tệp thực thi. Tiếp theo, vectơ kết quả được sử dụng làm đầu vào cho bốn bộ phân loại cơ sở: SVM, Random Forest, Decision Tree và Instance-based.
Han [123] đã xây dựng một khung phát hiện mã độc dựa trên sự tương quan và kết hợp của chuỗi lệnh gọi API tĩnh và động. Han đã khám phá sự khác biệt và mối quan hệ giữa chuỗi lệnh gọi API tĩnh và động bằng cách xác định một số loại hành vi độc hại. Sau khi tương quan và hợp nhất, một khơng gian vectơ đặc trưng lai được thiết lập để phát hiện và phân loại. Để đánh giá hiệu quả của cách tiếp cận của mình, họ đã đào tạo bốn bộ phân loại để phát hiện/phân loại mã độc bao gồm KNN, Decision Tree, Random Forest và Extreme Gradient Boosting.
Han [124] cũng đã trình bày MalInsight, một khung phát hiện mã độc dựa trên phân tích chương trình về cấu trúc mã nguồn, hành vi tương tác mức thấp và hành vi tương tác mức cao. Ba khía cạnh này phản ánh các đặc điểm cấu trúc; các hoạt động chính tương tác với hệ điều hành, tương tác với tệp tin, registry và luồng mạng. Bộ đặc trưng kết quả được sử dụng để huấn luyện các bộ phân loại học máy khác nhau như KNN, Decision Tree, Random Forests và Extreme Gradient Boosting. Các bộ phân loại này được đánh giá trên tập dữ liệu bao gồm 4250 mẫu thu được từ VirusShare và từ hệ điều hành Windows 7 Pro. Kết quả cho thấy độ chính xác ACC=97,21% trong việc phát hiện mã độc chưa cĩ trong tập mẫu.
4.1.3.2. Các mơ hình phát hiện sớm trong nghiên cứu mã độc
Saxe và Berlin [125] phân biệt tệp mã độc và tệp lành tính bằng cách sử dụng mạng học sâu chuyển tiếp (a deep feed-forward neural network) với tỷ lệ dương tính đúng (true-positive) là 95,2% bằng cách sử dụng các đặc trưng từ mã nguồn. Tuy nhiên, tỷ lệ này giảm xuống cịn 67,7% khi mơ hình được đào tạo bằng cách sử dụng các tệp chỉ được nhìn thấy lần đầu tiên, cho thấy sự yếu kém của các phương pháp tĩnh trong việc phát hiện mã độc hồn tồn mới. Damodaran [126] đã thực hiện một nghiên cứu so
sánh về các mơ hình phát hiện tĩnh, hành vi và kết hợp để phát hiện mã độc và nhận thấy dữ liệu hành vi cho giá trị diện tích cao nhất dưới đường cong (AUC) là 0,98 và sử dụng mơ hình Markov ẩn với tập dữ liệu gồm 785 mẫu. Ngồi ra, Grosse [127] cho