Xây dựng và phát hiện mã độc IoT Botnet trong sandbox

MỤC LỤC

Mục tiêu nghiên cứu của luận án

Từ những nội dung được nêu trong tính cấp thiết của luận án, nghiên cứu sinh xác định mục tiêu nghiên cứu của luận án là “nghiên cứu, xây dựng hệ thống thu thập dữ liệu hành vi và phát hiện mã độc IoT Botnet dựa trên mô hình học máy nhằm nâng cao độ chính xác và giảm độ phức tạp trong phát hiện mã độc IoT Botnet trên các thiết bị IoT hạn chế tài nguyên theo phương pháp phân tích động”. - Nghiên cứu, kết hợp hệ thống thu thập dữ liệu bằng Sandbox tự xây dựng với mô hình học máy đề xuất thành hệ thống phát hiện mã độc IoT Botnet hoàn chỉnh ứng dụng được trong thực tế.

Nội dung và phương pháp nghiên cứu 1. Nội dung nghiên cứu

- Lựa chọn nghiên cứu phát hiện các mẫu mã độc IoT Botnet xuất hiện trên các thiết bị IoT hạn chế tài nguyên với lý do: mặc dù có nhiều dòng mã độc lây nhiễm trên thiết bị IoT (như Trojan, Ransomware, Spyware,…) nhưng với đặc điểm hạn chế về mặt tài nguyên, xuất hiện rộng khắp trên toàn thế giới và tồn tại các lỗ hổng bảo mật cơ bản thì tỉ lệ mã độc Botnet chiếm tỉ lệ đa số theo thống kê của Kaspersky [4]. Nguồn tài liệu phục vụ cho nghiên cứu lý thuyết được nghiên cứu sinh sử dụng tại hai nguồn chính là kho dữ liệu trực tuyến (như Google Scholar, IEEE Xplore, ACM Digital Library, Crossref,…) và nội dung báo cáo tại các hội thảo khoa học uy tín trong và ngoài nước như USENIX, Blackhat, SOICT, ICCM, FAIR,….

Các đóng góp chính của luận án

Bố cục của luận án

XÂY DỰNG MÔI TRƯỜNG SANDBOX THU THẬP HIỆU QUẢ DỮ LIỆU HÀNH VI CỦA MÃ ĐỘC IOT BOTNET

Phát biểu bài toán

Kiến trúc tổng quan mô hình đề xuất

- Tiền xử lý dữ liệu thô thu thập được (Raw Data Preprocessing component - RDP): tiền xử lý, xác định sơ bộ các hành vi điển hình của tệp thực thi ELF, cung cấp dữ liệu thống kê hành vi cho thành phần tính toán khả năng thực thi lại của Sandbox (SR). - Tính toán khả năng thực thi lại Sandbox (Sandbox Recomputation component - SR): quyết định xem có xuất báo cáo về các hành vi của tệp ELF hay cần chạy lại môi trường Sandbox (SE) với cấu hình mới để thu thập thêm dữ liệu hành vi.

Các thành phần chính

Do đó, để hiểu hành vi của IoT Botnet, cần phải phân tích dữ liệu thô thu thập từ Sandbox, bao gồm hành vi mạng (gửi yêu cầu và kết nối với máy chủ C&C, quét các thiết bị IoT khác qua cổng Telnet, SSH), lời gọi hệ thống (tải xuống tệp nhị phân từ máy chủ, thực hiện tệp nhị phân được tải xuống, tấn công Brute force tài khoản Telnet, SSH các thiết bị dễ bị tổn thương khác, vòng lặp chờ kết nối đến máy chủ C&C,…), các thay đổi tệp và thư mục, yêu cầu sử dụng thư viện liên kết động, chiếm dụng tài nguyên hệ thống (CPU, RAM,…). Main Controller chịu trách nhiệm quản lý các tác vụ bao gồm nhận và chuyển tệp ELF sang máy chủ ảo, xác định kiến trúc CPU của ELF để chạy máy chủ ảo tương ứng, kích hoạt tệp ELF và tác tử giám sát, cung cấp tệp Share Object ("so") khi ELF yêu cầu, tạo kết nối với máy chủ C&C mô phỏng khi cần thiết và tổng hợp báo cáo phân tích từ tác tử giám sát hành vi.

Hình 2.2 Sử dụng Readelf đọc Header ELF
Hình 2.2 Sử dụng Readelf đọc Header ELF

ĐẶC TRƯNG ĐỒ THỊ LỜI GỌI HỆ THỐNG Cể HƯỚNG TRONG PHÁT HIỆN MÃ ĐỘC IOT BOTNET

Phát biểu bài toán

Đối với bất kỳ hành động có ý nghĩa độc hại nào, chẳng hạn như tạo thư mục mới, tải tệp thực thi mã độc, tạo tiến trình thực thi, ghi vào RAM hoặc mở kết nối mạng, cần phải tương tác với hệ điều hành (OS) thông qua lời gọi hệ thống (System call). Do đó, để mô tả đặc điểm hành vi của mó độc, điều quan trọng là phải theo dừi chuỗi cỏc sự kiện lời gọi hệ thống trong quá trình thực thi mã độc. Các họ mã độc khác nhau có các mục tiêu thực thi hành vi độc hại khác nhau, nhưng tất cả các mục tiêu này sẽ được tiết lộ bằng cách kiểm tra các dấu vết lời gọi hệ thống. Để có thể sử dụng nguồn dữ liệu “lời gọi hệ thống” trong phát hiện mã độc IoT Botnet, các nhà nghiên cứu. Với những phân tích nêu trên, trong Chương 3 luận án sẽ đề xuất phương pháp tiền xử lý loại dữ liệu này áp dụng hiệu quả cho bài toán phát hiện mã độc IoT Botnet. Bài toán xây dựng đặc trưng từ lời gọi hệ thống. Với nội dung đã được trình bày ở trên, hạn chế chính của các nghiên cứu sử dụng lời gọi hệ thống để phát hiện mã độc IoT nói chung và IoT Botnet nói riêng đã được phân tích ở trên bao gồm:. 1) Các nghiên cứu sử dụng lời gọi hệ thống hầu hết mới chỉ quan tâm tới đặc trưng tần xuất xuất hiện lời gọi, chưa khai thác hiệu quả đặc trưng tuần tự của lời gọi hệ thống. 2) Các nghiên cứu sử dụng đồ thị trong xử lý chuỗi lời gọi hệ thống của mã độc tồn tại các nhược điểm như vector đặc trưng có số chiều quá lớn, giá trị đặc trưng được. Bước thứ 4, sau khi trích xuất tập đặc trưng phù hợp, các đặc trưng này được sử dụng để huấn luyện và đánh giá khả năng phát hiện mã độc IoT Botnet dựa trên các thuật toán học máy phổ biến như KNN, SVM, Decision Tree,… Kết quả thử nghiệm đã cho thấy tính hiệu quả của phương pháp trích xuất đặc trưng dữ liệu lời gọi hệ thống mà nghiên cứu sinh đề xuất.

Tiền xử lý dữ liệu đồ thị DSCG

Để đánh giá kết quả hoạt động của đặc trưng đề xuất, tập dữ liệu chứa 8911 mẫu tệp thực thi chạy thành công từ V-Sandbox bao gồm 5023 IoT Botnet và 3888 mẫu lành tính đa nền tảng kiến trúc vi xử lý (gồm MIPS, ARM, x86, PowerPC,…) đã được thu thập và sử dụng cho thực nghiệm. Tại các hình 3.7-3.9 mô tả đường ROC (cùng với giá trị AUC) của các bộ phân lớp Decision Tree, SVM, KNN, Random Forest với đầu vào là vector đặc trưng được trích xuất từ các thuật toán nhúng đồ thị Graph2vec (a), Feather (b) và LDP (c) tương ứng 3 kịch bản huấn luyện/kiểm thử đã trình bày.

Hình 3.5 So sánh Doc2vec và Graph2vec
Hình 3.5 So sánh Doc2vec và Graph2vec

MÔ HÌNH HỌC MÁY CỘNG TÁC PHÁT HIỆN SỚM MÃ ĐỘC IOT BOTNET

Phát biểu bài toán

- 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ự đoá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). Khung thời gian thu thập dữ liệu trung bình cho những mô hình phát hiện sớm đã công bố là 5 phút (xem Bảng 4.1). Bảng 4.1 Khảo sát các nghiên cứu về phát hiện sớm mã độc. Mô tả Dataset. Dữ liệu đặc trưng sử dụng. Thời gian thu thập dữ liệu. hành vi động/mẫu Số. mẫu lành tính Tobiya. tiến trình hệ thống. Không có giới hạn thời gian tối thiểu được đề cập – ngầm định chờ. thực thi đầy đủ Ahmed. Không có giới hạn thời gian tối thiểu được đề cập – ngầm định chờ. thực thi đầy đủ Damodar. 10 phút được đề cập nhưng giới hạn thời. Mô tả Dataset. Dữ liệu đặc trưng sử dụng. Thời gian thu thập dữ liệu. hành vi động/mẫu Số. Số lượn g mẫu lành tính. gian tổng thể không nờu rừ ràng. Ít nhất 15 bước – thời gian chính xác không. được báo cáo Hansen. Bài toán phát hiện sớm mã độc IoT Botnet. Với nội dung khảo sát và đánh giá được trình bày, hạn chế chính của mô hình đã được phân tích trên bao gồm:. 1) Thời điểm phát hiện và độ chính xác chưa tối ưu do chỉ sử dụng các đặc trưng đơn lẻ và yêu cầu thu thập dữ liệu chuỗi hành vi đầy đủ để phát hiện;. 2) Chưa hỗ trợ phát hiện các mã độc IoT Botnet đa kiến trúc CPU;. 3) Mô hình phát hiện chưa tận dụng tối đa các dữ liệu đặc trưng của IoT Botnet như lời gọi hệ thống, luồng mạng, chiếm dụng tài nguyên thiết bị.

Mô hình đề xuất

Mô tả Dataset. Dữ liệu đặc trưng sử dụng. Thời gian thu thập dữ liệu. hành vi động/mẫu Số. Số lượn g mẫu lành tính. gian tổng thể không nờu rừ ràng. Ít nhất 15 bước – thời gian chính xác không. được báo cáo Hansen. Bài toán phát hiện sớm mã độc IoT Botnet. Với nội dung khảo sát và đánh giá được trình bày, hạn chế chính của mô hình đã được phân tích trên bao gồm:. 1) Thời điểm phát hiện và độ chính xác chưa tối ưu do chỉ sử dụng các đặc trưng đơn lẻ và yêu cầu thu thập dữ liệu chuỗi hành vi đầy đủ để phát hiện;. 2) Chưa hỗ trợ phát hiện các mã độc IoT Botnet đa kiến trúc CPU;. 3) Mô hình phát hiện chưa tận dụng tối đa các dữ liệu đặc trưng của IoT Botnet như lời gọi hệ thống, luồng mạng, chiếm dụng tài nguyên thiết bị. Do đó, với kết quả số liệu thống kê dữ liệu thu thập được từ Dataset, nghiên cứu sinh lựa chọn các ngưỡng dữ liệu tối thiểu sử dụng để phát hiện là 300 lời gọi hệ thống, 20 hành vi thay đổi tài nguyên thiết bị và 50 gói tin luồng mạng đầu tiên thu nhận được từ môi trường Sandbox để huấn luyện các mô hình học máy đơn lẻ phục vụ mục tiêu đạt hiệu quả phát hiện sớm mã độc cao nhất.

Hình 4.4 Kiến trúc của mơ hình đề xuất
Hình 4.4 Kiến trúc của mơ hình đề xuất

02 Bảng 4.5 Các mô hình học máy sau khi tối ưu trên Dataset

10.1109/COMPSAC.2016.151

Berlin, ‘Deep Neural Network Based Malware Detection Using Two Dimensional Binary Program Features’, ArXiv150803096 Cs, Aug. Pedersen, ‘An approach for detection and family classification of malware based on behavioral analysis’, 2016, pp.