CHƯƠNG 1 TỔNG QUAN VỀ THIẾT BỊ IOT VÀ MÃ ĐỘC IOT BOTNET
1.3. Quy trình phát hiện mã độc IoT Botnet
1.3.3.1. Tiền xử lý dữ liệu luồng mạng
Với đặc điểm của mã độc IoT Botnet lây nhiễm và thực hiện hành vi độc hại dựa trên kết nối mạng Internet, nhiều nhà nghiên cứu đã tập trung tìm hiểu và sử dụng dữ liệu luồng mạng để phát hiện loại mã độc này. Đối với những dữ liệu mạng thu thập được (chủ yếu dưới dạng lưu lượng các gĩi tin được chặn bắt lưu trữ dưới dạng tệp pcap), tồn tại hai phương pháp tiền xử lý dữ liệu chính là biến đởi thành các bảng dữ liệu đặc trưng dựa trên đặc điểm tần xuất hoặc tuần tự của dữ liệu mạng. Các bảng dữ liệu đặc
Đặc điểm
IoT Sandbox
Khả năng hỡ trợ Khả năng thu thập dữ liệu động
Tự Đa kiến trúc vi xử lý Đa hệ điều hành Kết nối tới C&C Server Thư viện liên kết động Luờng mạng Lời gọi hệ thống Tương tác với tệp hệ thống Tương tác tài nguyên thiết bị Tự động sinh báo cáo Cuckoo [49] Y Y N N Y NF Y N Y IoTBOX [43] Y Y N N Y N N N NF Limon [52] N N N N Y Y Y N Y REMnux [48] N N N N N Y N N Y Detux[54] N N N N Y N N N Y Padawan [53] Y Y N N N Y Y N Y LiSa [51] Y Y N NF Y Y Y N Y
Sandbox Dữ liệu thu thập Hỡ trợ OS Hỡ trợ CPU viện liên kếtHỡ trợ thư động Dựa trên trình mơ phỏng Padawan [53] Low-level kernel probes and user probes
Linux MIPS, ARM,i386, x86-64, SPARC, PPC, Khơng QEMU LiSa [51] Process tree, Trace syscalls, File actions, Network traffic
Linux MIPS, ARM, Intel80386, x86-64, Aarch64
trưng này thường được cơng bố cơng khai phục vụ cơng tác nghiên cứu và phát triển các hệ thống tự động phát hiện xâm nhập dựa trên dữ liệu mạng (NIDS). Tiêu biểu cho những dữ liệu này là các dataset như KDD99 [55], NSL-KDD [56], UNSW-NB15 [41], CSE-CIC-IDS2018 [57] và N-BaIoT [58].
Dataset KDD99 [55] là tập dữ liệu sử dụng để huấn luyện và kiểm tra các NIDS được cơng bố tại Hội nghị quốc tế lần thứ 3 về Cơng cụ khai thác dữ liệu và khai phá dữ liệu (KDDMTC). Bộ dữ liệu này là phiên bản tiền xử lý dữ liệu của tập dữ liệu thơ DARPA (chứa các tệp tin pcap chặn bắt luồng mạng). KDD99 chứa các bản ghi tĩm lược thơng tin luồng mạng được ghi nhận từ mơi trường mạng quân sự với các cuộc tấn cơng được mơ phỏng. Các cuộc tấn cơng được mơ phỏng thuộc bốn kiểu chính gồm: Tấn cơng từ chối dịch vụ; Chiếm quyền điều khiển từ xa; Leo thang đặc quyền; Tấn cơng thăm dị. Bộ dữ liệu KDD99 được trích xuất dựa trên 41 đặc trưng cho mỗi kết nối với sự trợ giúp của cơng cụ Bro-IDS. Các đặc trưng này gồm 4 nhĩm chính theo thứ tự là:
- Nhĩm 1 (các đặc trưng từ 1 đến 9): Các đặc trưng cơ bản của các kết nối TCP riêng lẻ;
- Nhĩm 2 (các đặc trưng từ 10 đến 22): Các đặc trưng nội dung trong kết nối với máy chủ bị tấn cơng;
- Nhĩm 3 (các đặc trưng từ 23 đến 31): Các đặc trưng về lưu lượng truy cập trong khoảng thời gian 2 giây.
- Nhĩm 4 (các đặc trưng từ 32 đến 41): Các đặc trưng về lưu lượng truy cập trong khoảng thời gian lớn hơn 2 giây (thường lên tới 256 giây).
Bộ dữ liệu KDD99 được sử dụng cho nhiều nghiên cứu và ứng dụng thực tế xây dựng NIDS [59–61]. Các nghiên cứu này đa số sử dụng lại 41 đặc trưng được tiền xử lý của bộ dữ liệu KDD99 để xây dựng, phát triển NIDS. Trong đĩ, cĩ một số nghiên cứu lựa chọn một tập con cĩ liên quan từ 41 đặc trưng này để nâng cao hiệu quả phát hiện mã độc. Tuy nhiên, một vài nghiên cứu [62–64] đã chỉ ra những nhược điểm của bộ dữ liệu này, cụ thể bao gồm:
- Phân phối tỉ lệ các mẫu trong bộ huấn luyện và kiểm thử là khơng thống nhất và bị mất cân bằng trong từng bộ con này.
- Bộ dữ liệu đã lỗi thời, khơng đáp ứng với sự phát triển của thiết bị IoT và mã độc IoT Botnet.
- Cĩ các kiểm nghiệm chứng minh rằng tỉ lệ mẫu trong bộ dữ liệu quá lệch dẫn tới kết quả phát hiện lưu lượng bất thường bị sai quá nhiều.
Dataset NSL-KDD [56] là bộ dữ liệu nâng cấp dựa trên KDD99 để khắc phục các nhược điểm của bộ dữ liệu cũ này. Đầu tiên, các bản ghi trùng lặp trong bộ dữ liệu huấn luyện và kiểm thử được loại bỏ. Tác giả điều chỉnh lại phân phối xác suất các mẫu tấn cơng cho cân bằng để đạt hiệu quả phân loại cao hơn. Tuy nhiên, vấn đề chính của bộ dữ liệu dựa trên KDD99 nĩi chung và NSL-KDD nĩi riêng là thiếu cập nhật các kịch bản tấn cơng của mã độc IoT Botnet hiện nay.
Dataset UNSW-NB15 [41] được tạo ra vào năm 2015 bởi Phịng thí nghiệm CyberRange của Trung tâm An ninh mạng Úc (ACCS) với sự trợ giúp của cơng cụ IXIA PerfectStorm. Mục tiêu của nĩ là tạo ra bộ dữ liệu lưu lượng mạng cập nhật các hoạt động bình thường và tấn cơng mạng hiện đại. Trong bộ dữ liệu này tồn tại 9 kiểu tấn cơng mạng gồm: Fuzzers, Analysis, Backdoor, DoS, Exploits, Generic, Reconnaissance, Shellcode và Worm. Các dữ liệu được tiền xử lý từ 100GB lưu lượng mạng dưới dạng tệp pcap được thu bắt với cơng cụ Tcpdump.
Dataset N-BaIoT [58] là bộ dữ liệu luồng mạng phục vụ phát hiện IoT Botnet dựa trên hai mẫu mã độc phở biến là Mirai và Bashlite. Tác giả thực hiện việc kích hoạt hai phiên bản mã độc IoT Botnet kể trên trong mơi trường thí nghiệm với các phần cứng thiết bị IoT thật như IP Camera, chuơng cửa, cảm biến nhiệt độ phịng, Webcam. Sau đĩ, tiến hành thu giữ các luồng gĩi tin truyền qua thiết bị định tuyến khơng dây bằng kỹ thuật Port mirroring kết hợp với phần mềm Wireshark. Các luồng dữ liệu được lưu trữ dưới dạng tệp pcap thơng dụng và đưa vào tiền xử lý. Mỗi một luồng mạng sẽ được trích xuất nhanh với 23 đặc trưng cơ bản cho 5 cửa sở trượt khác nhau (100ms, 500ms, 1.5s, 10s và 60s). Bộ dữ liệu này cĩ số lượng chiều tập đặc trưng sau tiền xử lý là 115 đặc trưng. Tuy nhiên, do cĩ sự lặp lại của 23 đặc trưng cơ bản với 5 khoảng thời gian khác nhau nên dữ liệu phản ánh trong bộ dữ liệu N-BaIoT cĩ sự trùng lặp, dẫn tới thiếu chính xác cho q trình huấn luyện và kiểm thử.
Dataset CSE-CIC-IDS2018 [57] là một bộ dữ liệu được phát triển nhằm thay thế các dataset đã cĩ cho NIDS. Tác giả thực hiện 7 loại tấn cơng phở biến bao gồm: Brute-
force attacks; DoS attacks; Web attacks; Local network infiltration attacks; Botnet attacks; DDoS+PortScan attacks. Với mơi trường mơ phỏng được xây dựng gồm 50 nút mạng với 30 máy chủ và 420 thiết bị đầu cuối. Tác giả đã trích xuất từ dữ liệu luồng mạng được thu thập thành 80 đặc trưng cơ bản với sự trợ giúp của cơng cụ
CICFlowMeter-V3. Với việc sử dụng bộ dữ liệu này, nhiều nghiên cứu về xây dựng NIDS phục vụ phát hiện mã độc IoT Botnet nĩi riêng và luồng mạng bất thường nĩi chung đã được cơng bố trong thời gian gần đây [65]–[68]. Điều này đã chứng minh tính hiệu quả của bộ dữ liệu này với cách thức tiền xử lý đưa ra 80 đặc trưng phù hợp. Vì vậy, cách tiền xử lý dữ liệu này sẽ được nghiên cứu sinh lựa chọn áp dụng cho việc tiền xử lý dữ liệu luồng mạng được đề cập trong Chương 4 của luận án.