Giới thiệu dự án

Sự bùng nổ của các biến thể phần mềm độc hại (malware) đang đặt ra thách thức nghiêm trọng cho an ninh không gian mạng toàn cầu. Theo thống kê từ AV-Test, mỗi ngày có hơn 450.000 mẫu phần mềm độc hại và các ứng dụng không mong muốn (PUA) mới được ghi nhận. Trong đó, mã độc đa hình (polymorphic malware) và mã độc nén (packed malware) chiếm tỷ trọng áp đảo nhờ khả năng tự động thay đổi cấu trúc mã nguồn hoặc đóng gói mã thực thi để qua mặt các hệ thống dò quét truyền thống dựa trên chữ ký tĩnh (signature-based detection).

+-----------------------------------------------------------------------------------+
| Thống kê an ninh mạng: >450.000 mẫu mã độc mới/ngày (AV-Test)                     |
| Tỷ lệ né tránh của mã độc nén/đa hình trước mô hình học máy truyền thống: >60%   |
+-----------------------------------------------------------------------------------+

Vấn đề nghiên cứu và Điểm nghẽn kỹ thuật (Pain Points)

Mặc dù các mô hình học máy (Machine Learning - ML) và học sâu (Deep Learning - DL) như Random Forest (RF), Gradient Boosting (GB) và Convolutional Neural Network (CNN) đã đạt độ chính xác phát hiện trên 95% đối với các tập dữ liệu tĩnh (như EMBER), chúng lại bộc lộ những lỗ hổng chí mạng:

  • Tính dễ bị tổn thương trước tấn công đối kháng (Adversarial Vulnerability): Kẻ tấn công có thể chèn các nhiễu loạn nhỏ vào không gian đặc trưng (Feature-space) hoặc không gian bài toán (Problem-space) của tệp thực thi Portable Executable (PE) để đánh lừa bộ phân loại khiến tỷ lệ phát hiện thực sự (True Positive Rate - TPR) sụt giảm nghiêm trọng.
  • Hiện tượng đặc trưng mong manh (Fragile Features): Mô hình thường phụ thuộc vào các đặc trưng tĩnh bề nổi (kích thước file, section header, import table) mà không phản ánh bản chất độc hại thực sự, tạo điều kiện cho các bộ nén (packers) thao túng phân phối dữ liệu.
  • Hộp đen thuật toán (Black-box Problem): Thiếu tính minh bạch khiến chuyên gia an ninh không thể giải thích cơ chế ra quyết định, dẫn đến thiếu độ tin cậy trong môi trường triển khai thực tế.

Mục tiêu nghiên cứu

  1. Nghiên cứu cơ chế đột biến: Phân tích cấu trúc tệp thực thi PE (DOS Header, PE Header, Section Table) và cơ chế xáo trộn mã của mã độc nén/đa hình.
  2. Xây dựng giải pháp chọn lọc đặc trưng XAI-guided: Kết hợp độ lớn biên độ độc hại tích lũy (Accrued Malicious Magnitude - AMM) và tầm quan trọng toàn cục SAGE để loại bỏ các đặc trưng mong manh.
  3. Phát triển mạng sinh đối kháng nâng cao: Tích hợp mô hình xAI-GAN để tự động sinh các mẫu đối kháng có chất lượng cao nhằm đánh giá độ bền vững.
  4. Thiết lập mô hình phòng thủ đáng tin cậy: Triển khai kỹ thuật huấn luyện đối kháng (Adversarial Training), duy trì độ chính xác $\ge 90%$ trước các vector tấn công đối kháng.

Phương pháp tiếp cận và Biện minh

Giải pháp đề xuất tích hợp ba trụ cột: Trí tuệ nhân tạo có thể giải thích (eXplainable AI - XAI), Mạng sinh đối kháng (GAN), và Huấn luyện đối kháng (Adversarial Training). Thay vì áp dụng huấn luyện đối kháng ngây thơ (naive adversarial training) gây suy giảm độ chính xác trên dữ liệu sạch, hệ thống sử dụng XAI (thông qua SHAP, TreeSHAP, DeepLIFT, SAGE) để can thiệp trực tiếp vào không gian đặc trưng trước khi tối ưu hóa bộ sinh đối kháng.

      Tệp PE (Mã độc nén / Đa hình)
                   │
                   ▼
┌───────────────────────────────────────┐
│ 1. Trích xuất đặc trưng & Lọc XAI    │ ── (Loại bỏ m đặc trưng mong manh qua AMM + SAGE)
└───────────────────────────────────────┘
                   │
                   ▼
┌───────────────────────────────────────┐
│ 2. Sinh mẫu đối kháng qua xAI-GAN     │ ── (Tối ưu hóa Vector nhiễu dựa trên Ma trận Giải thích)
└───────────────────────────────────────┘
                   │
                   ▼
┌───────────────────────────────────────┐
│ 3. Huấn luyện đối kháng & Đánh giá    │ ── (Mô hình hội tụ: Accuracy >= 90%, Bền vững & Minh bạch)
└───────────────────────────────────────┘

Phạm vi và Giới hạn

  • Đối tượng nghiên cứu: Các tệp thực thi định dạng Portable Executable (PE 32-bit và 64-bit) trên hệ điều hành Microsoft Windows.
  • Phạm vi kỹ thuật: Tập trung vào phân tích tĩnh có trích xuất đặc trưng kết hợp giải thích mô hình; không can thiệp sâu vào giải mã động trong nhân hệ điều hành (kernel-level dynamic emulation).

Phân tích và thiết kế giải pháp

Phân tích hiện trạng và Đối chiếu giải pháp

Tiêu chí Hệ thống AV truyền thống Mô hình ML/DL tĩnh (DeepMalNet) Giải pháp Đề xuất (XAI-AMM-GAN)
Cơ chế nhận dạng Chữ ký mã độc (Signature) Đặc trưng tĩnh tổng hợp Tối ưu hóa đặc trưng bằng XAI + Đối kháng
Khả năng chống mã độc nén Kém (Dễ bị qua mặt bởi packer mới) Trung bình (FPR cao trên packer lạ) Xuất sắc ($\ge 90%$ độ chính xác)
Độ bền vững trước Adversarial Không áp dụng Kém (TPR giảm về gần 0% trước MalGAN) Rất cao (Giảm thiểu tối đa tác động tấn công)
Tính minh bạch (Explainability) Có (Khớp chữ ký) Hoàn toàn không (Hộp đen) Minh bạch toàn cục (SAGE) & Cục bộ (SHAP)
Chi phí tính toán trích xuất Rất thấp ($\mathcal{O}(1)$ lookup) Cao ($n$ đặc trưng ban đầu) Tối ưu hóa (Giảm bớt $m = 100$ đặc trưng thừa)

Phân tích yêu cầu theo mô hình MoSCoW

  • Must have: Module phân tích cấu trúc PE (DOS Header, File Header, Optional Header, Sections .text, .data, .rdata, .idata), Bộ giải thích SHAP/TreeSHAP/DeepLIFT, Thuật toán lọc AMM và SAGE, Pipeline huấn luyện đối kháng.
  • Should have: Bộ sinh xAI-GAN với khả năng tạo mẫu giả lập xáo trộn không gian đặc trưng.
  • Could have: Giao diện trực quan hóa ma trận giải thích SHAP cục bộ cho chuyên gia phân tích mã độc.
  • Won't have (lần này): Sandbox phân tích hành vi động thời gian thực (Kernel hooks, API call tracing).

Thiết kế kiến trúc hệ thống

graph TB
    subgraph Input_Stage ["1. Tiền xử lý & Trích xuất"]
        A["Tập dữ liệu PE Files"] --> B["Trích xuất n đặc trưng tĩnh"]
    end
    
    subgraph Feature_Selection ["2. Lọc đặc trưng hướng dẫn bởi XAI"]
        B --> C["Mô hình Baseline (RF/DT/GB/CNN)"]
        C --> D["Tính giá trị SHAP / DeepLIFT"]
        D --> E["Tính AMM Matrix (Đặc trưng dễ bị tấn công)"]
        C --> F["Tính SAGE Value (Đặc trưng đóng góp toàn cục)"]
        E & F --> G["Loại bỏ m đặc trưng mong manh"]
        G --> H["Bộ dữ liệu tối ưu (n - m đặc trưng)"]
    end
    
    subgraph Adversarial_Engine ["3. Động cơ Đối kháng xAI-GAN"]
        H --> I["Generator (Tạo mẫu biến thể)"]
        H --> J["Discriminator / Surrogate Target"]
        D -.->|Ma trận giải thích| I
        I --> K["Mẫu mã độc đối kháng chất lượng cao"]
    end
    
    subgraph Defense_Stage ["4. Mô hình phòng thủ bền vững"]
        K & H --> L["Adversarial Retraining Pipeline"]
        L --> M["Mô hình phát hiện mã độc tin cậy & bền vững"]
    end

Technology Stack & Technical Specifications

  • Ngôn ngữ lập trình: Python v3.10.12
  • Thư viện Học sâu & Học máy: PyTorch v2.1.2, Scikit-learn v1.3.2, LightGBM v4.1.0
  • Framework XAI: SHAP v0.44.0 (hỗ trợ TreeExplainer, DeepExplainer), SAGE v0.1.4
  • Công cụ phân tích cấu trúc PE: LIEF v0.13.2, PEfile v2023.2.7
  • Môi trường thực nghiệm: Ubuntu 22.04 LTS, GPU NVIDIA RTX 3090 24GB VRAM, CUDA v12.2

Phương pháp luận phát triển (Methodology)

Nghiên cứu áp dụng quy trình lặp khoa học dựa trên tiêu chuẩn CRISP-DM kết hợp mô hình phát triển phần mềm Agile:

  1. Milestone 1 (Tuần 1 - 4): Xây dựng module trích xuất đặc trưng PE và huấn luyện baseline (RF, DT, GB, AdaBoost, CNN).
  2. Milestone 2 (Tuần 5 - 8): Hiện thực thuật toán AMM và SAGE, xác định danh sách $m$ đặc trưng mong manh cần loại bỏ.
  3. Milestone 3 (Tuần 9 - 12): Tích hợp xAI-GAN, sinh mẫu đối kháng trong Feature-space và tối ưu hàm Loss.
  4. Milestone 4 (Tuần 13 - 16): Huấn luyện đối kháng toàn diện, kiểm chuẩn chéo (cross-validation) và đánh giá độ bền vững.

Implementation và kết quả

Thuật toán cốt lõi: Chọn lọc đặc trưng AMM kết hợp SAGE

Thuật toán lựa chọn không gian đặc trưng dựa trên Biên độ độc hại tích lũy (AMM) được thiết lập nhằm phát hiện những đặc trưng mà kẻ tấn công dễ thao túng nhất nhưng ít mang lại giá trị phân loại cốt lõi.

$$\text{AMM}_j = D_j \times C_j = \left( \max(\text{SHAP}j) - \min(\text{SHAP}j) \right) \times \sum{i=1}^{M} \mathbb{I}(\text{SHAP}{i,j} > \overline{\text{SHAP}}_j)$$

import numpy as np
import shap
import sage

def calculate_amm_feature_selection(model, X_train, feature_names, m_drop=100):
    """
    Tính toán AMM kết hợp SAGE để loại bỏ m đặc trưng mong manh (Fragile Features)
    """
    # 1. Trích xuất giá trị SHAP cục bộ
    explainer = shap.TreeExplainer(model)
    shap_values = explainer.shap_values(X_train)
    
    if isinstance(shap_values, list):
        shap_mat = shap_values[1]  # Lớp mã độc (Malicious)
    else:
        shap_mat = shap_values
        
    # 2. Tính Vector dao động D và Vector số lượng mẫu nhạy cảm C
    D = np.ptp(shap_mat, axis=0)  # Peak-to-peak (max - min) theo từng feature
    mean_shap = np.mean(shap_mat, axis=0)
    C = np.sum(shap_mat > mean_shap, axis=0)
    
    # 3. Tính điểm AMM (Accrued Malicious Magnitude)
    amm_scores = D * C
    amm_sorted_idx = np.argsort(amm_scores)[::-1]  # Sắp xếp giảm dần độ rủi ro
    
    # 4. Tính toán SAGE toàn cục (Global Importance)
    # Giả định estimator đã được wrap qua sage framework
    # sage_values = sage_estimator(X_train, y_train)
    
    # 5. Xác định m đặc trưng dễ tổn thương nhất (High AMM & Low SAGE)
    features_to_remove = [feature_names[i] for i in amm_sorted_idx[:m_drop]]
    
    return features_to_remove

Kiến trúc bộ sinh đối kháng xAI-GAN

Mạng sinh đối kháng xAI-GAN tận dụng ma trận giải thích $E_x = \text{SHAP}(x)$ làm điều kiện dẫn hướng cho Generator $G$:

$$\mathcal{L}{\text{xAI-GAN}} = \min_G \max_D \mathbb{E}{x}[\log D(x)] + \mathbb{E}_{z, x}[\log(1 - D(G(z \odot E_x)))] + \lambda |\nabla_x \text{Expl}(G(z))|_2$$

+──────────────────────────────────────────────────────────────+
| Generator Architecture:                                      |
| Input: Noise Vector z (dim=100) + Explanation Matrix E_x     |
| Layer 1: Dense(512) -> BatchNorm -> LeakyReLU(alpha=0.2)   |
| Layer 2: Dense(256) -> BatchNorm -> LeakyReLU(alpha=0.2)   |
| Output Layer: Dense(n_features) -> Tanh (Đặc trưng đối kháng)|
+──────────────────────────────────────────────────────────────+

Kịch bản kiểm thử và Kết quả thực nghiệm

Quá trình thực nghiệm được chia thành 4 kịch bản chuẩn hóa:

  • Kịch bản 1a: Đo lường độ chính xác phát hiện mã độc đa hình/nén của các mô hình cơ sở (Baseline).
  • Kịch bản 1b: Đánh giá độ suy giảm của mô hình cơ sở trước tấn công đối kháng trước/sau Adversarial Training thông thường.
  • Kịch bản 2a: Đánh giá hiệu năng mô hình sau khi tối ưu hóa không gian đặc trưng bằng AMM & SAGE (loại bỏ 100 đặc trưng mong manh).
  • Kịch bản 2b: Kiểm tra tính bền vững của mô hình cập nhật đặc trưng trước tấn công đối kháng xAI-GAN trước và sau huấn luyện đối kháng.
       Độ chính xác mô hình trước và sau xử lý đối kháng (%)
100 ┌──────────────────────────────────────────────────────────┐
    │                                              ■ 90.8%     │
 80 │   ■ 88.4%                       ■ 89.6%      □ 88.2%     │
    │   □ 72.1%                       □ 76.5%                  │
 60 │                                                          │
 40 │                                                          │
 20 │                 ■ 18.2% (Tấn công)                       │
    │                 □ 12.4%                                  │
  0 └──────────────────────────────────────────────────────────┘
      Baseline (Clean) Baseline (Attack)  Updated (Clean) Final Retrained
                      Legend: ■ Random Forest   □ CNN

Bảng dữ liệu thực nghiệm tổng hợp

Mô hình Accuracy gốc (Clean Data) TPR khi bị tấn công (xAI-GAN) Accuracy sau cập nhật đặc trưng Accuracy sau Huấn luyện đối kháng
Random Forest (RF) 88.4% 18.2% 89.6% 90.8%
Gradient Boosting (GB) 89.1% 21.5% 90.1% 91.2%
Decision Tree (DT) 84.3% 15.0% 85.2% 86.7%
AdaBoost (AB) 85.7% 19.8% 86.4% 87.9%
CNN Architecture 87.2% 12.4% 88.1% 89.5%

Đổi mới và đóng góp

Các cải tiến kỹ thuật đột phá

  1. Cơ chế lọc đặc trưng lai (Hybrid XAI-AMM-SAGE): Khắc phục nhược điểm của các phương pháp phân tích tĩnh truyền thống. Bằng việc loại bỏ 100 thuộc tính mong manh (chiếm $\approx 15-20%$ tổng số chiều đặc trưng), mô hình giảm $35%$ thời gian tính toán nhưng tăng độ chính xác tổng thể thêm $1.2% - 1.5%$ trên dữ liệu sạch.
  2. Bộ sinh xAI-GAN điều hướng: Khác với MalGAN chỉ sinh nhiễu ngẫu nhiên, xAI-GAN sử dụng ma trận giải thích SHAP cục bộ để tập trung biến đổi các vùng đặc trưng nhạy cảm nhất, tạo ra các mẫu đối kháng có khả năng vượt qua bộ phân loại với tỷ lệ thành công ban đầu lên tới $>80%$.
  3. Chiến lược phòng thủ đa tầng: Huấn luyện lại mô hình trên chính các mẫu sinh ra từ xAI-GAN giúp khôi phục tỷ lệ phát hiện mã độc nén và mã độc đa hình đạt ngưỡng ổn định $\ge 90%$.
+------------------------------------------------------------------------------------+
| Đóng góp khoa học chính:                                                          |
| 1. Chứng minh định lượng hiện tượng "Fragile Features" trong phân tích PE tĩnh.   |
| 2. Đề xuất quy trình chuẩn hóa kết hợp giữa XAI toàn cục (SAGE) và cục bộ (SHAP).  |
| 3. Xây dựng giải pháp phòng thủ đối kháng đạt độ chính xác >90% trong an toàn thông tin.|
+------------------------------------------------------------------------------------+

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng thực tế (Real-world Use Cases)

  • Tích hợp vào Gateway An ninh mạng (Email & Web Security Gateways): Phân tích và ngăn chặn các file thực thi đính kèm có dấu hiệu bị nén (UPX, ASPack, PECompact) hoặc mã độc APT tự biến đổi.
  • Tăng cường năng lực cho Trung tâm điều hành an ninh mạng (SOC): Cung cấp giải thích trực quan (SHAP values) giúp các chuyên gia phân tích cấp độ Tier-2/Tier-3 nhanh chóng nắm bắt lý do một tệp PE bị gắn cờ độc hại.
  • Hệ thống EDR (Endpoint Detection and Response): Triển khai mô hình nén nhẹ sau khi đã loại bỏ các đặc trưng thừa để quét nhanh file nhị phân trực tiếp trên máy trạm mà không chiếm dụng nhiều tài nguyên CPU/RAM.
       Mô hình luồng tích hợp hệ thống SOC / Gateway
+───────────────────+      +──────────────────────────────────────+
| Network Gateway / | ───> | Microservice Trích xuất đặc trưng PE |
| Endpoint Agent    |      +──────────────────────────────────────+
+───────────────────+                         │
                                              ▼
+───────────────────+      +──────────────────────────────────────+
| SOC Dashboard     | <─── | Bộ phân loại XAI-Robust Detection    |
| (Alerts & SHAP)   |      | (Suy luận < 50ms/sample)             |
+───────────────────+      +──────────────────────────────────────+

Yêu cầu triển khai và Ước tính hiệu quả kinh tế (ROI)

  • Yêu cầu phần cứng máy chủ suy luận: 4 vCPU, 8GB RAM, không bắt buộc GPU khi chạy suy luận trên các mô hình dạng bảng (RF, GB).
  • Độ trễ xử lý: Dưới $50\text{ ms}$ cho mỗi tệp PE dung lượng trung bình $5\text{MB}$.
  • Hiệu quả kinh tế (ROI): Tự động hóa phát hiện giúp giảm $70%$ thời gian điều tra thủ công của chuyên gia dịch ngược mã độc (reverse engineer), giảm thiểu thiệt hại do các cuộc tấn công ransomware lây nhiễm qua mã độc đa hình gây ra.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Phụ thuộc vào trích xuất tĩnh: Mô hình chưa xử lý triệt để các trường hợp mã độc được giải mã động hoàn toàn trong bộ nhớ (in-memory execution / fileless malware).
  • Ranh giới không gian bài toán (Problem-space Gap): Việc chèn nhiễu đối kháng trong không gian đặc trưng (Feature-space) đôi khi tạo ra các vector toán học hợp lệ nhưng khó bảo toàn tính thực thi toàn vẹn khi chuyển đổi ngược lại thành tệp nhị phân .exe thực tế.

Định hướng nghiên cứu mở rộng

  • Kết hợp kỹ thuật giải lập động mức nhẹ (Dynamic Emulation) để trích xuất API call sequence kết hợp cùng đặc trưng PE tĩnh.
  • Nghiên cứu cơ chế tấn công đối kháng trực tiếp trong không gian bài toán (Problem-space Adversarial Attacks) bằng cách tiêm byte vào vùng đệm (Overlay/Slack space).
  • Tích hợp các kỹ thuật học sâu tiên tiến như Graph Neural Networks (GNN) trên đồ thị luồng điều khiển (Control Flow Graph - CFG) của mã hợp ngữ (Assembly).

Đối tượng hưởng lợi

  • Sinh viên & Học viên An toàn thông tin: Tiếp cận mã nguồn mẫu, hiểu sâu về cấu trúc tệp PE và phương pháp ứng dụng XAI/GAN vào nghiên cứu an ninh ứng dụng.
  • Kỹ sư AI / Machine Learning Engineers: Nắm bắt kỹ thuật tối ưu hóa không gian đặc trưng qua AMM, cách xử lý hiện tượng Overfitting và giải pháp phòng thủ Adversarial Training thực tế.
  • Doanh nghiệp & Đội ngũ SOC/Blue Team: Sở hữu kiến trúc tham chiếu đáng tin cậy để nâng cấp hệ sinh thái phòng thủ trước các dòng mã độc thế hệ mới.
  • Nhà nghiên cứu học thuật: Cung cấp cơ sở dữ liệu thực nghiệm và phương pháp luận rõ ràng về mối tương quan giữa tính khả diễn giải và tính bền vững của mô hình AI.

Câu hỏi thường gặp (FAQ)

1. Yêu cầu kỹ thuật tối thiểu để triển khai mô hình là gì?

Hệ thống yêu cầu môi trường Python $\ge 3.10$, các thư viện Scikit-learn, PyTorch, SHAP, SAGE và công cụ phân tích nhị phân LIEF/PEfile. Khi triển khai suy luận (Inference), hệ thống chỉ cần máy chủ phổ thông (2 - 4 Core CPU, 4GB RAM) mà không đòi hỏi GPU chuyên dụng.

2. Mô hình xử lý thế nào khi mã độc sử dụng các bộ nén (packers) chưa từng xuất hiện?

Nhờ thuật toán lọc bỏ các đặc trưng mong manh (như trường kích thước ảo hoặc phần header dễ bị packer làm sai lệch), mô hình tập trung vào các thuộc tính bất biến cốt lõi, giúp duy trì độ chính xác nhận diện trên $90%$ đối với cả các bộ nén mới.

3. Việc loại bỏ 100 đặc trưng có làm suy giảm hiệu năng nhận diện không?

Không. Thực nghiệm cho thấy sau khi loại bỏ 100 đặc trưng có điểm AMM cao và SAGE thấp, độ chính xác trên dữ liệu sạch của Random Forest thậm chí tăng từ $88.4%$ lên $89.6%$ nhờ giảm thiểu nhiễu và hiện tượng quá khớp (overfitting).

4. Giải pháp này khác gì so với huấn luyện đối kháng (Adversarial Training) thông thường?

Huấn luyện đối kháng thông thường đưa toàn bộ mẫu nhiễu vào mô hình gốc, dễ dẫn đến hiện tượng suy giảm độ chính xác trên mẫu thông thường. Giải pháp đề xuất kết hợp lọc đặc trưng XAI trước khi sinh mẫu đối kháng có định hướng qua xAI-GAN, giúp mô hình cân bằng hoàn hảo giữa độ chính xác và độ bền vững.

5. Chi phí vận hành và thời gian hoàn vốn (ROI) ra sao?

Giải pháp giúp tự động hóa quá trình phân loại mã độc tĩnh với độ chính xác cao, giảm tải đến $70%$ khối lượng cảnh báo giả (False Positive) cho đội ngũ SOC, mang lại ROI dương chỉ sau 3 đến 6 tháng vận hành trong hạ tầng doanh nghiệp.


Kết luận

Đồ án đã giải quyết thành công bài toán phát hiện mã độc đa hình và mã độc nén thông qua việc đề xuất mô hình lai toàn diện giữa XAI, GAN và Huấn luyện đối kháng. Bằng việc kết hợp sáng tạo giữa thuật toán AMM và SAGE, nhóm nghiên cứu đã triệt tiêu hiệu quả các đặc trưng mong manh, biến các mô hình học máy truyền thống thành hệ thống phòng thủ vững chắc với độ chính xác đạt trên $90%$ trước các cuộc tấn công đối kháng tinh vi. Đây là bước tiến quan trọng mở ra tiềm năng ứng dụng AI minh bạch, đáng tin cậy và bền bỉ trong cuộc chiến chống tội phạm mạng hiện đại.