Tóm tắt Luận án Tiến sĩ: Nghiên cứu phát triển phương pháp phát hiện các lỗi bảo mật an ninh cho phần mềm nhúng và cách khắc phục

29 18 0
Tóm tắt Luận án Tiến sĩ: Nghiên cứu phát triển phương pháp phát hiện các lỗi bảo mật an ninh cho phần mềm nhúng và cách khắc phục

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mục tiêu của luận án là phát triển các công cụ, đề xuất các thuật toán mới có độ chính xác cao và tốc độ xử lý nhanh để phát hiện mã độc trong các thiết bị IoT sử dụng hệ điều hành Linux nhúng và các vi xử lý nhúng, đặc biệt là MIPS.

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Trần Nghi Phú NGHIÊN CỨU PHÁT TRIỂN PHƯƠNG PHÁP PHÁT HIỆN CÁC LỖI BẢO MẬT AN NINH CHO PHẦN MỀM NHÚNG VÀ CÁCH KHẮC PHỤC TÓM TẮT LUẬN ÁN TIẾN SỸ CÔNG NGHỆ THÔNG TIN Hà Nội - 2019 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Trần Nghi Phú NGHIÊN CỨU PHÁT TRIỂN PHƯƠNG PHÁP PHÁT HIỆN CÁC LỖI BẢO MẬT AN NINH CHO PHẦN MỀM NHÚNG VÀ CÁCH KHẮC PHỤC Chuyên ngành: Kỹ thuật Phần mềm Mã số: 9480103.01 TÓM TẮT LUẬN ÁN TIẾN SỸ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS Nguyễn Ngọc Bình TS Nguyễn Đại Thọ Hà Nội - 2019 Mục lục MỞ 1.1 1.2 1.3 1.4 ĐẦU Bối cảnh Đặt vấn đề Mục tiêu nghiên cứu đóng góp Cấu trúc luận án luận án PHÂN TÍCH MÃ ĐỘC TRONG CÁC HỆ THỐNG NHÚNG 2.1 Tổng quan phân tích mã độc 2.1.1 Khái niệm mã độc 2.1.2 Bài tốn phân tích tự động mã độc 2.1.3 Các đặc trưng mã độc phương pháp trích rút 2.1.4 Sử dụng học máy phát hiện/phân loại mã độc 2.2 Các hệ thống nhúng 2.2.1 Các thiết bị nhúng 2.2.2 Các hệ điều hành nhúng 2.3 Phân tích mã độc hệ thống nhúng 2.3.1 Mã độc hệ thống nhúng 2.3.2 Mơi trường cơng cụ phân tích mã độc hệ thống nhúng 2.3.3 Các phương pháp phân tích mã độc hệ thống nhúng 2.4 Tổng kết chương MỘT GIẢI PHÁP PHÂN TÍCH ĐỘNG ĐỐI VỚI CÁC NHÚNG 3.1 Đặt vấn đề 3.1.1 Mục tiêu yêu cầu đặt 3.1.2 Các thách thức cần giải 3.1.3 Các cơng cụ, liệu có 3.1.4 Cách tiếp cận 3.2 Cấu trúc môi trường phân tích động F-Sandbox 3.3 Quy trình phân lớp mã độc dựa F-Sandbox 3.4 Quy trình phát mã độc dựa F-sandbox 3.5 Thử nghiệm 3.5.1 Kết thử nghiệm quy trình phân lớp mã độc 3.5.2 Kết thử nghiệm quy trình phát mã độc 3.6 Tổng kết chương 1 4 4 7 8 9 10 MÃ ĐỘC 11 11 11 11 12 12 13 14 14 15 15 16 16 PHƯƠNG PHÁP TRÍCH XUẤT ĐẶC TRƯNG DÒNG ĐIỀU KHIỂN CHO PHÁT HIỆN CÁC MÃ ĐỘC NHÚNG 17 4.1 Đặt vấn đề 17 4.1.1 Mục tiêu yêu cầu đặt 17 i 4.2 4.3 4.4 4.5 4.6 4.1.2 Các thách thức cần giải 4.1.3 Các công cụ, liệu có Phương pháp CFD 4.2.1 Cách tiếp cận 4.2.2 Thuật tốn trích xuất đặc trưng CFD Phương pháp CFDVex 4.3.1 Cách tiếp cận 4.3.2 Thuật tốn trích xuất đặc trưng CFDVex Công cụ giải nén phần sụn Kết thực nghiệm 4.5.1 Thực nghiệm bóc tách phần sụn 4.5.2 Thực nghiệm đánh giá phương pháp CFD 4.5.3 Thực nghiệm đánh giá phương pháp CFDVex Tổng kết chương 17 18 18 18 19 20 20 20 21 21 21 21 22 22 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 23 5.1 Các đóng góp chúng tơi 23 5.2 Hướng phát triển 24 Danh mục cơng trình khoa học 25 ii Chương MỞ ĐẦU 1.1 Bối cảnh Internet vạn vật (Internet of Things - IoT) ngày phổ biến, tiếp tục phát triển mạnh dần đóng vai trị quan trọng tương lai Đây thành phần cốt lõi tạo nên cách mạng công nghiệp lần thứ tư, xây dựng thành phố thông minh trực tiếp mang lại nhiều tiện ích nhiều lĩnh vực như: y tế, nông nghiệp, giao thông thông minh, quốc phòng v.v Theo thống kê dự báo Cisco, năm 2017 có khoảng tỉ thiết bị IoT, đến năm 2020 ước tính có 50 tỷ thiết bị IoT kết nối vào mạng Internet Các thiết bị có mặt nơi, từ địa điểm công cộng đến điểm riêng tư, phổ biến thiết bị CameraIP, VoIp, IpTV, thiết bị định tuyến v.v Thiết bị IoT luận án hiểu thiết bị nhúng có kết nối mạng Internet 1.2 Đặt vấn đề Cùng với lỗ hổng bảo mật, mã độc mối đe doạ ảnh hưởng an ninh, an tồn thiết bị IoT Các nguy ảnh hưởng tới thiết bị IoT bao gồm: sách quản lý (31%), lây nhiễm mã độc (26%), công từ chối dịch vụ (13%) công phá hoại kết nối thiết bị IoT (12%) Mã độc IoT tăng nhanh số lượng, sức phá hoại kỹ thuật ngày phức tạp, chi tiết năm trình bày Hình 1.1 Thiết bị IoT có nhiều đặc thù khác với máy tính cá nhân như: hạn chế tài nguyên, thường xuyên kết nối với Internet, nâng cấp v.v Đặc biệt, thiết bị sử dụng kiến trúc vi xử lý hệ điều hành nhúng hồn tồn khác Do đó, khơng thể áp dụng phương pháp mã độc nói chung sang mã độc nhúng, mà cần có phương pháp đặc thù, tối ưu công cụ, môi trường để hỗ trợ phân tích, phát mã độc nhúng Các nghiên cứu mã độc IoT tập trung theo hướng xây dựng công cụ môi trường hỗ trợ, phương pháp tĩnh động phát mã độc Các nghiên cứu phát mã độc IoT trước tập trung chủ yếu vào điện thoại động với hệ điều hành Android kiến trúc vi xử lý ARM Một lượng lớn thiết bị IoT sử dụng hệ điều hành Linux nhúng với kiến trúc phổ biến MIPS chưa đề cập nhiều Phương pháp tĩnh bước đầu có nhiều lợi thế, mã độc IoT sử dụng biện pháp bảo vệ mã hoá, nén, làm rối v.v Nhưng phương pháp Hình 1.1: Số lượng mã độc IoT xuất năm phân tích tĩnh áp dụng hiệu cho máy tính cá nhân áp dụng sang IoT khơng hiệu tốc độ xử lý môi trường đa kiến trúc Do đó, việc nghiên cứu xây dựng sở liệu đầy đủ, công cụ, mơi trường thuật tốn phát hiệu mã độc thiết bị IoT có vai trị quan trọng, có ý nghĩa lớn lý thuyết thực tiễn 1.3 Mục tiêu nghiên cứu đóng góp luận án Mục tiêu luận án phát triển công cụ, đề xuất thuật tốn có độ xác cao tốc độ xử lý nhanh để phát mã độc thiết bị IoT sử dụng hệ điều hành Linux nhúng vi xử lý nhúng, đặc biệt MIPS Các đóng góp luận án gồm: Thứ nhất, xây dựng sở liệu phần sụn thiết bị IoT mã độc IoT, gọi tập liệu Firmware IoT (F-IoT) Đây sở liệu có số lượng lớn đầy đủ phần sụn thiết bị IoT, mã độc mã thiết bị IoT đến thời điểm Tập mã độc F-IoT xây dựng sở kết hợp tập liệu có tạo mới, sau tiến hành phân tích, lọc nhiễu, gán nhãn theo nhiều tiêu chí phục vụ phần thực nghiệm F-IoT tập liệu lớn, sử dụng thực nghiệm luận án có ý nghĩa lớn cho nghiên cứu cộng đồng sau IoT Đóng góp công bố vắn tắt báo cáo hội thảo [PP4, PP7, PP6, PP8] sau đăng thành phiên đầy đủ tạp chí [PP2,PP3] Thứ hai, đề xuất quy trình phát mã độc thiết bị IoT phương pháp phân tích động F-Sandbox loại sandbox mới, chuyên dụng cho thiết bị IoT dựa hệ điều hành Linux nhúng F-Sandbox phát triển dựa QEMU, kế thừa kỹ thuật Firmadyne, có khả mô đầy đủ thành phần vật lý định tuyến, mạng Internet trích xuất lời gọi hệ thống dựa nhân Linux 2.6 sửa đổi (instrumented kernel) Đóng góp chúng tơi công bố vắn tắt báo cáo hội thảo [PP4] sau tiếp tục phát triển theo hai hướng đăng thành phiên đầy đủ tạp chí [PP1, PP2] Thứ ba, đề xuất thuật tốn trích xuất đặc trưng tệp tin thực thi (chương trình chứa mã độc chương trình sạch) dựa luồng điều khiển (Control flow-based feature) có hiệu hiệu suất cao cho việc phát mã độc thiết bị IoT, gọi CFD CFD giải thuật quy hoạt động, có tốc độ xử lý nhanh, sử dụng nhớ, cho phép xử lý tệp tin lớn, có nhiều khối (basic block) Về mặt lý luận thực nghiệm chứng minh, CFD phù hợp cho việc trích chọn đặc trưng chương trình thiết bị IoT Đóng góp chúng tơi cơng bố vắn tắt báo cáo hội thảo [PP5] Cuối cùng, phát triển phương pháp trích chọn đặc trưng CFDVex phát mã độc nhúng đa tảng vi xử lý, tức học mã độc kiến trúc cũ để phát phiên mã độc kiến trúc vi xử lý mới, xu xuất mã độc IoT Phương pháp CFDVex dịch ngược chương trình mã trung gian Vex, sau áp dụng thuật tốn CFD để trích xuất thông tin đặc trưng dựa luồng điều khiển đồ thị với đỉnh chuỗi đại diện lệnh Vex Thực nghiệm cho thấy, CFDVex có khả phát mã độc đa kiến trúc với độ xác cao Đóng góp chúng tơi công bố vắn tắt báo cáo hội thảo [PP6] Các nghiên cứu luận án nhằm xây dựng phương pháp hoàn chỉnh gồm phương pháp động phương pháp tĩnh để phát mã độc thiết bị IoT sử dụng hệ điều hành Linux nhúng nói chung Các thực nghiệm cho kết tốt mở nhiều hướng phát triển 1.4 Cấu trúc luận án Luận án Nghiên cứu phương pháp phát lỗi bảo mật an ninh cho phần mềm nhúng cách khắc phục bao gồm năm chương, cụ thể nội dung chương sau: Chương Mở đầu trình bày lý chọn đề tài nội dung nghiên cứu Chương Phân tích mã độc hệ thống nhúng trình bày kiến thức sử dụng luận án Đầu tiên chương trình bày tổng quan hệ thống nhúng, phần mềm nhúng, loại mã độc thiết bị nhúng Chương Một giải pháp phân tích động mã độc nhúng trình bày kiến trúc F-Sandbox hai quy trình sử dụng F-Sandbox cho phát hiện, phân lớp mã độc thiết bị IoT phương pháp động, sử dụng đặc trưng lời gọi hệ thống Chương Phương pháp đặc trưng dòng điều khiển cho phát mã độc nhúng trình bày hai phương pháp trích xuất đặc trưng dịng điều khiển áp dụng hiệu cho phát mã độc thiết bị IoT CFD CFDVex Chương phân tích đóng góp luận án thảo luận nghiên cứu tương lai từ kết ban đầu đạt Chương PHÂN TÍCH MÃ ĐỘC TRONG CÁC HỆ THỐNG NHÚNG Chương trình bày kiến thức sở liên quan đến phân tích mã độc nói chung, thiết bị nhúng sâu vào phân tích mã độc nhúng Đầu tiên, chúng tơi trình bày tổng quan tốn phân tích mã độc hướng vào tốn sử dụng học máy phân tích mã độc Tiếp theo, chúng tơi trình bày kiến thức sở hệ thống nhúng gồm thiết bị nhúng, hệ điều hành nhúng, hệ điều hành nhúng cụ thể Linux nhúng Phần cuối chương trình bày phân tích mã độc nhúng với nội dung khái niệm, phân loại, đặc điểm, môi trường công cụ phân tích có, phương pháp phân tích mã độc nhúng thời gian gần 2.1 2.1.1 Tổng quan phân tích mã độc Khái niệm mã độc Theo Aycock, mã độc (malware viết tắt Malicious software) chương trình đoạn mã chèn cách bí mật vào hệ thống với mục đích làm tổn hại đến tính tin cậy, tính bảo mật, tính tồn vẹn tính sẵn sàng hệ thống Đa số mã độc khứ sinh tập trung cho máy tính cá nhân sử dụng hệ điều hành Windows Microsoft Tuy nhiên, thời gian gần đây, với phát triển mạnh mẽ IoT, mã độc IoT tăng lên nhanh chóng Ngồi thiết bị di động sử dụng hệ điều hành Android, lượng lớn thiết IoT sử dụng hệ điều hành Linux nhúng (Embedded Linux), sở phát triển mã độc Linux nhúng, gọi tắt mã độc nhúng 2.1.2 Bài tốn phân tích tự động mã độc Bài tốn phân tích mã độc hướng tới ba mục đích: phát mã độc (malware detection), phân tích độ tương tự mã độc (malware similarity analysis) phát loại mã độc (malware category detection) Phát mã độc có mục đích xác định mẫu đầu vào có phải mã độc (malicous) hay khơng Phân tích độ tương tự mã độc điểm giống mã độc, tìm điểm tương tự mã độc xuất với mã độc có từ trước Phát loại mã độc việc dựa hành vi bật mục đích để phân mã độc thành loại khác gián điệp (spy), điều khiển từ xa (remote) v.v Phát dựa hành vi (Behavior-based detection) xác định hành vi bất thường dựa hành vi bình thường mà chúng thu thập dựa hai pha huấn luyện nhận dạng Phát dựa chữ ký (Signature-based detection) phương pháp xây dựng mơ hình hành vi độc hại sử dụng mơ hình để phát mã độc Trích chọn đặc trưng (feature extraction) tiến trình trích xuất thơng tin từ mẫu để thu đặc trưng mẫu phục vụ mục đích phân tích mẫu Q trình thực phương pháp tích pháp tĩnh, phương pháp phân tích động hay kết hợp hai phương pháp Phân tích tĩnh phương pháp phân tích mẫu dựa đặc trưng mẫu mà không cần thực thi chúng Phương pháp phân tích tĩnh cịn tồn nhiều vấn đề tệp tin có dung lượng lớn, phức tạp phương pháp phân tích động đóng vai trị quan trọng Phương pháp phân tích động phương pháp phân tích hoạt động mẫu mẫu thực thi thực (trong môi trường vật lý mô phỏng) 2.1.3 Các đặc trưng mã độc phương pháp trích rút Giả mã thực thi (Operation code - Opcode) lệnh thực vi xử lý Nó mã máy trừu tượng mức thấp hay cịn gọi ngơn ngữ máy để thực thi hoạt động loại vi xử lý định, loại vi xử lý khác lại sử dụng tệp lệnh khác Chuỗi opcode trích xuất từ việc dịch ngược (disassembly) từ tệp tin nhị phân thực thi (executable) mơ tả hành vi chương trình trích xuất thơng qua phân tích tĩnh Kết thu tên lệnh sau: POP, PUSH, MOVE, ADD, SUB v.v Định nghĩa (Đồ thị dòng điều khiển): Đồ thị dòng điều khiển (CFG) tập tin thực thi đồ thị có hướng G = (V, E, r, L), đó: — V tập đỉnh, đỉnh khối (basic block) tập tin thực thi sau dịch ngược, gồm chuỗi câu lệnh liên tiếp mà dịng điều khiển vào điểm khởi đầu điểm kết thúc mà không bị dừng đột ngột xử lý rẽ nhánh trước kết thúc — E tập cạnh, tạo lệnh jumps/calls/rets lệnh thực thi khối chương trình thực thi sau dịch ngược Với cạnh có hướng (u,v), u gọi đỉnh đầu v gọi đỉnh cuối cạnh Khi duyệt đồ thị, u gọi cha v v gọi u; — r đỉnh đầu hay nút gốc đồ thị, có bậc vào (tức khơng có cạnh đến r), khối chứa điểm bắt đầu (Entry block) chương trình; — L tập lá, tức bậc đỉnh (hay từ đỉnh khơng có cạnh nối đến đỉnh khác), khối kết thúc chương trình (Exit block) Lời gọi hệ thống (System call - Syscall) lệnh mà chương trình yêu cầu dịch vụ từ nhân hệ điều hành, bao gồm dịch vụ liên quan đến phần cứng truy cập đĩa hay cạc mạng, tạo hay xử lý tiến trình Khi chương trình thực thi gọi lời gọi hệ thống, đo chuỗi lời gọi hệ thống gọi thực thi chương trình chuỗi hành vi thể đặc trưng chương trình hoạt động Để trích rút đặc trưng từ chuỗi byte, ký tự, lời gọi hệ thống v.v người ta thường sử dụng phương pháp n-gram Phương pháp n-gram đếm tần suất xuất n phần tử liên tiếp để làm đặc trưng, số lần xuất lưu véc tơ để làm đặc trưng cho chuỗi Ví dụ tính 3-gram chuỗi (ABACABACACA) mô tả Bảng 2.1 Bảng 2.1: Tần suất 3-gram chuỗi 3-gram Tần suất 2.1.4 ABA BAC ACA CAB CAC Sử dụng học máy phát hiện/phân loại mã độc Các phương pháp học máy phát mã độc phổ biến Máy véc tơ hỗ trợ (Support Vector Machine-SVM) với 29% đạt độ xác cao nhất, Cây định (Decision Tree - DT) chiếm 14%, Naive Bayes - NB chiếm 10% Rừng ngẫu nhiên (Random Forest - RF) chiếm 5% SVM phương pháp xây dựng siêu phẳng (hyperplane) để phân lớp (classify) tập liệu thành lớp riêng biệt cho độ rộng từ điểm đến siêu phẳng lớn SVM có khả phân hai lớp, áp dụng SVM cho tốn phân lớp có nhiều lớp cần số kỹ thuật One vs One (OvO) One vs Rest (OvR) NB thuật toán phân loại dựa tính tốn xác suất áp dụng định lý Bayes NB thuộc nhóm học có giám sát, thường sử dụng tốn phân lớp văn bản, có thời gian huấn luyện phân lớp nhanh DT kiểu mơ hình dự báo (predictive model), nghĩa ánh xạ từ quan sát vật/hiện tượng tới kết luận giá trị mục tiêu vật/hiện tượng RF phương pháp xây dựng tập hợp nhiều định sử dụng phương pháp bầu (voting) để đưa định biến mục tiêu (target) cần dự báo Phân loại lớp phương pháp cho phép huấn luyện mơ hình phân lớp với liệu huấn luyện có nhãn Khi số chiều véc tơ đặc trưng lớn ảnh hưởng đến tốc độ tính toán Người ta thường áp dụng phương pháp giảm chiều, tức tạo véc tơ đặc trưng K chiều thay cho véc tơ ban đầu có Q chiều (với K < Q) đảm bảo giữ nguyên thông tin véc tơ Q chiều ban đầu có thay đổi đảm bảo độ xác cho phép Các phương pháp không giám sát lọc thông tin dựa mối tương quan đặc trưng với nhau, không sử dụng thông tin nhãn Phương pháp giảm chiều tiêu biểu với trường hợp nhãn PCA Ngược lại, phương pháp giảm chiều dựa nhãn (có giám sát) xác định mối tương quan đặc trưng nhãn Chương MỘT GIẢI PHÁP PHÂN TÍCH ĐỘNG ĐỐI VỚI CÁC MÃ ĐỘC NHÚNG Trong chương này, chúng tơi trình bày mơi trường phân tích động phần mềm nhúng F-Sandbox (Firmware based sandbox) Đây mơi trường phân tích động chuyên dụng cho hệ thống nhúng kiểu xây dựng nhằm tạo mơi trường thích hợp để mô môi trường hoạt động đa dạng thiết bị nhúng, giúp phần mềm nhúng kích hoạt đầy đủ chức Mơi trường thích hợp tạo dựa việc kế thừa môi trường phần sụn thiết bị thực tế thay cho việc sử dụng môi trường chuẩn nghiên cứu trước Trên sở F-Sandbox, chúng tơi đề xuất hai quy trình phát phân lớp mã độc dựa lời gọi hệ thống trích xuất từ F-Sandbox 3.1 3.1.1 Đặt vấn đề Mục tiêu yêu cầu đặt Mục tiêu đặt phát triển sandbox có khả kích hoạt tối đa chức mẫu phần mềm nhúng thực thi sandbox thu thập đầy đủ liệu hành vi phần mềm Từ liệu thu sandbox, phải xây dựng quy trình lựa chọn phương pháp phù hợp để tiền xử lý mẫu, thu thập hành vi qua sandbox, trích chọn đặc trưng từ liệu hành vi huấn luyện/phát có khả phát hiện, phân lớp mã độc với độ xác cao 3.1.2 Các thách thức cần giải Thứ nhất, xây dựng môi trường tương tự thiết bị nhúng thách thức để kích hoạt mã độc nhúng gặp nhiều khó khăn việc xây dựng sandbox cho mơi trường máy tính truyền thống Thứ hai, thơng tin cấu hình mơi trường (thư viện, tệp tin hỗ trợ, tệp tin tài nguyên) hỗ trợ phần sụn thiết bị nhúng đa dạng, cần phát triển chức điều khiển sandbox có khả tự động thích nghi tương ứng để điều khiển hiệu sandbox Việc mô NVRAM mang lại hiệu tốt, song tỉ lệ thành cơng cịn hạn chế, lý số phần sụn yêu cầu Các phương pháp, kỹ thuật, giải thuật liệu xây dựng luận án có tiếp đầu ngữ F, biểu thị dùng cho xử lý phần sụn (Firrmware) 11 thơng tin xác từ NVRAM thiết bị vật lý Thứ ba, Strace có sẵn nhiều chức cho giám sát hành vi hệ thống sử dụng phổ biến, song có hạn chế khơng giám sát tất tiến trình hệ thống, cơng cụ bị số mã độc phát chuyển sang chế độ phịng vệ, khơng kích hoạt chức mã độc Thứ tư, tập mẫu mã độc tập để phục vụ cho nghiên cứu nhiều hạn chế 3.1.3 Các công cụ, liệu có Các giải pháp sandbox cho phân tích mã độc máy tính thơng thường Limon, CwSandbox khơng áp dụng cho việc phân tích mã độc thiết bị IoT khác kiến trúc vi xử lý hệ điều hành Sandbox cho thiết bị IoT chủ yếu sử dụng tảng mô QEMU Cuckoo, Detux, IoTBox IoTBox sandbox phân tích hành mã độc dựa giao thức Telnet để thực cong DDoS Chang cộng đề xuất xây dựng IoT sandbox dựa QEMU hỗ trợ loại kiến trúc nhúng khác Tuy nhiên, sandbox tập trung phân tích mã độc dựa thông tin mạng, không giám sát hành vi hệ thống nên không pháp mã độc IoT có hành vi tác động hệ thống nhiều Linux/theMoon Các sandbox không đề cập đến mô NVRAM Các nghiên cứu phát mã độc qua lời gọi hệ thống cho kết phát tốt nhiều tảng, song chưa có nghiên cứu áp dụng cho MIPS ELF Hiện này, chưa có sandbox hỗ trợ thiết bị IoT sử dụng vi xử lý MIPS có chức thu thập syscall giả lập Internet phục vụ phân tích mã độc 3.1.4 Cách tiếp cận Về mô mạng Internet, kế thừa cách tiếp cận nghiên cứu trước mô mạng Internet InetSim Về công cụ giám sát, luận án sử dụng Kprobe để giám sát lời gọi hệ thống cách sửa nhân Linux Firmadyne Chúng tơi phát triển nhân tích hợp Kprobe để có khả nghe 30 lời gọi hệ thống có tần suất xuất nhiều thực thi mẫu mã độc để phục vụ cho mục đích phát hiện/phân lớp mã độc Về mơ thiết bị ngoại vi, thành phần NVRAM mô dựa Firmadyne kết hợp với thông tin NVRAM thực tế Một số phần sụn không hoạt động với NVRAM mơ phỏng, chúng tơi phát triển công cụ F-Extractor để thu thập phần sụn trực tiếp từ thiết bị, có NVRAM Về việc xây dựng mơi trường thích nghi, nghiên cứu trước thường sử dụng ảnh Linux chuẩn, số nghiên cứu sử dụng môi trường chuyên dụng cho thiết bị nhúng OpenWrt, ảnh QEMU sử dụng F-Sandbox chứa hệ thống tệp tin trích xuất từ phần sụn thực tế bóc tách công cụ F-Extractor (FE) phát triển Cách tiếp cận giúp F-Sandbox tạo mơi trường phần sụn có Về điều khiển sandbox, xây dựng điều khiển có khả hỗ trợ nhiều giao thức có sẵn phần sụn để có khả điều khiển, truyền nhận tệp tin với máy ảo cách hiệu Các thành phần mô mạng Internet điều khiển sandbox phát triển để tự động bước phân tích 12 3.2 Cấu trúc mơi trường phân tích động F-Sandbox F-Sandbox thu thập hành vi hệ thống syscall thơng qua cơng cụ Kprobes tích hợp nhân hệ điều hành Linux INetSim/pyNetsim để cung cấp mô dịch vụ mạng giúp cho mã độc tương tác bộc lộ hành vi Kết thu thập F-Sandbox thơng tin phân tích tĩnh mẫu thử, liệu mạng mẫu sinh dạng tệp tin pcap, log iNetsim/pyNetsim thông tin tương tác với Internet hành vi hệ thống syscall dạng tệp tin syscall log Cấu trúc F-Sandbox có ba thành phần Điều khiển sandbox(Sandbox Controller), máy ảo (virtual machine) máy chủ giả lập Internet (INetSim server) thể Hình 3.1 Hình 3.1: Cấu trúc F-Sandbox — Bộ điều khiển sandbox (Sandbox Controller) tương tác với QEMU monitor thông qua việc gọi lệnh hiển thị cấu hình mạng, restore snapshot Và sanbox controller tương tác với máy ảo thông qua việc gọi thủ tục SSH/Telnet tới máy ảo, truyền tệp tin thực thi từ máy thật vào trong, cấp quyền thực thi, yêu cầu thực thi file, tải tệp tin liệu thu sau chạy mẫu từ máy ảo Máy ảo dựa QEMU, bao gồm hai thành phần ảnh QEMU nhân Linux Nhân Linux sử dụng F-Sandbox nhân Linux chuẩn mà sử dụng F-Kernel — Máy chủ mô Internet: Máy ảo tương tác với INetSim server thông qua việc gửi request (http,ftp,dns ) nhận lại phản hồi giả (fake respond) từ INetSim Các thành phần enp0s3, br0, tap0 giao diện kết nối mạng 13 Hình 3.2: Tiến trình đề xuất để phân lớp mã độc dựa F-Sandbox học máy 3.3 Quy trình phân lớp mã độc dựa F-Sandbox Dựa F-Sandbox, chúng tơi đề xuất quy trình phân lớp mã độc thiết bị nhúng gồm bước Hình 3.2 Quy trình gồm hai pha: pha tạo mơ hình pha phân lớp Trong pha tạo mơ hình, mẫu ELF gán nhãn trích xuất đặc trưng chức tạo véc tơ đặc trưng, sau véc tơ đặc trưng với nhãn đầu vào để huấn luyện mơ hình học máy Chức tạo véc tơ đặc trưng gồm ba bước: khởi tạo F-Sandbox, thực thi sandbox trích xuất đặc trưng Trong pha phân lớp, mẫu chưa biết nhãn trích xuất đặc trưng chức tạo véc tơ đặc trưng với tham số sinh từ pha trước, sau véc tơ đưa vào mơ hình học máy tạo từ pha trước xác định nhãn mẫu đưa vào 3.4 Quy trình phát mã độc dựa F-sandbox Chúng tơi đề xuất quy trình gồm bốn bước để phát mã độc Hình 3.3 Quy trình phát mã độc thiết bị nhúng sử dụng kiến trúc MIPS dựa lời gọi hệ thống kỹ thuật phân loại lớp SVM Các chương trình chạy F-Sandbox để thu thập syscall gọi, syscall biểu diễn dạng đặc trưng n-gram, sau sử dụng phương pháp PCA để giảm số chiều véc tơ đặc trưng 14 Hình 3.3: Quy trình phát mã độc thiết bị IoT dựa phân tích động Do đặc thù tập liệu thực nghiệm có số lượng liệu tập tập mã độc lệch nên sử dụng phân loại lớp SVM 3.5 Thử nghiệm Chúng sử dụng tập liệu thực nghiệm gồm 3.773 mẫu phát với tỉ lệ cao (tức tối thiểu 19/67 phần mềm, bốn phần mềm uy tín Kaspersky, Avast, Avg, Symantec nhận diện mã độc), gọi tập F-IoT Các mẫu lấy từ Detux, VirusShare, IoTPOT Tập mã thu thập từ chương trình có sẵn Linux nhúng, tích hợp sẵn busybox số ứng dụng MIPS Số lượng mẫu thu 258 mẫu 3.5.1 Kết thử nghiệm quy trình phân lớp mã độc Hình 3.4 trình bày kết độ đo F1-Macro, F1-Micro F1-weight với phương pháp học máy khác ngưỡng độ dài nhật ký lời gọi hệ thống khác Nhìn chung, kết cao đồng số với thuật toán Từ thực nghiệm rút số nhận định: Với mẫu MIPS ELF, quy trình chúng tơi đạt kết tốt với phương pháp trích chọn đặc trưng 2-gram phương pháp phân lớp RF, ngưỡng độ dài nhật ký lời gọi hệ thống 400; Kết phương pháp cao, chứng tỏ F-Sandbox hoạt động hiệu bước xây dựng quy trình 15 Hình 3.4: F1-Macro, F1-Micro F1-weight với trích chọn đặc trưng 2-gram 3.5.2 Kết thử nghiệm quy trình phát mã độc Thử nghiệm với tập liệu sinh từ tập F-IoT chọn ngưỡng độ dài syscall log khác 50, 100, 200, 300, 400, 500 Với đặc trưng 1-gram, 2-gram thu được, thử nghiệm giảm chiều PCA với K 20, 40, 80 Riêng với 1-gram, số chiều 345 nên tiến hành thêm thử nghiệm không áp dụng giảm chiều PCA Từ kết thực nghiệm với độ đo F1, AP, AC cho thấy: Các số mơ hình tốt với giá trị F1 cao đạt ngưỡng 0,977; trích xuất syscall log có độ dài 200-300 cho khả phát tốt nhất; sử dụng phương pháp 1-gram đơn giản, khơng gian đặc trưng đạt hiệu cao trường hợp 3.6 Tổng kết chương Chương trình bày mơi trường phân tích động kiểu cho thiết bị nhúng F-Sandbox Nó có khả tự động tạo mơi trường phong phú dựa phần sụn thiết bị nhúng, qua kích hoạt tốt chức phần mềm nhúng, thu thập hành vi hệ thống hành vi mạng phục vụ phát hiện, phân lớp mã độc nhúng Từ F-Sandbox, đề xuất hai quy trình phân tích phát mã độc thiết bị nhúng sử dụng kiến trúc MIPS hệ điều hành Linux (MIPS ELF) Các quy trình cho kết tốt thực nghiệm với liệu lớn F-IoT đề xuất, chứng tỏ F-Sandbox hoạt động hiệu quả, phương pháp sử dụng đề xuất quy trình đắn Kết nghiên cứu cơng bố Tạp chí quốc tế [PP1, PP2], Tạp chí Thơng tin truyền thơng [PP3], hội nghị quốc tế IEEE [PP4], hội nghị nước [PP8] 16 Chương PHƯƠNG PHÁP TRÍCH XUẤT ĐẶC TRƯNG DÒNG ĐIỀU KHIỂN CHO PHÁT HIỆN CÁC MÃ ĐỘC NHÚNG Chương đề xuất hai thuật tốn trích xuất đặc trưng hiệu cho việc phát mã độc thiết bị nhúng giải hai thách thức trên: phương pháp trích xuất đặc trưng dịng điều khiển dựa mã thực thi thuật toán quy hoạch động (CFD) phương pháp trích xuất đặc trưng dịng điều khiển dựa ngôn ngữ trung gian Vex (CFDVex) Thuật toán CFD cho khả phát tốt mã độc nhúng kiến trúc vi xử lý CFDVex phát mã độc đa kiến trúc 4.1 4.1.1 Đặt vấn đề Mục tiêu yêu cầu đặt Thứ nhất, cần cải tiến thuật toán trích xuất đặc trưng dịng điều khiển dựa mã thực thi có khả phát mã độc đảm bảo độ xác cao, giảm độ phức tạp tiêu thụ tài nguyên Thứ hai, phát triển thuật tốn trích xuất đặc trưng hiệu để phát mã độc đa kiến trúc, với tốc độ nhanh, độ xác cao với kịch đánh giá đầy đủ tập liệu lớn để chứng minh tính hiệu Các kịch đánh giá phải bao gồm phát hỗn hợp, so sánh với phương pháp khác kiến trúc vi xử lý, đặc biệt mơ hình huấn luyện từ liệu kiến trúc cũ có khả phát mã độc kiến trúc Thứ ba, cần thu thập tập liệu đầy đủ loại kiến trúc số lượng đủ lớn cần thiết cho việc nghiên cứu mã độc đa kiến trúc đánh giá xác thuật tốn đề xuất 4.1.2 Các thách thức cần giải Thứ nhất, cần xây dựng thuật toán trích xuất dịng điều khiển có hiệu (độ xác cao độ dương tính giả thấp), có độ phức tạp đa thức sử dụng tài nguyên phương pháp cũ Các phương pháp xử lý đồ thị có hướng thường phải bỏ chu trình để đưa đồ thị có hướng khơng có chu trình Thứ hai, lựa chọn loại đặc trưng có khả phát mã độc đa kiến trúc hiệu quả, có cơng cụ hỗ trợ đầy đủ, đồng 17 Thứ ba, thu thập số lượng mẫu mã độc nhúng, đặc biệt mẫu thiết bị nhúng với số lượng lớn đầy đủ chủng loại 4.1.3 Các cơng cụ, liệu có Sử dụng mã thực thi dựa văn (Text-based extraction methods) làm đặc trưng để phát mã độc nhiều nghiên cứu đề cập Ding cộng đề xuất trích xuất đặc trưng dịng điều khiển dựa giải lệnh thực thi (Control flow-based opcode - CFO) đạt độ xác cao phương pháp dựa văn phát mã độc Tuy nhiên, họ phải đối mặt với tốn có độ phức tạp NP-hard duyệt đồ thị liệt kê tất đường từ đỉnh u đến đỉnh v đồ thị Do đó, phương pháp áp dụng với tập tin thực thi đơn giản, không phù hợp với tập tin phức tạp, có kích thước lớn Costin cộng thu thập 32.000 ảnh phần sụn tiến hành phân tích tĩnh chúng Pa cộng thu thập tập liệu mã độc IoT gọi IoTPOT, với 4.000 mã độc IoT, phổ biến Tsunami, Mirai, Bashlite Detux thu thập 9.000 mẫu mã độc nhúng Brash thu thập 1.078 mẫu 128 mẫu mã độc cho ARM Nhiều phương pháp phát mã độc đa tảng đề cập phương pháp tạo chữ ký cho mã độc IoT đa tảng Alhanahnah, sử dụng ngơn ngữ trung gian chun phân tích tệp tin nhị phân Kim, đề xuất ngôn ngữ REIL với khả sử dụng thêm cờ (flags) tính tốn Sepp hay đề xuất ngôn ngữ trung gian MAIL chun cho phân tích mã độc siêu đa hình Alam Tuy nhiên, chúng tơi nhận thấy chưa có nghiên cứu giải toán phát mã độc đa kiến trúc vi xử lý với tập kịch đánh giá đầy đủ tập liệu đủ lớn Vex ngôn ngữ trung gian sử dụng Valgrind, cơng cụ phân tích nhị phân phổ biến tiếng Đây ngôn ngữ độc lập, khơng bị tác động ngơn ngữ đích, hỗ trợ tốt trình dịch mã Vex sử dụng BitBlaze đặc biệt công cụ chuyên phân tích tĩnh IoT Angr 4.2 4.2.1 Phương pháp CFD Cách tiếp cận chúng tơi Về vấn đề trích xuất đặc trưng dòng điều khiển dựa mã thực thi, chúng tơi đề xuất thuật tốn trích xuất đặc trưng dựa ý tưởng quy hoạch động, gọi CFD Đầu tiên, từ CFG mẫu, đề xuất thuật tốn trích tạo đồ thị khơng chu trình AG (Acyclic Graph) Tiếp theo, đồ thị thực thi EDAG (Execution AG) xây dựng từ AG Cuối từ AG xây dựng thuật tốn trích xuất đặc trưng DFO mẫu 18 Về tập liệu cho thiết bị nhúng, hướng tới xây dựng liệu đầy đủ kiến trúc thịnh hành, số lượng lớn, đầy đủ mã độc chương trình Mã độc thu thập lọc từ nguồn có sẵn, chương trình trích xuất từ phần sụn cơng cụ F-Toolkit 4.2.2 Thuật tốn trích xuất đặc trưng CFD Thuật tốn 4.1 Thuật tốn trích xuất đặc trưng dịng điều khiển - CFD Input: Tệp tin thực thi: exeFile Output: feature vector: Đặc trưng dựa dòng điều khiển với n-gram 1: graph = GetCfgFromFile (exeFile) 2: dag = ConstructDag(graph) 3: edag = ConstrucEdag(dag) 4: feature vector = ExtractControlFlowBasedFeature(edag) Return: feature vector Chúng đề xuất phương pháp dựa quy hoạch động để xây dựng EDAG với nhãn đỉnh trọng số cạnh chứa số lượng đường thực thi qua Các bước trình bày Thuật tốn 4.1 Đầu tiên, DAG tạo từ CFG chương trình thực thi Sau đó, EDAG xây dựng từ DAG Khi xây dựng EDAG số đường xây dựng dựa kết trước đó, thuật tốn thực nhanh phương pháp Ding cộng đề xuất Cuối cùng, đặc trưng dựa dòng điều khiển trích xuất từ EDAG Độ phức tạp thuật tốn CFD O(N ) Hình 4.1: Ví dụ EDAG Xây dựng đồ thị có hướng khơng chu trình DAG dựa ý tưởng DFS Xuất phát từ đỉnh gốc, thuật toán thăm đỉnh kề với đỉnh đó, lựa chọn cạnh khơng tạo thành chu trình để xây dựng DAG EDAG có D chứa trọng số cạnh Với cạnh (u,v), D[u,v] số lượng đường thực thi có chứa cạnh (u,v) D[v,u] số đường thực thi ngược (tức đường ngược chiều cạnh từ đỉnh gốc) chứa cạnh (u,v) Thuật toán xây dựng EDAG tệp tin 19 thực thi gồm pha: pha ngược để tính số đường thực thi ngược từ đỉnh gốc, pha xuôi để gán trọng số cho cạnh số đường thực thi chứa cạnh 4.3 4.3.1 Phương pháp CFDVex Cách tiếp cận chúng tơi Về tốn phát mã độc đa kiến trúc, sở ý tưởng thuật toán CFD, chúng tơi đề xuất sử dụng đặc trưng dịng điều khiển dựa ngôn ngữ trung gian Vex (FDV) phương pháp trích xuất đặc trưng CFDVex Tập lệnh thực thi khác với kiến trúc khác nhau, nên thay lệnh thực thi ngôn ngữ trung gian Vex để dùng chung cho kiến trúc vi xử lý khác CFDVex tính n-gram chuỗi Vex tạo thành từ đường thực thi chương trình Phương pháp đề xuất thực nghiệm đánh giá ba kịch khác nhau, có kịch phát chéo kiến trúc 4.3.2 Thuật tốn trích xuất đặc trưng CFDVex Phương pháp trích chọn đặc trưng dịng điều khiển mức ngôn ngữ trung gian Vex (CFDVex) theo ý tưởng thuật toán CFD, đỉnh đồ thị dòng điều khiển tập tin thực thi khối gồm dãy đại diện Vex thay cho dãy mã thực thi Câu lệnh Vex có nhiều dạng khác so với câu lệnh thực thi Chúng có nhiều kiểu, kiểu có nhiều mẫu khác nhau, phải tìm cách chọn đại diện câu lệnh Vex Chúng đề xuất hai cách chọn đại diện cho câu lệnh Vex gọi CFDVex mức mức Với CFDVex mức 1, chọn kiểu câu lệnh Vex làm đại diện cho câu lệnh Với CFDVex mức 2, biểu thức câu lệnh lựa chọn cột Đại diện đề xuất Bảng 4.1 Tương tự với CFD, độ phức tạp thuật toán CFDVex O(N ) Bảng 4.1: Kiểu câu lệnh Vex IR, mẫu câu lệnh đề xuất đại diện Kiểu câu lệnh Put PutI WrTmp Store Các mẫu câu Put(add) = tmp Put(add) = constant PutI(add) = tmp PutI(add) = constant tmp = GET (add) STle (add) = tmp 20 Đề xuất đại diện Put Put.cons PutI PutI.cons Get STle 4.4 Công cụ giải nén phần sụn Chúng tơi phát triển cơng cụ F-Toolkit cho mục đích nhằm nâng cao khả dịch ngược, phân tích phần sụn thành chương trình cho thực nghiệm Quy trình dịch ngược sử dụng cơng cụ F-Toolkit gồm bốn bước: thu thập phần sụn, giải nén phần sụn, tìm kiếm tệp tin phần sụn nhị phân dịch ngược phần sụn 4.5 Kết thực nghiệm 4.5.1 Thực nghiệm bóc tách phần sụn Bộ cơng cụ F-Toolkit thử nghiệm với 13.674 phần sụn, thống kê định dạng tập tin hệ thống thông dụng thiết bị nhúng, đa phần SquashFS F-Toolkit dịch ngược thành công 6.623 tập tin nhị phân thành mã nguồn tường minh Kết dịch ngược F-Toolkit đạt kết tốt Fmk, Firmadyne hay Binwalk Bảng 4.2 Bảng 4.2: Kết thử nghiệm dịch ngược ảnh phần sụn hãng cung cấp thiết bị Firmware Mod Kit Firmadyne F-Toolkits 4.5.2 18 % 37 % 48 % Thực nghiệm đánh giá phương pháp CFD Chúng thu thập tập mã độc IoT từ nguồn IoTPoT, Detux, VirrusShare Sau thu thập, file thực thi ELF chọn kiểm tra lại Virus Total Mẫu thu thập từ hai nguồn: ảnh phần sụn máy tính cá nhân Số lượng chi tiết kiến trúc đề cập Bảng 4.3 Kiến trúc MIPS Bảng 4.3: Thông tin thống kê tập liệu F-IoT MIPS ARM Intel 80386 X86-64 Virus -Share 1.603 2.117 5.492 IoTPot Detux Shared 798 26 F -Mal 5.022 3.038 6.086 F -Benign 1.899 530 1.438 935 912 570 3.282 35 29 586 320 11 914 180 kiến trúc phổ biến kiến trúc nhúng kiến trúc Intel 80386 phổ biến PC Vì vậy, tập liệu thử nghiệm tập trung vào tập tin định dạng thực thi hệ điều hành Linux MIPS Intel Các kết thử 21 nghiệm so sánh với phương pháp Ding phương pháp CFD độ xác F1-Score cho thấy CFD hiệu tất ngưỡng Hình 4.4 Bảng 4.4 so sánh phương pháp Ding phương pháp CFD độ phức tạp thuật tốn, tiêu thụ RAM, trung bình đường hình thành tỷ lệ trích xuất, kết thể CFD vưt trội tất tiêu chí Bảng 4.4: So sánh phương pháp cũ Độ phức tạp thuật toán Tiêu thụ RAM Số đường trung bình tìm thấy Khả trích xuất đặc trưng 4.5.3 Các Ding cộng NP-Hard 6,0 GB 104 86,2% CFD O(N ) 0,4 GB 10303 100% Thực nghiệm đánh giá phương pháp CFDVex Chuỗi Vex khối chương trình trích xuất Angr hỗ trợ Vex mức mức Chi-square sử dụng cho việc giảm chiều véc tơ đặc trưng với K = 350 sử dụng phương pháp 2-gram để trích rút đặc trưng Các độ đo sử dụng để đánh giá mơ hình gồm ACC, FPR, FNR F1-Score Phương pháp Ding chậm để trích xuất tất mẫu MIPS tập F-IoT, so tập T1 tập F-IoT sử dụng Tập có 844 mẫu MIPS, gồm 300 mẫu 544 mẫu mã độc Kết cho thấy, CFDVex cho kết ACC F1-Score tốt cách Ding cộng thấp so với CFD dựa lệnh thực thi Khi huấn luyện tập liệu Intel 80386 đánh giá tập liệu MIPS, tức học Intel phát mã độc cho MIPS, kết đạt độ xác cao (95,72%) với tỉ lệ dương tính giả FPR chấp nhận (3,2%) Nhưng điều ngược lại không đúng, huấn luyện MIPS phát cho Intel kết phát kém, số lượng tập MIPS lớn 4.6 Tổng kết chương Chương trình bày hai phương pháp đề xuất trích xuất đặc trưng theo dịng điều khiển CFD CFDVex Hai phương pháp đề xuất thiết kế để phát hiệu mã độc nhúng, sở thuật toán quy hoạch động, với độ phức tạp thuật toán O(N2 ) Thực nghiệm cho thấy phương pháp đề xuất có tốc độ thực thi nhanh, độ xác cao, sử dụng nhớ Kết nghiên cứu cơng bố Tạp chí quốc tế [PP2], kỷ yếu hội thảo quốc tế [PP5, PP6] 22 Chương KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN IoT trở thành thành phần quan trọng giới ngày Phát mã độc thiết bị IoT sử dụng hệ điều hành Linux có vai trò quan trọng, đảm bảo phát triển bền vững an tồn Tuy nhiên, tốn khó có nhiều thách thức mơi trường đóng gói, đặc thù hạn chế tài nguyên phần cứng lại phong phú chủng loại, công cụ hỗ trợ tập liệu Từ thách thức yêu cầu phải có cách tiếp cận để giải toán phát mã độc thiết bị IoT nói chung thiết bị IoT sử dụng hệ điều hành Linux nói riêng Chúng tơi trình bày mơ hình tổng thể để giải tình liên quan đến mã độc thiết bị IoT, xử lý mã độc cài cắm lây lan trình hoạt động, áp dụng kỹ thuật phân tích tĩnh phân tích động giải toán phát phân lớp mã độc kiến trúc vi xử lý IoT đến phát mã độc đa kiến trúc, phát mã độc chéo kiến trúc Song song với việc nghiên cứu đề xuất mơ hình, thuật tốn mới, chúng tơi tập trung xây dựng công cụ F-Toolkit tập liệu F-IoT phục vụ thực nghiệm nghiên cứu lâu dài 5.1 Các đóng góp chúng tơi Sau thời gian nghiên cứu giải toán phát mã độc thiết bị IoT sử dụng hệ điều hành Linux, chúng tơi có số đóng góp sau: Thứ nhất, chúng tơi xây dựng tập liệu F-IoT, tập liệu mã độc IoT lớn thời điểm tại, phục vụ trực tiếp cho đánh giá thực nghiệm luận án đóng góp quan trọng cho nghiên cứu sau IoT Thứ hai, xây dựng F-Sandbox sandbox chuyên dụng cho thiết bị IoT dựa hệ điều hành Linux nhúng F-Sandbox có khả mô đầy đủ thành phần thông tin thiết bị định tuyến, tạo nhiều phiên khác tương ứng với môi trường đa dạng thiết bị IoT, giúp thực thi giám sát hiệu mã độc Thực nghiệm chứng minh, liệu thu từ F-Sandbox có khả phát mã độc với độ xác cao Thứ ba, đề xuất hai thuật tốn trích chọn đặc trưng để phát mã độc thiết bị IoT Hai thuật tốn trích xuất đặc trưng theo dịng điều khiển (Control 23 flow-based feature) dựa mã thực thi ngơn ngữ trung gian Vex Thuật tốn CFD dựa opcode để phát mã độc kiến trúc, cịn CFDVex dựa ngơn ngữ trung gian Vex để phát mã độc đa tảng Thực nghiệm chứng minh, hai thuật tốn có tốc độ xử lý nhanh, độ phức tạp O(N2 ), với N số khối tệp tin thực thi dịch ngược CFDVex cho phép phát mã độc kiến trúc từ mơ hình huấn luyện kiến trúc cũ Các nghiên cứu nhằm xây dựng phương pháp hoàn chỉnh gồm phương pháp động phương pháp tĩnh để phát mã độc thiết bị định tuyến nói riêng thiết bị IoT sử dụng hệ điều hành Linux nhúng nói chung Các thực nghiệm cho kết tốt mở nhiều hướng phát triển Các kết công bố cơng trình khoa học đăng tải hội nghị, tạp chí chuyên ngành nước quốc tế có phản biện 5.2 Hướng phát triển Một số hướng phát triển chúng tôi: Thứ nhất, F-Sandbox, số mẫu mã độc chưa kích hoạt thiếu mơi trường phát chế giám sát Nghiên cứu hướng tới kỹ thuật cụ thể mã độc để cải tiến mơi trường thực thi F-Sandbox có khả mở rộng cho đa kiến trúc, cài đặt triển khai cho môi trường MIPS, tiếp tục hồn thiện cho mơi trường khác Thứ hai, phần sụn nghiên cứu luận án tập trung đa số ảnh dạng đầy đủ Với ảnh không đầy đủ, hay cập nhật phần sụn cần có nghiên cứu thử nghiệm, đánh giá đề xuất phương pháp bóc tách, đánh giá hợp lý Đây mảng nghiên cứu chưa đề cập nhiều Thứ ba, phát mã độc đa kiến trúc đặc trưng mã độc thiết bị IoT, chúng tơi tiếp tục cải tiến phương pháp trích chọn đặc trưng đa tảng để nâng cao khả phát Thứ tư, pháp triển phương pháp loại bỏ mã độc khỏi phần sụn thiết bị IoT Mã độc nhúng tồn hình thức lây lan trình hoạt động mã độc không thường trú nên việc loại bỏ đơn giản khởi động lại thiết bị, tất nhiên nhiều trường hợp không cho phép khởi động lại Các mã độc cài cắm thiết bị sau bị loại bỏ cần có phương pháp đảm bảo hệ thống hoạt động ổn định Đây nội dung nghiên cứu tiếp tục hoàn thiện thời gian 24 DANH MỤC CÁC CƠNG TRÌNH KHOA HỌC CỦA TÁC GIẢ LIÊN QUAN ĐẾN LUẬN ÁN (PP1) Tran Nghi Phu, Nguyen Ngoc Binh, Hoang Dag Kien, Ngo Quoc Dung, Nguyen Dai Tho A Novel Framework to Classify Malware in MIPS Architecture-based IoT Devices Security and Communication Networks 2019 (SCIE index, Q2, IF = 1,32) (Accepted) (PP2) Tran Nghi Phu, Ngo Quoc Dung, Le Van Hoang, Nguyen Dai Tho, Nguyen Ngoc Binh A System Emulation for Malware Detection in Routers International Journal of Innovative Technology and Exploring Engineering (IJITEE) ISSN: 22783075, Volume-8, Issue-11, Septemper 2019, pp 32-40 (Scopus index) (PP3) Trần Nghi Phú, Ngô Quốc Dũng, Nguyễn Đại Thọ, Nguyễn Ngọc Bình, and Hồng Đăng Kiên Phát Hiện Mã Độc Trên Các Thiết Bị IoT Dựa Trên Lời Gọi Syscall Phân Loại Một Lớp SVM Tạp chí Thông tin Truyền thông, ISSN 1859-3550, 2018, pp 150-158 (PP4) Tran Nghi Phu, Nguyen Ngoc Binh, Ngo Quoc Dung, and Le Van Hoang Towards Malware Detection in Routers with C500-Toolkit In 2017 5th International Conference on Information and Communication Technology (ICoIC7), pp 1-5, 2017 https://doi.org/10.1109/ICoICT.2017.8074691 (Scopus index) (PP5) Tran Nghi Phu, Nguyen Ngoc Toan, Le Hoang, Nguyen Dai Tho, and Nguyen Ngoc Binh C500-CFG: A Novel Algorithm to Extract Control Flow-based Features for IoT Malware Detection.19th International Symposium on Communications and Information Technologies (ISCIT), 2019, Hochiminh, Vietnam, pp 568-573 (PP6) Tran Nghi Phu, Nguyen Ngoc Binh, Nguyen Dai Tho, Nguyen Ngoc Toan, and Le Huy Hoang CFDVex: A Novel Feature Extraction Method for Detecting CrossArchitecture IoT Malware The tenth international Symposium on Information and Communication Technology (SoICT 2019), Dec-2019, Hanoi, Vietnam (Accepted, Scopus index) (PP7) Trần Nghi Phú, Ngô Quốc Dũng, Nguyễn Huy Trung, Nguyễn Ngọc Bình Mơ Hình Phát Hiện Mã Độc Trong Phần Mềm Nhúng Trên Thiết Bị Định Tuyến Hội Nghị Khoa Học Hội Thảo Quốc Gia Lần Thứ XIX: Một Số Vấn Đề Chọn Lọc CNTT&TT - Hà Nội, 2016, pp 206-212 (PP8) Trần Nghi Phú, Nguyễn Huy Trung, Ngô Quốc Dũng, Nguyễn Ngọc Bình, and Nguyễn Đại Thọ Phát Triển Cơng Cụ Dịch Ngược Firmware Trên Thiết Bị Định Tuyến Hội Nghị Khoa Học Hội Thảo Lần Thứ I: Một Số Vấn Đề Chọn Lọc an Tồn Thơng Tin, 9-2016, pp 108-115 25 ... Trần Nghi Phú NGHIÊN CỨU PHÁT TRIỂN PHƯƠNG PHÁP PHÁT HIỆN CÁC LỖI BẢO MẬT AN NINH CHO PHẦN MỀM NHÚNG VÀ CÁCH KHẮC PHỤC Chuyên ngành: Kỹ thuật Phần mềm Mã số: 9480103.01 TÓM TẮT LUẬN ÁN TIẾN SỸ CÔNG... Nghiên cứu phương pháp phát lỗi bảo mật an ninh cho phần mềm nhúng cách khắc phục bao gồm năm chương, cụ thể nội dung chương sau: Chương Mở đầu trình bày lý chọn đề tài nội dung nghiên cứu Chương... phương pháp động phương pháp tĩnh để phát mã độc thiết bị IoT sử dụng hệ điều hành Linux nhúng nói chung Các thực nghiệm cho kết tốt mở nhiều hướng phát triển 1.4 Cấu trúc luận án Luận án Nghiên cứu

Ngày đăng: 17/09/2021, 14:55

Từ khóa liên quan

Mục lục

  • 1 MỞ ĐẦU

    • 1.1 Bối cảnh

    • 1.2 Đặt vấn đề

    • 1.3 Mục tiêu nghiên cứu và các đóng góp chính của luận án

    • 1.4 Cấu trúc luận án

    • 2 PHÂN TÍCH MÃ ĐỘC TRONG CÁC HỆ THỐNG NHÚNG

      • 2.1 Tổng quan về phân tích mã độc

        • 2.1.1 Khái niệm mã độc

        • 2.1.2 Bài toán phân tích tự động mã độc

        • 2.1.3 Các đặc trưng của mã độc và phương pháp trích rút

        • 2.1.4 Sử dụng học máy trong phát hiện/phân loại mã độc

        • 2.2 Các hệ thống nhúng

          • 2.2.1 Các thiết bị nhúng

          • 2.2.2 Các hệ điều hành nhúng

          • 2.3 Phân tích mã độc trong các hệ thống nhúng

            • 2.3.1 Mã độc trong các hệ thống nhúng

            • 2.3.2 Môi trường và công cụ phân tích mã độc trên hệ thống nhúng

            • 2.3.3 Các phương pháp phân tích mã độc trong hệ thống nhúng

            • 2.4 Tổng kết chương

            • 3 MỘT GIẢI PHÁP PHÂN TÍCH ĐỘNG ĐỐI VỚI CÁC MÃ ĐỘC NHÚNG

              • 3.1 Đặt vấn đề

                • 3.1.1 Mục tiêu và các yêu cầu đặt ra

                • 3.1.2 Các thách thức cần giải quyết

                • 3.1.3 Các công cụ, bộ dữ liệu đã có

                • 3.1.4 Cách tiếp cận của chúng tôi

                • 3.2 Cấu trúc môi trường phân tích động F-Sandbox

                • 3.3 Quy trình phân lớp mã độc dựa trên F-Sandbox

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan