Bối cảnh và vấn đề nghiên cứu
Sự bùng nổ của các thiết bị di động thông minh chạy hệ điều hành Android đã mang lại nhiều tiện ích cho người dùng, nhưng đồng thời cũng biến nền tảng này thành mục tiêu tấn công hàng đầu của các loại mã độc. Nhờ tính chất mã nguồn mở và cơ chế cho phép cài đặt ứng dụng từ các nguồn cung cấp bên thứ ba thông qua tệp tin đóng gói APK (Android Package), số lượng và mức độ tinh vi của các phần mềm độc hại ngày càng gia tăng.
Theo báo cáo thống kê AV-ATLAS từ Viện nghiên cứu an toàn thông tin AV-TEST (Đức), trong giai đoạn từ cuối năm 2022 đến cuối năm 2023, trung bình có khoảng 105.000 mã độc tấn công nhắm vào hệ điều hành Android được ghi nhận, trong đó xấp xỉ 90% tồn tại dưới dạng tệp tin nén APK. Tại Việt Nam, số liệu thống kê năm 2023 từ Đài Truyền hình Việt Nam ghi nhận hơn 6.062.715 thiết bị bị nhiễm mã độc và hơn 740.000 tài khoản ngân hàng, mạng xã hội bị đánh cắp, gây tổng thiệt hại ước tính hơn 17.000 tỷ đồng. Ngoài ra, các cuộc tấn công mã độc quy mô lớn trong lịch sử như WannaCry năm 2017 từng lây nhiễm hơn 200.000 máy tính tại hơn 150 quốc gia với thiệt hại vượt mức 4 tỷ USD, cho thấy mức độ nguy hiểm của các hiểm họa an ninh mạng.
Trước thực trạng đó, các phương pháp phát hiện mã độc truyền thống bộc lộ nhiều hạn chế:
- Phương pháp phân tích động: Mặc dù cho phép theo dõi trực tiếp hành vi thực thi của ứng dụng trong môi trường cô lập để đối phó với kỹ thuật làm rối mã (obfuscation), phương pháp này đòi hỏi chi phí tính toán lớn, tiêu tốn nhiều thời gian và tài nguyên hệ thống.
- Phương pháp phân tích tĩnh truyền thống: Thường chỉ dựa trên việc phân tích một khía cạnh đặc trưng đơn lẻ (như quyền hạn - Permission, hoặc lời gọi hàm - API call) hoặc áp dụng các mô hình học máy đơn giản, dẫn đến việc bỏ sót các mối quan hệ ngữ cảnh và đặc tính phức tạp ẩn giấu trong mã nguồn khi các biến thể mã độc thay đổi cấu trúc.
Để giải quyết các thách thức trên, khóa luận xác định các mục tiêu và phạm vi nghiên cứu cụ thể:
-
Mục tiêu nghiên cứu:
- Nghiên cứu, thiết kế và xây dựng hệ thống ứng dụng mô hình học sâu đa phương thức (Multimodal Deep Learning) nhằm phát hiện và phân loại các tệp tin APK Android.
- Đánh giá hiệu năng nhận diện mã độc khi kết hợp đồng thời các đặc trưng cú pháp mã nguồn và đặc trưng hành vi tương tác hệ thống.
-
Đối tượng nghiên cứu:
- Phương pháp xử lý dữ liệu đặc trưng từ tệp tin APK.
- Các mô hình học sâu mạng nơ-ron tích chập (Convolutional Neural Network - CNN) và mạng nơ-ron chuyển tiếp (Feed-Forward Neural Network - FFNN).
- Phương pháp phối hợp (fusion) các mô hình học sâu đa phương thức.
-
Phạm vi nghiên cứu:
- Về mặt kỹ thuật: Tập trung vào chiến thuật phân tích tĩnh, trích xuất ba loại đặc trưng gồm Dalvik Opcode (mã lệnh máy ảo Dalvik), Gói tài nguyên API (API Package) và Lệnh hệ thống (System Command).
- Về mặt dữ liệu: Sử dụng tập dữ liệu công khai CICMalDroid-2020 của Viện An ninh mạng Canada (CIC), trích xuất mẫu thuộc 3 danh mục: Mã độc quảng cáo (Adware), Mã độc tin nhắn (SMS) và Ứng dụng lành tính (Benign).
Cơ sở lý thuyết và phương pháp
Khóa luận thiết lập nền tảng dựa trên kiến trúc hệ thống Android, các kỹ thuật phân tích mã độc tĩnh và các kỹ thuật học sâu đa phương thức.
Khung kiến trúc và các khái niệm nền tảng
Hệ điều hành Android được xây dựng trên nền tảng Linux Kernel và phân chia thành 6 tầng kiến trúc chính:
- Tầng Linux Kernel: Quản lý phần cứng, bộ nhớ, tiến trình và hệ thống trình điều khiển (Driver).
- Tầng Hardware Abstraction Layer (HAL): Cung cấp các giao diện tiêu chuẩn kết nối giữa phần cứng và các tầng phần mềm cấp cao.
- Tầng Android Runtime (ART / DVM): Quản lý và thực thi Bytecode của ứng dụng. Máy ảo Dalvik (DVM) sử dụng cơ chế biên dịch Just-In-Time (JIT), trong khi Android Runtime (ART) từ Android 5.0 trở đi sử dụng cơ chế Ahead-Of-Time (AOT) để chuyển đổi Bytecode thành mã máy gốc.
- Tầng Thư viện C/C++ (Native C/C++ Libraries): Tập hợp các thư viện hệ thống như
libc, libm, libz, OpenGL ES, OpenSL ES, SSL.
- Tầng Java API Framework: Cung cấp các khối xây dựng ứng dụng gồm Views System, Content Providers, Resource Manager, Notification Manager, Activity Manager.
- Tầng System Apps: Các ứng dụng cốt lõi của hệ thống và ứng dụng từ bên thứ ba.
Ứng dụng Android cấu thành từ 4 thành phần cơ bản được khai báo trong tệp tin AndroidManifest.xml hoặc mã nguồn: Activity (giao diện người dùng), Service (tác vụ chạy ngầm), Broadcast Receiver (lắng nghe sự kiện hệ thống/ứng dụng) và Content Provider (chia sẻ dữ liệu).
Phương pháp nghiên cứu thực nghiệm
Nghiên cứu áp dụng quy trình phân tích tĩnh kết hợp mô hình học sâu đa phương thức thông qua 2 nhánh xử lý song song:
- Nhánh đặc trưng không gian (Mã lệnh Dalvik Opcode): Trích xuất chuỗi mã lệnh Dalvik từ tệp tin APK, sau đó xây dựng ma trận liền kề hai chiều (Adjacency Matrix) thể hiện tần suất chuyển tiếp giữa các cặp opcode kế tiếp nhau. Ma trận này được chuẩn hóa thành ảnh xám hai chiều (kích thước $225 \times 225$) để đưa vào mạng CNN.
- Nhánh đặc trưng tần suất (System Command & API Package): Thống kê tần suất xuất hiện của 437 lệnh hệ thống và gói API được sử dụng trong các tệp tin
.smali, mã hóa thành một vector đặc trưng số học để huấn luyện mạng FFNN.
- Cơ chế phối mô hình (Multimodal Fusion): Trích xuất vector đặc trưng từ các tầng ẩn cuối của CNN và FFNN, ghép nối (Concatenate) lại thành một biểu diễn thống nhất trước khi đưa qua tầng phân loại Softmax để đưa ra nhãn dự đoán cuối cùng.
Nguồn dữ liệu và công cụ
- Tập dữ liệu: CICMalDroid-2020 do Canadian Institute for Cybersecurity thu thập trong giai đoạn 2017–2018 (chứa 17.341 mẫu ban đầu thuộc 5 danh mục: Adware, Banking, SMS, Riskware, Benign). Nghiên cứu trích xuất tập con gồm 1.000 mẫu để huấn luyện và kiểm thử.
- Công cụ phân tích: Thư viện mã nguồn mở Python
Androguard (dùng hàm AnalyzeAPK() để phân tách đối tượng và trích xuất chuỗi Opcode) và công cụ Apktool (dịch ngược APK thành tệp tin .smali và phân tích AndroidManifest.xml).
Nội dung chính theo từng chương
Chương 1. Tổng quan đề tài
Chương 1 thiết lập tính cấp thiết của đề tài nghiên cứu trong bối cảnh các dòng mã độc Android biến hóa liên tục nhằm lẩn tránh sự phát hiện của các hệ thống an ninh truyền thống. Tác giả trình bày tổng quan về các phương pháp tiếp cận phân tích tĩnh và phân tích động, nêu rõ lý do lựa chọn phân tích tĩnh kết hợp học sâu đa phương thức. Chương này cũng xác định rõ ràng mục tiêu, đối tượng, phạm vi nghiên cứu và bố cục tổng thể gồm 6 chương của khóa luận.
Chương 2. Tổng quan tình hình nghiên cứu
Chương 2 tổng hợp và phân tích các công trình nghiên cứu trong và ngoài nước liên quan đến phân tích tĩnh mã độc Android:
- Phân tích Permission: Nghiên cứu của Sanz và cộng sự (2012) áp dụng SimpleLogistic, NaiveBayes, Random Forest đạt độ chính xác 92%; Nghiên cứu của Liang và cộng sự dựa trên nhóm quyền hạn đạt 96% độ chính xác phát hiện mã độc và 88% cho mẫu lành tính.
- Phân tích Intent và API call: Công trình DroidMat của Wu và cộng sự đạt độ chính xác 97,87%.
- Phân tích Opcode: Nghiên cứu của Canfora và cộng sự đạt độ chính xác 93,9% trên tập hợp opcode chọn lọc.
- Kết hợp đặc trưng: Peiravian và cộng sự đạt 94,9% khi kết hợp Permission và API call; Liu Yue và cộng sự kết hợp đặc trưng với kỹ thuật giải thích AI (XAI); TaeGuen và cộng sự áp dụng mô hình đa phương thức với 7 loại đặc trưng trên 5 mạng DNN đạt độ chính xác 98%.
Từ các nghiên cứu trên, tác giả định hình hướng tiếp cận mới: kết hợp Dalvik Opcode (biến đổi thành ảnh ma trận chuyển tiếp) cùng với System Command và API Package (biểu diễn dưới dạng vector tần suất) trên nền tảng phối hợp mạng CNN và FFNN.
Chương 3. Cơ sở lý thuyết
Chương 3 trình bày hệ thống lý thuyết chi tiết về:
- Cấu trúc 6 tầng của hệ điều hành Android và cơ chế hoạt động của máy ảo DVM/ART.
- Khái niệm mã độc và phân loại chi tiết các dòng mã độc phổ biến: Virus, Sâu máy tính (Worm), Trojan, Ransomware, Rootkit, Botnet, Fileless, Spyware, Adware và SMS Malware.
- Cơ chế lây nhiễm của mã độc trên thiết bị di động (tải ứng dụng từ nguồn không tin cậy, khai thác lỗ hổng hệ điều hành, tin nhắn lừa đảo SMS, kết nối Wi-Fi công cộng không an toàn).
- Các kỹ thuật trích xuất đặc trưng tĩnh từ APK: Phân tích các thành phần Package/API Package (ví dụ:
android.bluetooth, android.content, android.net.wifi), Dalvik Opcode (add, sub, mul, div, jump...), System Command (chmod, ls, dir, start...) và các quyền hạn trong AndroidManifest.xml.
Chương 4. Phương pháp thực hiện
Chương 4 là phần cốt lõi của khóa luận, mô tả chi tiết quy trình xây dựng bộ khung phát hiện mã độc qua 2 giai đoạn:
[Tệp tin APK]
[Lớp Concatenate (128 + 32 = 160 chiều)]
[Dense 128 -> Dropout -> Dense 3]
[Softmax: Benign / SMS / Adware]
-
Xử lý đặc trưng Dalvik Opcode cho mô hình CNN:
- Sử dụng thư viện
Androguard đọc tệp tin APK qua hàm AnalyzeAPK(), duyệt qua các phương thức get_methods() và câu lệnh get_instructions().
- Thu thập 224 loại Opcode phân biệt. Độ dài chuỗi opcode của mỗi mẫu được chuẩn hóa bằng cách cắt giảm (truncate) hoặc đệm thêm (pad) theo các mốc thực nghiệm (50.000, 100.000, 150.000, 200.000 opcode).
- Xây dựng ma trận liền kề 2 chiều kích thước $225 \times 225$ (gồm 224 opcode và 1 phần tử đệm "blank"). Giá trị tại ô giao giữa hàng $A$ và cột $B$ biểu thị số lần opcode $B$ xuất hiện ngay sau opcode $A$. Ma trận đóng vai trò như một bức ảnh xám hai chiều.
- Kiến trúc CNN gồm: 3 tầng Convolutional với số bộ lọc tăng dần (32, 64, 128; kích thước kernel $3 \times 3$, hàm kích hoạt ReLU), xen kẽ bởi các tầng MaxPooling; tầng Flatten; tầng Dense 128 nơ-ron kèm Dropout.
-
Xử lý đặc trưng System Command và API Package cho mô hình FFNN:
- Dùng
Apktool dịch ngược mã nguồn thành tệp .smali, lọc và đếm tần suất sử dụng của các lệnh hệ thống và gói API.
- Dữ liệu được lưu trữ trong tệp tin CSV gồm 437 cột đặc trưng.
- Kiến trúc FFNN gồm: Tầng Dense thứ nhất (128 nơ-ron, ReLU), tầng Dense thứ hai (64 nơ-ron, ReLU), tầng Dense thứ ba (32 nơ-ron, ReLU) và tầng Dropout.
-
Mô hình học sâu đa phương thức phối hợp (Multimodal Fusion Model):
- Loại bỏ tầng phân loại cuối cùng của cả hai mô hình đơn lẻ.
- Kết nối vector đầu ra 128 chiều từ CNN và vector đầu ra 32 chiều từ FFNN thông qua tầng
Concatenate của TensorFlow Keras.
- Dẫn qua một tầng Dense mới (128 nơ-ron), tầng Dropout, và tầng Output cuối cùng gồm 3 nơ-ron với hàm kích hoạt Softmax tương ứng với 3 nhãn: Benign (0), SMS (1), Adware (2).
- Huấn luyện với thuật toán tối ưu hóa Adam và hàm mất mát Categorical Crossentropy.
Chương 5. Kết quả thực nghiệm
Chương 5 trình bày môi trường kiểm thử, cấu hình phần cứng, phương pháp đánh giá và phân tích hiệu năng của các mô hình trong 100 epoch. Quá trình kiểm thử sử dụng tập kiểm tra độc lập gồm 80 tệp tin APK (benign_test_40: 40 mẫu, sms_test_20: 20 mẫu, adware_test_20: 20 mẫu) được tách biệt khỏi tập dữ liệu huấn luyện (~900 mẫu).
Chương 6. Kết luận và hướng phát triển
Chương 6 tổng kết các kết quả đạt được từ việc triển khai mô hình học sâu đa phương thức, khẳng định tính khả thi của việc phối hợp đặc trưng cấu trúc không gian (Opcode) và đặc trưng thống kê tần suất (System Command, API Package), đồng thời đề ra các hướng nghiên cứu mở rộng trong tương lai.
Kết quả và đóng góp
Cấu hình môi trường thực nghiệm
Quá trình huấn luyện và kiểm nghiệm được thực hiện trên hệ thống máy tính cá nhân với các thông số kỹ thuật được tác giả mô tả chi tiết:
| Thành phần phần cứng / phần mềm |
Cấu hình chi tiết |
| Hệ điều hành |
Windows 11 Home Single Language |
| Bộ vi xử lý (CPU) |
Intel Core i7 - 13620H (Thế hệ 13), xung nhịp ~2.4GHz (16 CPUs) |
| Bộ nhớ RAM |
24 GB |
| Ổ cứng lưu trữ |
100 GB dung lượng khả dụng |
| Card đồ họa (GPU) |
NVIDIA GeForce RTX 4060 Laptop GPU |
| Môi trường lập trình |
Python 3, TensorFlow / Keras, NumPy, Pandas, Androguard, Apktool |
Thước đo và kết quả thực nghiệm chính
Mô hình được đánh giá thông qua hai chỉ số chính qua 100 epoch huấn luyện:
- Chỉ số mất mát (Loss): Đánh giá qua hàm Categorical Crossentropy:
$$L(y, y') = - \sum_{i=1}^{N} y_i \log(y'_i)$$
(Trong đó $y$ là vector nhãn thực tế dạng one-hot, $y'$ là phân phối xác suất dự đoán, $N$ là số lớp phân loại).
- Chỉ số chính xác (Accuracy): Tỷ lệ phần trăm các mẫu phân loại đúng trên tổng số mẫu kiểm thử:
$$\text{Accuracy} = \frac{\text{Số mẫu dự đoán đúng}}{\text{Tổng số mẫu}}$$
Thực nghiệm cho thấy:
- Mô hình CNN phân tích ma trận liền kề Opcode đạt hiệu năng ổn định khi thử nghiệm biến đổi độ dài chuỗi ở các mốc 50.000, 100.000, 150.000 và 200.000 opcode.
- Mô hình FFNN xử lý tốt vector 437 chiều đặc trưng tần suất lệnh hệ thống và gói API.
- Mô hình phối hợp đa phương thức (Multimodal Fusion) kết hợp được ưu điểm nhận diện mẫu quan hệ không gian từ CNN và khả năng phân tích tần suất hành vi từ FFNN, mang lại chỉ số mất mát thấp và độ chính xác phân loại cao trên cả 3 lớp ứng dụng (Benign, SMS, Adware).
Đóng góp của nghiên cứu
- Đề xuất quy trình chuyển đổi đặc trưng Opcode mới: Xây dựng phương pháp chuyển đổi chuỗi Dalvik Opcode tuần tự thành ma trận chuyển tiếp hai chiều $225 \times 225$ dưới dạng ảnh xám, giúp mạng CNN trích xuất được mối quan hệ không gian và ngữ cảnh giữa các lệnh máy ảo.
- Xây dựng kiến trúc học sâu đa phương thức hoàn chỉnh: Kết hợp thành công dữ liệu phi cấu trúc (ảnh xám ma trận opcode) và dữ liệu có cấu trúc dạng bảng (vector tần suất 437 chiều của System Command và API Package) trong cùng một mạng nơ-ron học sâu thống nhất, mở ra hướng ứng dụng đa phương thức trong phân tích mã độc tĩnh.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế của nghiên cứu
- Quy mô tập dữ liệu thực nghiệm: Do giới hạn về tài nguyên tính toán của môi trường phần cứng máy tính cá nhân, nghiên cứu mới chỉ trích chọn tập con khoảng 1.000 mẫu APK từ tổng số 17.341 mẫu của bộ dữ liệu gốc CICMalDroid-2020.
- Phạm vi phân loại danh mục mã độc: Mô hình mới chỉ tập trung phân loại 3 danh mục (Benign, SMS, Adware), chưa bao quát 2 danh mục còn lại trong bộ dữ liệu gốc là Banking Malware (mã độc ngân hàng) và Riskware (phần mềm rủi ro).
- Phụ thuộc vào kỹ thuật phân tích tĩnh: Nghiên cứu chưa xử lý triệt để các trường hợp mã độc sử dụng các kỹ thuật làm rối mã nâng cao (code obfuscation), mã hóa động hoặc kỹ thuật chống dịch ngược phức tạp làm gián đoạn quá trình trích xuất bằng
Androguard và Apktool.
- Độ dài chuỗi Opcode: Việc cố định ngưỡng cắt giảm hoặc đệm (padding) chuỗi opcode ở mốc cố định có thể làm mất mát một phần thông tin đối với các tệp tin APK có mã nguồn quá lớn.
Hướng nghiên cứu tiếp theo
- Mở rộng quy mô huấn luyện trên toàn bộ 17.341 mẫu của tập dữ liệu CICMalDroid-2020 và bao quát đầy đủ cả 5 danh mục mã độc.
- Nâng cấp môi trường tính toán để thử nghiệm kích thước ma trận và chuỗi opcode lớn hơn, tối ưu hóa quá trình tiền xử lý dữ liệu.
- Nghiên cứu kết hợp thêm các đặc trưng phân tích tĩnh khác (như chuỗi ký tự String, Intent filters) hoặc phối hợp với các đặc trưng từ phân tích động (hành vi mạng, system calls runtime) để tăng cường độ tin cậy của hệ thống phát hiện.
Giá trị tham khảo
Tài liệu khóa luận mang lại giá trị tham khảo thiết thực cho:
- Sinh viên và học viên ngành An toàn thông tin, Mạng máy tính và Khoa học máy tính: Tài liệu cung cấp hướng dẫn chi tiết về cấu trúc hệ điều hành Android, cơ chế dịch ngược tệp tin APK và cách thức ứng dụng công cụ
Androguard, Apktool trong phân tích phần mềm độc hại.
- Các nhà nghiên cứu về Học máy và Trí tuệ nhân tạo ứng dụng trong An ninh mạng: Cung cấp phương pháp luận thực tế về việc thiết kế mạng học sâu đa phương thức (Multimodal Deep Learning), kỹ thuật biến đổi dữ liệu tuần tự (Opcode sequence) thành dữ liệu không gian dạng ảnh xám (Adjacency Matrix) để đưa vào mạng CNN.
- Kỹ sư phát triển hệ thống bảo mật di động: Tham khảo kiến trúc phối hợp đặc trưng để xây dựng các giải pháp quét mã độc tĩnh nhanh chóng, giảm thiểu chi phí vận hành máy ảo so với các hệ thống phân tích động.
Câu hỏi thường gặp
1. Khóa luận sử dụng bộ dữ liệu nào và phân loại những nhóm ứng dụng nào?
Khóa luận sử dụng bộ dữ liệu công khai CICMalDroid-2020 do Viện An ninh mạng Canada (Canadian Institute for Cybersecurity) phát hành. Do giới hạn về tài nguyên phần cứng, tác giả trích chọn tập con gồm khoảng 1.000 mẫu APK để thực nghiệm, phân loại thành 3 nhóm: Ứng dụng lành tính (Benign - gán nhãn 0), Mã độc tin nhắn (SMS - gán nhãn 1) và Mã độc quảng cáo (Adware - gán nhãn 2).
2. Tại sao tác giả lại chuyển đổi chuỗi Dalvik Opcode thành ma trận liền kề dạng ảnh xám?
Việc chuyển đổi chuỗi Dalvik Opcode thành ma trận liền kề hai chiều kích thước $225 \times 225$ (tương ứng với 224 opcode và 1 phần tử đệm padding) cho phép mô hình hóa mối quan hệ chuyển tiếp ngữ cảnh giữa các lệnh kế tiếp nhau trong mã nguồn. Dưới dạng ma trận tần suất liền kề tương đương một bức ảnh xám, mạng nơ-ron tích chập (CNN) có thể phát huy thế mạnh trích xuất các đặc trưng không gian và các mẫu hành vi mã độc phức tạp.
3. Vector đặc trưng đưa vào mô hình FFNN được xây dựng từ những thông tin nào?
Vector đầu vào của mạng FFNN gồm 437 chiều, đại diện cho tần suất xuất hiện của các Lệnh hệ thống (System Command, ví dụ: chmod, ls, start...) và các Gói tài nguyên API (API Package, ví dụ: android.bluetooth, android.net.wifi...) được trích xuất từ các tệp tin .smali sau khi dịch ngược APK bằng công cụ Apktool.
4. Cơ chế phối mô hình (Fusion) giữa CNN và FFNN được triển khai như thế nào?
Tác giả loại bỏ tầng phân loại Softmax ban đầu của cả hai mô hình đơn lẻ, lấy vector đặc trưng 128 chiều từ tầng Dense cuối của CNN và vector đặc trưng 32 chiều từ tầng Dense cuối của FFNN. Hai vector này được nối lại với nhau qua lớp Concatenate của TensorFlow Keras thành một vector 160 chiều, sau đó đưa qua tầng Dense 128 nơ-ron, lớp Dropout và tầng phân loại Softmax cuối cùng gồm 3 ngõ ra.
5. Quá trình kiểm thử mô hình được thiết lập với số lượng mẫu và tập dữ liệu kiểm tra như thế nào?
Mô hình được huấn luyện trên khoảng 900 mẫu và đánh giá độc lập trên tập kiểm tra gồm 80 tệp tin APK, chia thành 3 nhóm: benign_test_40 (40 mẫu lành tính), sms_test_20 (20 mẫu mã độc SMS) và adware_test_20 (20 mẫu mã độc Adware) thông qua tham số validation trong 100 epoch.
Kết luận
Khóa luận tốt nghiệp của sinh viên Lưu Nguyên Công Minh và Trần Đăng Khoa đã thiết kế và triển khai thành công mô hình học sâu đa phương thức trong bài toán phát hiện và phân loại mã độc Android dựa trên kỹ thuật phân tích tĩnh. Bằng cách kết hợp mạng CNN xử lý ma trận chuyển tiếp mã lệnh Dalvik Opcode dạng ảnh xám cùng mạng FFNN phân tích vector tần suất các lệnh hệ thống và gói API, nghiên cứu đã tận dụng hiệu quả cả đặc trưng cấu trúc mã nguồn lẫn đặc trưng hành vi tương tác hệ thống. Các kết quả thực nghiệm trên tập dữ liệu CICMalDroid-2020 khẳng định tính khả thi của giải pháp đa phương thức, tạo nền tảng học thuật và kỹ thuật vững chắc cho việc mở rộng quy mô phát hiện mã độc di động trong tương lai.