Tổng quan luận án
Tính cấp thiết và khoảng trống nghiên cứu
Sự bùng nổ của cuộc Cách mạng công nghiệp 4.0 và công nghệ Vạn vật kết nối Internet (Internet of Things - IoT) đã dẫn đến sự gia tăng nhanh chóng về số lượng thiết bị thông minh được ứng dụng trong nhiều lĩnh vực như nhà thông minh, giao thông thông minh và y tế thông minh. Theo dự báo của Statista (Đức), số lượng thiết bị IoT toàn cầu ước đạt gần 75 tỷ thiết bị vào năm 2025 (tăng từ 23,14 tỷ thiết bị năm 2018). Báo cáo của IoT Analytics cũng chỉ ra giá trị kinh tế do IoT mang lại dự kiến đạt từ 2.700 tỷ USD đến 6.700 tỷ USD trước năm 2025. Tuy nhiên, sự phát triển này đi kèm với các thách thức lớn về an toàn thông tin:
- Nghiên cứu của Gartner ước tính đến năm 2020 có 25% các cuộc tấn công hệ thống thông tin tập trung vào thiết bị IoT.
- Báo cáo của OWASP (Open Web Application Security Project) cho thấy 75% thiết bị IoT có nguy cơ bị tấn công xâm nhập.
- Theo Kaspersky, số lượng mã độc trên thiết bị IoT năm 2018 đã tăng hơn 37 lần so với năm 2016 và riêng số lượng mã độc IoT botnet năm 2018 tăng 73% so với năm 2017. Vụ tấn công từ chối dịch vụ phân tán (DDoS) của mã độc Linux.Mirai vào nhà cung cấp Dyn tháng 10/2016 với lưu lượng đạt 1,2 Tbps lây nhiễm trên diện rộng (từ 400.000 đến 1,2 triệu thiết bị) là minh chứng cho mức độ đe dọa của IoT botnet.
Khoảng trống nghiên cứu được tác giả xác định xuất phát từ các giới hạn thực tế:
- Đa số nghiên cứu phát hiện mã độc botnet hiện nay tập trung vào các hệ thống không hạn chế tài nguyên (như máy tính cá nhân truyền thống kiến trúc x86) hoặc chỉ thực nghiệm trên mã độc IoT botnet đơn kiến trúc.
- Các thiết bị IoT trong thực tế có tính không đồng nhất cao, đa dạng về kiến trúc vi xử lý (ARM, MIPS, PowerPC, MIPSEL, Sparc, Renesas SH, SuperH, x86-64), trong đó đa số là thiết bị hạn chế tài nguyên (bộ nhớ thấp, năng lực tính toán nhỏ, dung lượng pin hạn chế).
- Các phương pháp phát hiện hiện hành chủ yếu dựa trên bộ luật (rule-based) hoặc dựa trên luồng mạng (flow-based), dễ bị vượt qua bởi các kỹ thuật gây rối và có tỷ lệ cảnh báo nhầm cao. Ngược lại, các phương pháp tiếp cận theo hướng cấu trúc đồ thị luồng điều khiển (CFG), đồ thị luồng dữ liệu (DFG) hoặc thực thi biểu trưng (symbolic execution) lại có độ phức tạp tính toán rất lớn, khó khả thi trên tập dữ liệu quy mô lớn.
Mục tiêu nghiên cứu
Luận án xác định mục tiêu nghiên cứu là đề xuất một đặc trưng có cấu trúc đồ thị mới và hiệu quả (đạt độ chính xác cao, độ phức tạp tính toán thấp) trong bài toán phát hiện mã độc IoT botnet, đồng thời có khả năng xử lý hiệu quả mã độc IoT botnet đa kiến trúc.
Câu hỏi và nội dung nghiên cứu
Để hiện thực hóa mục tiêu trên, luận án triển khai 4 nội dung nghiên cứu cụ thể:
- Nghiên cứu sự phát triển, tiến hóa và đặc điểm hành vi vòng đời lây nhiễm của mã độc IoT botnet, đồng thời phân tích các phương pháp phát hiện mã độc IoT botnet hiện nay.
- Khảo sát, phân tích và thực nghiệm đánh giá lại các phương pháp phát hiện mã độc IoT botnet dựa trên phân tích tĩnh hiện có trên cùng một bộ cơ sở dữ liệu lớn và môi trường thử nghiệm chuẩn hóa.
- Nghiên cứu và đề xuất đặc trưng mới có cấu trúc đồ thị (đồ thị PSI - Printable String Information) trong phát hiện mã độc IoT botnet kết hợp với mô hình học sâu.
- Nghiên cứu đề xuất đặc trưng đồ thị con PSI có gốc (PSI-rooted subgraph) kết hợp với các thuật toán học máy cơ bản nhằm tối ưu hóa độ chính xác và giảm thiểu độ phức tạp tính toán.
Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu: Các tập tin thực thi nhị phân (định dạng ELF - Executable and Linkable Format) trên nền tảng hệ điều hành Linux Kernel 2 của các thiết bị IoT đa kiến trúc, bao gồm cả tập tin mã độc (thu thập từ mạng bẫy honeypot, sandbox) và tập tin lành tính (bóc tách từ phần sụn - firmware của thiết bị IoT).
- Phạm vi nghiên cứu:
- Về bài toán: Tập trung vào bài toán phát hiện mã độc nhị phân (Binary Classification: phân biệt mẫu mã độc botnet và mẫu lành tính).
- Về loại mã độc: Tập trung chuyên sâu vào mã độc IoT botnet.
- Về loại thiết bị: Tập trung vào nhóm thiết bị IoT hạn chế tài nguyên (IP Camera, thiết bị định tuyến SOHO, thiết bị chuyển mạch, khóa cửa thông minh).
- Về phương pháp phân tích: Lựa chọn hướng tiếp cận phân tích tĩnh (Static Analysis) nhằm giải quyết thách thức đa kiến trúc mà không cần khởi tạo môi trường thực thi động phức tạp.
Tổng quan tài liệu và vị trí của luận án
Các hướng nghiên cứu trong nước
- Viện Chiến lược Thông tin và Truyền thông (Bộ Thông tin và Truyền thông) đã thực hiện đề tài “Nghiên cứu xu thế phát triển, những tác động của công nghệ IoT và đề xuất giải pháp quản lý phù hợp” (mã số 40-15-KHKT-RD), tập trung vào chính sách quản lý, tiêu chuẩn cơ sở hạ tầng và an toàn thông tin mức ứng dụng cơ bản.
- Nhóm nghiên cứu tại Trung tâm An toàn An ninh Thông tin - Đại học Bách khoa Hà Nội (Luangoudom Sonexay và cộng sự [1], Nguyễn Văn Tánh và cộng sự [2]) đã công bố các giải pháp phát hiện tấn công trong mạng IoT, tập trung vào phân tích các dạng tấn công nhắm vào giao thức định tuyến RPL (Routing Protocol for Low-Power and Lossy Networks).
Các hướng nghiên cứu quốc tế
-
Bảo mật kênh truyền và phân tích phần sụn diện rộng:
- James King và cộng sự [72] phát triển giải pháp bảo mật nhẹ bảo vệ kênh truyền giữa thiết bị IoT tài nguyên hạn chế và gateway.
- Costin và cộng sự (Eurecom, Pháp) [10] phân tích 32.256 phần sụn (firmware), phát hiện hơn 38 loại lỗ hổng zero-day và nhiều cổng hậu (backdoor).
- Châu Âu thành lập Cụm dự án nghiên cứu trên IoT (CERP-IoT) từ năm 2010 nhằm thúc đẩy an ninh mạng IoT.
- Các nhà nghiên cứu Nhật Bản giới thiệu giải pháp IoTProtect [106] dựa trên tác tử phần mềm và danh sách trắng (whitelist) kiểm tra tiến trình định kỳ.
- Yashaswini và cộng sự [109], Rafiullah Khan và cộng sự [16] phân loại các mối đe dọa chính gồm giả mạo, phần mềm độc hại, thăm dò và từ chối dịch vụ.
-
Phát hiện botnet trên thiết bị truyền thống và hạn chế tài nguyên:
- Zhao và cộng sự [27], Chowdhury và cộng sự [9], Homayoun và cộng sự [67] nghiên cứu phát hiện mã độc botnet trên máy tính cá nhân (PC không hạn chế tài nguyên).
- Elisa Bertino và cộng sự [58], Kolias và cộng sự [77] nghiên cứu giải pháp hạn chế lây nhiễm mã độc IoT botnet.
- Haddadpajouh và cộng sự [14], Azmoodeh và cộng sự [36], Su và cộng sự [25] đề xuất các mô hình phát hiện mã độc IoT botnet nhưng chủ yếu đánh giá trên dữ liệu đơn kiến trúc.
-
Phân tích động và môi trường mô phỏng:
- Celeda và cộng sự [45] phân tích mã độc Chuck Norris trên modem kiến trúc MIPS.
- Jonas và cộng sự [111] phát triển framework Avatar kết hợp QEMU với phần cứng thực tế qua cổng UART/JTAG.
- Yin Minn Pa Pa và cộng sự [22] triển khai hệ thống mạng bẫy Telnet và công cụ IoTBOX phân tích mã độc đa kiến trúc mức lưu lượng mạng.
- Ahmad Darki và cộng sự [54] phát triển hệ thống RARE trên nền tảng QEMU phân tích hành vi mã độc router SOHO.
-
Phân tích tĩnh và cấu trúc đồ thị:
- Yan Shoshitaishvili và cộng sự [24] đề xuất framework Angr trích xuất đồ thị luồng điều khiển (CFG) và luồng dữ liệu (DFG) kết hợp thực thi biểu trưng (symbolic execution), nhưng độ phức tạp rất cao trên tập tin kích thước lớn.
-
Tổng hợp phả hệ tiến hóa của các dòng mã độc IoT botnet:
Văn bản tổng kết sự tiến hóa liên tục của các dòng mã độc IoT từ năm 2008 đến 2018:
- Linux.Hydra (2008): Mã nguồn mở đầu tiên tấn công router MIPS qua kỹ thuật SYN Flood trên nền IRC.
- Psyb0t (2009) và Chuck Norris (2010): Lây nhiễm qua MIPS little-endian, khai thác telnet và chặn các cổng TCP 22, 23, 80.
- Tsunami/Kaiten (2012): IRC bot hỗ trợ HTTP Layer 7 Flood, sửa đổi
/etc/rc.local và /etc/init.local.
- Aidra/LightAidra (2012): Mở rộng hỗ trợ đa kiến trúc (MIPS, ARM, PowerPC, SuperH, x86) và lưu trữ tạm thời tại
/var/run, /var/tmp.
- Darlloz (2013): Khai thác lỗ hổng PHP CVE-2012-1823, tiêu diệt tiến trình của LightAidra.
- Wifatch (2014): Mã nguồn mở qua mạng P2P, đóng cổng Telnet để ngăn chặn các mã độc khác.
- Spike/Dofloo/MrBlack (2014) và BASHLITE/Gafgyt (2014): Chuyển dịch từ cấu trúc IRC sang kiến trúc Agent-Handler, lây nhiễm đa kiến trúc.
- Elknot/BillGates (2015) và AES.DDoS (2015): Sử dụng mã hóa XOR trong lưu lượng và nhắm vào thiết bị SOHO.
- Remaiten/KTN-RM (2016): Kết hợp mã nguồn Tsunami và BASHLITE với kỹ thuật quét vét cạn telnet.
- Mirai (2016): Viết bằng C (5.732 dòng) và Go (1.197 dòng), sử dụng danh sách tài khoản mặc định nhúng sẵn, tấn công DDoS quy mô lớn.
- IRCTelnet (2016), Hajime (2016 - sử dụng giao thức BitTorrent DHT và mã hóa RC4), BrickerBot (2017 - phá hủy phần cứng/brick thiết bị), và VPNFilter (2018 - do Cisco Talos phát hiện, duy trì thường trú sau khi khởi động lại).
Khoảng trống luận án lựa chọn giải quyết
Luận án tập trung giải quyết đồng thời ba thách thức: (1) Tính đa kiến trúc của mã độc IoT chạy trên nền Linux; (2) Tối ưu hóa hiệu năng tính toán thông qua việc thay thế các đồ thị CFG/DFG phức tạp bằng đồ thị thông tin chuỗi ký tự in được (PSI graph); và (3) Xây dựng quy trình phát hiện đạt độ chính xác cao dựa trên học máy và học sâu mà không đòi hỏi thực thi động tốn kém tài nguyên.
Cơ sở lý thuyết và phương pháp nghiên cứu
Khái niệm và khung phân tích
- Thiết bị IoT hạn chế tài nguyên: Là những thực thể vật lý hoặc ảo hóa đa kiến trúc, có năng lực xử lý thấp, dung lượng bộ nhớ nhỏ, nguồn điện năng giới hạn, có khả năng kết nối và chia sẻ dữ liệu qua mạng.
- Mã độc IoT botnet: Là mã độc có khả năng tự lây nhiễm trên các thiết bị IoT, chịu sự kết nối và điều khiển từ xa bởi máy chủ Command and Control (C&C) của tin tặc.
- Mô hình vòng đời lây nhiễm 7 bước của IoT Botnet:
- Dò quét (Scanning): Quét IP ngẫu nhiên qua cổng TCP 23/2323 (loại trừ các dải IP của IANA, Bộ Quốc phòng Mỹ, HP...) và tấn công vét cạn tài khoản mặc định.
- Báo cáo (Reporting): Gửi thông tin thiết bị (IP, cổng, kiến trúc vi xử lý, thông tin xác thực) về máy chủ Reporting.
- Kiểm tra đặc tả: Máy chủ C&C tiếp nhận thông tin và xác định kiến trúc phần cứng mục tiêu (ARM, MIPS, PowerPC...).
- Lựa chọn payload: Máy chủ C&C chỉ thị máy chủ Loader chọn tập tin thực thi nhị phân tương thích.
- Tải và thực thi: Máy chủ Loader tải tập tin nhị phân về thiết bị; mã độc xóa tập tin thực thi trên đĩa, chỉ chạy trên bộ nhớ RAM (tính không thường trú), tắt Telnet/SSH/Firewall và diệt các mã độc cạnh tranh.
- & 7. Tấn công DDoS: Tiếp nhận chỉ thị từ C&C để thực hiện tấn công phân tán (UDP Flood, SYN Flood, GRE IP Flood, DNS water torture).
Bảng so sánh đặc điểm giữa mã độc botnet trên PC truyền thống và thiết bị IoT
| Tiêu chí |
Mã độc botnet trên PC |
Mã độc botnet trên IoT |
| Nền tảng kiến trúc |
Độ đa dạng thấp, tập trung chủ yếu vào kiến trúc x86 / x86-64 |
Độ đa dạng cao, hỗ trợ nhiều kiến trúc (ARM, MIPS, PowerPC, Sparc, MIPSEL...) |
| Sự đa dạng mã độc |
Chủng loại rất phong phú, tinh vi và phức tạp |
Đa phần tái sử dụng hoặc chỉnh sửa từ mã nguồn mở đã công bố |
| Kỹ thuật gây rối |
Thường sử dụng kỹ thuật gây rối và đóng gói phức tạp |
Ít sử dụng hoặc chỉ dùng kỹ thuật đơn giản (UPX, XOR) do giới hạn phần cứng |
| Hình thức tấn công |
Đa dạng: mã hóa dữ liệu, đánh cắp thông tin, gián điệp, DDoS |
Tập trung chủ yếu vào tấn công từ chối dịch vụ phân tán (DDoS quy mô lớn) |
| Khả năng phát hiện |
Dễ nhận biết qua hành vi hệ thống và tương tác người dùng |
Khó phát hiện do thiết bị hoạt động độc lập, tự hành 24/7, không có màn hình giám sát |
| Môi trường ảo hóa |
Dễ dàng triển khai phân tích động trong sandbox chuẩn |
Khó thiết lập sandbox mô phỏng do tính không đồng nhất về kiến trúc phần cứng |
| Tính thường trú |
Thường trú tại bộ nhớ bền vững, ghi khóa khởi động trên đĩa |
Không thường trú: xóa tập tin trên đĩa sau khi chạy, chỉ tồn tại trên RAM |
| Cạnh tranh tài nguyên |
Có thể cùng tồn tại với các mã độc khác |
Tự động tìm và tiêu diệt các tiến trình mã độc khác để chiếm dụng tài nguyên |
Cơ sở học máy và học sâu
-
Học máy có giám sát (Supervised Learning):
Sử dụng thư viện Scikit-Learn trong Python để xây dựng các bộ phân lớp:
- Cây quyết định (Decision Tree - DT): Phân chia tập dữ liệu dựa trên tiêu chuẩn Entropy và Độ đo thông tin (Information Gain).
- K-lân cận gần nhất (kNN): Phân loại dựa trên khoảng cách Euclidean $d(x, y) = \sqrt{\sum_{k=1}^n (x_k - y_k)^2}$ với tham số số láng giềng
n_neighbors.
- Máy hỗ trợ vector (Support Vector Machine - SVM): Xây dựng siêu phẳng phân tách $w \cdot x - b = 0$ nhằm tối đa hóa khoảng cách lề (margin) $\frac{2}{|w|}$.
- Rừng ngẫu nhiên (Random Forest - RF): Kết hợp nhiều cây quyết định độc lập, chọn ngẫu nhiên $k$ đặc trưng từ tập $m$ đặc trưng ($k \ll m$) và lấy quyết định theo đa số phiếu bầu (
n_estimators).
- Bagging (Bootstrap Aggregation / AdaBoostClassifier): Kết hợp nhiều mô hình yếu trên các tập mẫu con lấy mẫu có hoàn lại.
-
Học sâu (Deep Learning) và Nhúng văn bản (Embedding):
- Mạng nơ-ron tích chập (CNN): Cấu trúc 5 phần gồm Lớp đầu vào (Input), Lớp tích chập (Convolutional Layer), Lớp gộp (Pooling Layer để giảm chiều dữ liệu và chống quá khớp), Lớp kết nối đầy đủ (Fully Connected Layer) và Lớp đầu ra (Softmax).
- Word2Vec (Tomas Mikolov và cộng sự [20]): Mô hình CBOW (Continuous Bag of Words - đoán từ từ ngữ cảnh) và Skip-gram (đoán ngữ cảnh từ từ trung tâm).
- Doc2Vec (Tomas Mikolov và cộng sự [82]): Mô hình DBOW (Distributed Bag of Words) và DM (Distributed Memory) để chuyển đổi cấu trúc chuỗi/đoạn văn bản thành vector có số chiều cố định.
Phương pháp nghiên cứu và nguồn dữ liệu
- Công cụ trích xuất tĩnh: Dịch ngược tập tin ELF bằng công cụ IDA Pro và radare2 để bóc tách Opcode, các lời gọi hàm hệ thống, cấu trúc tiêu đề (Header) và thông tin chuỗi ký tự in được (Printable String Information - PSI).
- Bộ dữ liệu thực nghiệm: Tập dữ liệu chuẩn hóa gồm hơn 10.000 mẫu tập tin thực thi (mã độc IoT botnet và tập tin lành tính) thuộc nhiều kiến trúc CPU khác nhau; xác thực nhãn thông qua dịch vụ VirusTotal.
- Kỹ thuật đánh giá: Phân chia tập dữ liệu huấn luyện và kiểm thử sử dụng phương pháp kiểm thử chéo (Cross-Validation), đánh giá qua các chỉ số độ chính xác (Accuracy), độ phức tạp thời gian và không gian.
Nội dung chính theo từng chương
Phần mở đầu: Đặt vấn đề và cơ sở nghiên cứu
Trình bày tổng quan bối cảnh bùng nổ IoT, sự gia tăng đột biến của các cuộc tấn công IoT botnet và thực trạng an toàn thông tin tại Việt Nam cũng như trên thế giới. Xác định rõ tính cấp thiết, mục tiêu nghiên cứu, đối tượng nghiên cứu là các tệp thực thi ELF trên nền tảng Linux Kernel 2, phạm vi phân tích tĩnh nhị phân trên thiết bị IoT hạn chế tài nguyên, phương pháp nghiên cứu lý thuyết kết hợp thực nghiệm, và bố cục 4 chương của luận án.
Chương 1: Tổng quan về mã độc IoT botnet và sơ lược học máy, học sâu
- Phân tích khái niệm IoT, thiết bị IoT hạn chế tài nguyên và định nghĩa chuẩn hóa về mã độc IoT botnet.
- Đánh giá sự tiến hóa của 17 dòng mã độc IoT botnet tiêu biểu từ Linux.Hydra (2008) đến VPNFilter (2018).
- Mô hình hóa chi tiết kiến trúc vòng đời lây nhiễm 7 bước và 6 thành phần của botnet (Bot payload, C&C server, Scanner, Reporting server, Loader, Malware distribution server).
- Lập bảng so sánh 8 tiêu chí kỹ thuật phân biệt mã độc botnet truyền thống trên PC và mã độc IoT botnet.
- Trình bày nền tảng toán học và thuật toán của học máy có giám sát (DT, kNN, SVM, RF, Bagging trong thư viện Scikit-Learn) và học sâu (Mạng nơ-ron nhiều lớp DNN, mạng tích chập CNN, các kỹ thuật biểu diễn từ Word2Vec CBOW/Skip-gram và Doc2Vec DBOW/DM).
Chương 2: Phương pháp phát hiện mã độc IoT botnet
- Tổng quan và phân loại 3 nhóm kỹ thuật phát hiện mã độc: Phân tích động (Dynamic Analysis), Phân tích tĩnh (Static Analysis) và Phân tích lai (Hybrid Analysis).
- Phân tích ưu nhược điểm của phân tích động qua các hệ thống Avatar, IoTBOX, RARE: chỉ ra các điểm nghẽn về tốc độ mô phỏng QEMU qua JTAG/UART, việc không bao quát hết các nhánh thực thi (path execution) và rào cản đa kiến trúc phần cứng.
- Phân tích ưu nhược điểm của phân tích tĩnh: nhấn mạnh lợi thế an toàn, không cần chạy mã độc, bao quát mọi luồng thực thi tiềm năng, thích hợp cho dữ liệu đa kiến trúc; đồng thời chỉ ra hạn chế khi gặp mã độc đóng gói hoặc phân tích đồ thị CFG/DFG quy mô lớn trong framework Angr.
- Khảo sát các đặc trưng tĩnh phi cấu trúc đồ thị (Opcode mức thấp, Byte sequences) và có cấu trúc đồ thị; phân tích quy trình 4 giai đoạn phát hiện tĩnh (Thu thập -> Trích chọn đặc trưng -> Tiền xử lý -> Phân loại).
- Thực nghiệm lại các phương pháp phân tích tĩnh hiện hành trên cùng tập dữ liệu chuẩn hóa và cấu hình phần cứng để thiết lập cơ sở đối sánh.
Chương 3: Phương pháp đề xuất đặc trưng đồ thị PSI trong phát hiện mã độc IoT botnet
- Trình bày phương pháp luận xây dựng đặc trưng đồ thị PSI (Printable String Information Graph) dựa trên việc trích xuất và liên kết các chuỗi thông tin in được trong tập tin thực thi ELF để mô phỏng lại hành vi lây nhiễm của botnet.
- Thiết lập quy trình phát hiện tự động kết hợp đặc trưng đồ thị PSI với mô hình học sâu (CNN và kỹ thuật nhúng vector Doc2Vec/Word2Vec).
- Đánh giá thực nghiệm hiệu năng của phương pháp đề xuất dựa trên các tiêu chí: độ chính xác phân loại, thời gian trích xuất và độ phức tạp tính toán, so sánh trực tiếp với các nghiên cứu phát hiện tĩnh và phân tích đồ thị CFG truyền thống.
Chương 4: Phát hiện mã độc IoT botnet dựa trên đặc trưng đồ thị con PSI có gốc (PSI-rooted subgraph)
- Phân tích các giới hạn còn tồn tại của phương pháp đồ thị PSI toàn phần ở Chương 3 khi áp dụng trên các tập dữ liệu có độ biến thiên cao hoặc khi triển khai trên các mô hình học máy cơ bản.
- Đề xuất giải pháp sinh đặc trưng đồ thị con PSI có gốc (PSI-rooted subgraph), tập trung cô đọng các nút gốc phản ánh trọng tâm hành vi lây nhiễm và cấu trúc điều khiển của botnet.
- Tiến hành thực nghiệm toàn diện trên bộ phân lớp học máy (DT, kNN, SVM, Random Forest, Bagging) kết hợp với đặc trưng đồ thị con PSI có gốc.
- Đánh giá so sánh kết quả thực nghiệm chứng minh đặc trưng đồ thị con có gốc duy trì độ chính xác cao đồng thời tối ưu hóa đáng kể tài nguyên tính toán và bộ nhớ.
Kết quả và những đóng góp mới
Những đóng góp mới về mặt khoa học và thực tiễn
- Khảo sát và thực nghiệm đối sánh chuẩn hóa: Luận án đã thực nghiệm, phân tích và đánh giá lại các phương pháp phát hiện mã độc IoT hiện hành trên cùng một bộ cơ sở dữ liệu lớn (hơn 10.000 mẫu gồm mã độc thực tế và mẫu lành tính) dưới cùng một cấu hình hệ thống, tạo cơ sở đối sánh khách quan cho các nghiên cứu tiếp theo trong lĩnh vực an toàn thông tin IoT.
- Đề xuất đặc trưng đồ thị PSI: Luận án đề xuất phương pháp biểu diễn đặc trưng mới – đồ thị PSI (Printable String Information) có khả năng mô phỏng quá trình lây nhiễm của mã độc IoT botnet đa kiến trúc với độ phức tạp tính toán thấp hơn so với các đồ thị luồng điều khiển truyền thống nhưng vẫn đảm bảo độ chính xác phân loại cao khi kết hợp học sâu.
- Cải tiến với đồ thị con PSI có gốc (PSI-rooted subgraph): Luận án hoàn thiện quy trình phát hiện mã độc IoT botnet bằng việc đề xuất đặc trưng đồ thị con PSI có gốc, cho phép tích hợp hiệu quả với các thuật toán học máy cơ bản (Scikit-Learn), tối ưu hóa thời gian xử lý và tài nguyên hệ thống.
- Chia sẻ tài nguyên khoa học mở: Toàn bộ mã nguồn nghiên cứu, quy trình trích xuất và thử nghiệm của luận án được công bố công khai trên nền tảng GitHub.
Khuyến nghị và giải pháp đề xuất
- Ứng dụng quy trình phân tích tĩnh dựa trên đồ thị PSI và đồ thị con PSI có gốc vào các hệ thống cổng an ninh (Security Gateway) hoặc các giải pháp kiểm định an toàn phần sụn trước khi xuất xưởng thiết bị IoT.
- Tích hợp mô hình học máy với đặc trưng PSI-rooted subgraph vào các giải pháp giám sát an ninh mạng nhằm phát hiện sớm các biến thể IoT botnet mà không đòi hỏi thiết lập môi trường phân tích động tốn kém tài nguyên.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế
- Phân tích tĩnh phụ thuộc vào chất lượng của công cụ dịch ngược (disassembler); trường hợp mã độc sử dụng các kỹ thuật mã hóa phức tạp, nén mã nguồn sâu hoặc kỹ thuật đa hình cao cấp sẽ gây khó khăn cho việc bóc tách chuỗi PSI.
- Phạm vi thực nghiệm tập trung vào các tập tin nhị phân định dạng ELF chạy trên nền tảng Linux Kernel 2 của các thiết bị IoT hạn chế tài nguyên, chưa mở rộng đánh giá chuyên sâu trên các hệ điều hành nhúng chuyên dụng khác.
- Luận án tập trung chủ yếu vào bài toán phát hiện nhị phân (phân biệt mã độc và lành tính), chưa mở rộng phân loại chi tiết các biến thể họ mã độc đa lớp (Multi-class Classification).
Hướng nghiên cứu tiếp
- Nghiên cứu mở rộng khả năng giải mã tự động (Unpacking/De-obfuscation) trong pha tiền xử lý tĩnh để xử lý các mẫu mã độc nén hoặc mã hóa tinh vi.
- Nghiên cứu áp dụng và kiểm thử mô hình đồ thị PSI trên các nền tảng hệ điều hành IoT khác ngoài Linux và trên các dòng thiết bị IoT không hạn chế tài nguyên.
- Phát triển mô hình phân loại đa lớp nhằm định danh chính xác các dòng họ botnet và truy vết mối quan hệ phả hệ tiến hóa của mã độc mới xuất hiện.
Giá trị tham khảo
Đối tượng thụ hưởng
- Nghiên cứu sinh, học viên cao học và nhà nghiên cứu: Thuộc các chuyên ngành An toàn thông tin, An ninh mạng, Khoa học máy tính và Kỹ thuật mạng truyền thông.
- Giảng viên đại học: Sử dụng làm tài liệu tham khảo chuyên sâu trong các học phần Phân tích mã độc, An toàn IoT, Trí tuệ nhân tạo và Học máy trong an ninh mạng.
- Kỹ sư an toàn thông tin và chuyên gia phân tích mã độc (SOC/CERT): Tham khảo kiến trúc trích xuất đặc trưng tĩnh phục vụ xây dựng công cụ quét lỗ hổng và phát hiện botnet tự động.
Các phần nội dung đáng tham khảo
- Phả hệ tiến hóa và bảng so sánh kỹ thuật (Chương 1): Cung cấp hệ thống tư liệu chi tiết về 17 dòng botnet từ 2008 đến 2018 cùng bảng đối sánh 8 tiêu chí khác biệt cốt lõi giữa botnet PC và botnet IoT.
- Khung lý thuyết phân tích tĩnh/động/lai (Chương 2): Cung cấp góc nhìn toàn diện về ưu nhược điểm của các framework như Angr, Avatar, IoTBOX, RARE.
- Quy trình xây dựng đồ thị PSI và mã nguồn mở (Chương 3, 4 và GitHub): Cung cấp phương pháp luận và mã nguồn thực thi cụ thể về kỹ thuật trích chọn đặc trưng đồ thị và huấn luyện học máy/học sâu.
Câu hỏi thường gặp
1. Vì sao luận án lựa chọn phương pháp phân tích tĩnh thay vì phân tích động để phát hiện mã độc IoT botnet?
Phân tích động gặp trở ngại lớn khi áp dụng cho IoT do tính đa kiến trúc vi xử lý (ARM, MIPS, PowerPC, Sparc...) và tài nguyên hạn chế của thiết bị, đòi hỏi môi trường mô phỏng (như QEMU, Avatar) phức tạp, tốc độ thực thi chậm và không bao quát hết các nhánh mã tiềm ẩn. Phân tích tĩnh có ưu điểm tiêu tốn ít tài nguyên, thời gian phân tích nhanh, an toàn tuyệt đối và có khả năng phân tích toàn diện mã nhị phân ELF mà không bị phụ thuộc vào môi trường thực thi của từng kiến trúc phần cứng.
2. Sự khác biệt cốt lõi giữa mã độc botnet trên PC truyền thống và mã độc IoT botnet là gì?
Mã độc IoT botnet có tính đa kiến trúc cao (biên dịch cho nhiều CPU khác nhau), mã nguồn thường kế thừa hoặc chỉnh sửa từ các dòng đã công bố, sử dụng kỹ thuật gây rối đơn giản do phần cứng hạn chế, tập trung chủ yếu vào mục đích tấn công DDoS quy mô lớn, hoạt động không thường trú (xóa tệp trên đĩa, chỉ chạy trong RAM) và thường tích hợp cơ chế tự động tìm diệt các mã độc cạnh tranh để độc chiếm tài nguyên thiết bị.
3. Quy trình lây nhiễm điển hình của một mã độc IoT botnet gồm những bước nào?
Vòng đời lây nhiễm gồm 7 bước: (1) Quét IP ngẫu nhiên qua cổng TCP 23/2323 và vét cạn mật khẩu; (2) Gửi báo cáo thông tin thiết bị về Reporting server; (3) C&C server tiếp nhận và phân tích kiến trúc phần cứng; (4) C&C chỉ thị Loader server chọn tệp thực thi tương thích; (5) Loader gửi tệp nhị phân đến thiết bị, mã độc thực thi trong RAM, xóa tệp gốc trên đĩa và tắt các cổng quản trị; (6 & 7) Tiếp nhận lệnh từ C&C để phát động tấn công từ chối dịch vụ phân tán (DDoS).
4. Đặc trưng đồ thị PSI và đồ thị con PSI có gốc giải quyết được vấn đề gì so với các đặc trưng đồ thị truyền thống?
Các đặc trưng đồ thị truyền thống như đồ thị luồng điều khiển (CFG), đồ thị luồng dữ liệu (DFG) hoặc thực thi biểu trưng trong framework Angr có độ phức tạp tính toán rất lớn, không khả thi khi phân tích tệp dung lượng lớn hoặc tập dữ liệu quy mô hàng chục nghìn mẫu. Đặc trưng đồ thị PSI (Printable String Information) và đồ thị con PSI có gốc mô phỏng hiệu quả hành vi lây nhiễm thông qua quan hệ giữa các chuỗi ký tự in được, giúp giảm thiểu đáng kể chi phí tính toán nhưng vẫn bảo toàn độ chính xác cao khi phân loại bằng học máy và học sâu.
5. Những thư viện và thuật toán học máy nào được sử dụng trong nghiên cứu?
Nghiên cứu sử dụng thư viện Scikit-Learn trong Python để triển khai các thuật toán học máy có giám sát gồm: Cây quyết định (DecisionTreeClassifier với tiêu chuẩn Entropy/Information Gain), K-lân cận gần nhất (KNeighborsClassifier), Máy hỗ trợ vector (SVC), Rừng ngẫu nhiên (RandomForestClassifier) và Bagging (AdaBoostClassifier). Đối với học sâu, nghiên cứu ứng dụng Mạng nơ-ron tích chập (CNN) kết hợp với các kỹ thuật nhúng văn bản Word2Vec (CBOW, Skip-gram) và Doc2Vec (DBOW, DM).
Kết luận
Luận án tiến sĩ đã giải quyết bài toán phát hiện mã độc IoT botnet đa kiến trúc trên các thiết bị hạn chế tài nguyên thông qua hướng tiếp cận phân tích tĩnh kết hợp cấu trúc đồ thị và học máy/học sâu. Bằng việc đề xuất đặc trưng đồ thị PSI và đặc trưng cải tiến đồ thị con PSI có gốc (PSI-rooted subgraph), nghiên cứu đã khắc phục được nhược điểm về độ phức tạp tính toán cao của các đồ thị CFG/DFG truyền thống và sự phụ thuộc môi trường của phân tích động. Kết quả thực nghiệm trên tập dữ liệu chuẩn hóa hơn 10.000 mẫu cùng việc công bố mã nguồn mở trên GitHub khẳng định giá trị khoa học và khả năng ứng dụng thực tiễn của đề tài trong công tác bảo đảm an toàn thông tin cho hệ sinh thái IoT.