Giới thiệu dự án

Bối cảnh và thực trạng an toàn thông tin

Trong kỷ nguyên bùng nổ của các cuộc tấn công mạng, số lượng và mức độ tinh vi của phần mềm độc hại (malware) nhắm vào hệ điều hành Microsoft Windows liên tục gia tăng ở mức kỷ lục. Theo các báo cáo an ninh mạng toàn cầu, hàng trăm nghìn mẫu mã độc mới xuất hiện mỗi ngày với khả năng tự biến đổi nhằm vượt qua các giải pháp phòng thủ truyền thống.

Nhằm đối phó với mối đe dọa này, các giải pháp phòng thủ hiện đại đã chuyển dịch mạnh mẽ từ phương pháp nhận diện dựa trên chữ ký tĩnh (signature-based) sang ứng dụng Học máy (Machine Learning - ML) và Học sâu (Deep Learning - DL) tiêu biểu như kiến trúc mạng nơ-ron tích chập trên chuỗi byte thô (MalConv). Tuy nhiên, chính các mô hình phân loại ML/DL này lại bộc lộ điểm yếu bảo mật nghiêm trọng trước các cuộc tấn công đối kháng (Adversarial Attacks). Kẻ tấn công có thể áp dụng các kỹ thuật đột biến tệp thực thi Portable Executable (PE) để đánh lừa mô hình dự đoán mà không làm thay đổi ngữ nghĩa độc hại.

+-----------------------------------------------------------------------------------+
| THỰC TRẠNG: Hệ thống phát hiện ML/DL dễ bị qua mặt bởi biến thể đối kháng         |
| THÁCH THỨC: Tạo biến thể bằng Học tăng cường (RL) thường làm hỏng tệp thực thi   |
| GIẢI PHÁP: Tích hợp Bộ kiểm chứng chức năng tương đồng nhị phân (Prov2vex + CNN)  |
+-----------------------------------------------------------------------------------+

Vấn đề cốt lõi (Problem Statement)

Học tăng cường (Reinforcement Learning - RL) đã được chứng minh là công cụ tự động hóa mạnh mẽ trong việc tạo biến thể mã độc né tránh máy học. Tuy nhiên, các công trình nghiên cứu hiện nay gặp phải hai nút thắt kỹ thuật lớn:

  1. Mất toàn vẹn chức năng (Broken Functionality): Các hành động biến đổi cấu trúc nhị phân (như chèn byte, nén UPX, chỉnh sửa section) thường xuyên phá vỡ tính hợp lệ của tệp PE hoặc làm hỏng logic thực thi của mã độc ban đầu.
  2. Hạn chế trong kiểm chứng chức năng: Việc kiểm thử hành vi bằng môi trường hộp cát (Dynamic Sandbox) đòi hỏi tài nguyên tính toán lớn, độ trễ cao và dễ bị mã độc phát hiện cơ chế ảo hóa để tự vô hiệu hóa, trong khi các phương pháp so sánh tương đồng nhị phân tĩnh như Prov2vex nguyên bản lại tốn quá nhiều thời gian xử lý (10–50 phút/tệp), không thể đáp ứng chu kỳ phản hồi thời gian thực của thuật toán RL.

Mục tiêu của đề tài (Project Objectives)

  1. Xây dựng khung mô hình học tăng cường hoàn chỉnh: Tích hợp thuật toán Distributional Deep Q-Network (DistDQN) cùng cơ chế Noisy Nets nhằm tự động tìm kiếm chuỗi hành động biến đổi tệp PE tối ưu.
  2. Tối ưu hóa kỹ thuật trích xuất đặc trưng nhị phân: Tinh chỉnh thuật toán Prov2vex thông qua việc lược bỏ bước chuẩn hóa trung gian (canonicalization), giảm thời gian trích xuất vector đặc trưng về ngưỡng mili-giây mà vẫn bảo toàn ngữ nghĩa mã máy.
  3. Phát triển mô-đun kiểm chứng chức năng dựa trên Deep Learning: Thiết kế mạng nơ-ron tích chập (CNN) 8 lớp xử lý ảnh biểu diễn 3 kênh (32x32x3) từ các cặp vector nhị phân để đánh giá độ tương đồng chức năng.
  4. Tối đa hóa tỷ lệ né tránh có kiểm chứng (ERFP): Đảm bảo các biến thể sinh ra vừa vượt qua các bộ dò mã độc tiên tiến (MalConv, Gradient Boosting), vừa duy trì trọn vẹn khả năng thực thi chức năng gốc.

Giải pháp đề xuất và kết quả kỳ vọng

Đề tài đề xuất mô hình RL-Driven Malware Mutation with Functionality Validation, kết hợp chặt chẽ giữa tác tử học tăng cường DistDQN, mô-đun phát hiện mã độc (MalConv) và mô-đun kiểm chứng chức năng tương đồng nhị phân (Optimized Prov2vex + CNN).

Chỉ số kỳ vọng Mục tiêu định lượng Phương pháp đo lường
Độ chính xác kiểm chứng (Accuracy) $\ge 95%$ Đánh giá trên tập dữ liệu Binkit (25.350 mẫu)
Tỷ lệ né tránh (Evasion Rate - ER) $\ge 70%$ Thử nghiệm với MalConv và Gradient Boosting
Tỷ lệ né tránh còn chức năng (ERFP) $\ge 65%$ Kiểm định đồng thời bộ phát hiện và validator
Thời gian trích xuất vector Giảm $> 90%$ So sánh với Prov2vex chuẩn trên cùng cấu hình

Phạm vi và giới hạn (Scope & Limitations)

  • Phạm vi nghiên cứu: Định dạng tệp thực thi PE 32-bit/64-bit trên hệ điều hành Windows; tập trung vào 5 họ mã độc phổ biến: Locker, Mediyes, Winwebsec, Zbot, Zeroaccess.
  • Giới hạn kỹ thuật: Không thực thi mã độc trực tiếp ở mức nhân (kernel-level); kiểm chứng chức năng tập trung vào mức phân tích tĩnh mã trung gian (VEX-IR) và kiểm tra tương đồng cấu trúc nhị phân.

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

Phân tích hiện trạng

+---------------------------------------------------------------------------------------+
| SO SÁNH CÁC HƯỚNG TIẾP CẬN TẠO BIẾN THỂ VÀ KIỂM CHỨNG CHỨC NĂNG                       |
+-------------------+-----------------------------+-------------------------------------+
| Phương pháp       | Ưu điểm                     | Nhược điểm                          |
+-------------------+-----------------------------+-------------------------------------+
| MCTS (Luật cứng)  | Dễ kiểm soát không gian mẫu | Tỷ lệ né tránh thấp, thiếu tổng quát|
| Gym-Malware (RL)  | Tự động hóa cao             | Thiếu kiểm chứng chức năng thực tế  |
| DiDQN + Sandbox   | Kiểm thử hành vi động chuẩn | Chi phí tài nguyên lớn, độ trễ cao |
| Đề xuất (RL + CNN)| Cân bằng tốc độ & ngữ nghĩa | Phụ thuộc chất lượng mô hình CNN    |
+-------------------+-----------------------------+-------------------------------------+

Bảng phân tích ưu/nhược điểm các giải pháp hiện hành

  1. Phương pháp tiếp cận dựa trên Monte Carlo Tree Search (MCTS): Sử dụng tập luật tùy biến để chặn các biến đổi lỗi. Tuy nhiên, phương pháp này đòi hỏi tri thức chuyên gia sâu và không thể tự thích ứng với các bộ phân loại hộp đen hoàn toàn.
  2. Phương pháp OpenAI Gym-Malware: Áp dụng RL tác động lên tệp PE nhưng không có cơ chế kiểm tra tính toàn vẹn sau đột biến, dẫn đến tỷ lệ mẫu hỏng (corrupted binaries) cao.
  3. Phương pháp DiDQN kết hợp Sandbox Windows: Kiểm tra thực thi trên máy ảo. Dù phản ánh đúng hành vi động nhưng tốc độ huấn luyện bị nghẽn nghiêm trọng (bottleneck) do thời gian khởi động và reset máy ảo.

Phân tích yêu cầu hệ thống theo MoSCoW

  • Must have (Bắt buộc):
    • Không gian hành động 10 thao tác biến đổi tệp PE an toàn định dạng.
    • Tác tử DistDQN kết hợp Noisy Nets và bộ tối ưu hóa Adam.
    • Bộ kiểm chứng tương đồng nhị phân CNN phân loại nhị phân (giống/khác).
  • Should have (Nên có):
    • Cơ chế phạt (penalty) khi lặp lại hành động để tránh rơi vào cực trị cục bộ.
    • Bộ tiền xử lý gộp 2 vector 1024 chiều thành ảnh 3 kênh $32 \times 32 \times 3$.
  • Could have (Có thể có):
    • Tích hợp nhiều mô hình phát hiện mục tiêu bổ trợ (như Gradient Boosting).
  • Won't have (Chưa thực hiện):
    • Phân tích luồng thực thi động cấp kernel driver.

Thiết kế hệ thống

graph TD
    A[Tệp PE gốc Input Data] --> B[Môi trường - Environment]
    B --> C[Feature Extractor]
    C -->|Vector State| D[Agent DistDQN + Noisy Nets]
    D -->|Lựa chọn Action| E[Module Biến đổi LIEF]
    E -->|Tạo Biến thể PE| F[Mã độc đột biến Mutation]
    F --> G[Bộ phát hiện MalConv / GB]
    F --> H[Bộ kiểm chứng Prov2vex + CNN]
    G -->|R_det| I[Hàm tính toán Phần thưởng Tổng hợp]
    H -->|R_func| I
    E -->|R_dis| I
    I -->|Reward R & State Mới| D

Technology Stack và Thông số phiên bản

  • Ngôn ngữ lập trình: Python 3.8+
  • Thư viện biến đổi nhị phân: LIEF (Library to Instrument Executable Formats) v0.12.x
  • Framework Học tăng cường: ChainerRL v0.8.0 / PyTorch v1.12.x
  • Mã trung gian nhị phân: PyVEX (thành phần phân tích nhị phân angr framework)
  • Deep Learning Framework: TensorFlow 2.x / Keras (huấn luyện CNN)
  • Hệ điều hành thử nghiệm: Windows 10 Home (Máy ảo), 6GB RAM, 100GB Disk

Chi tiết không gian hành động (Action Space)

Tác tử tương tác với tệp PE thông qua 10 hành động chuẩn hóa bằng thư viện LIEF, bảo toàn cấu trúc header:

[0] imports_append                : Thêm hàm vào bảng Import Address Table (IAT)
[1] section_rename                : Đổi tên Section ngẫu nhiên trong bảng Headers
[2] section_add                   : Tạo thêm Section mới không chứa mã thực thi
[3] section_append                : Chèn thêm byte gây nhiễu vào cuối Section
[4] remove_signature              : Xóa chữ ký số trong Certificate Table
[5] remove_debug                  : Xóa thông tin Debug trong Optional Header
[6] upx_pack                      : Nén tệp tin bằng công cụ UPX Packer
[7] upx_unpack                    : Giải nén tệp tin UPX
[8] break_optional_header_checksum: Chỉnh sửa giá trị Checksum của Optional Header
[9] overlay_append                : Chèn thêm byte ngẫu nhiên vào cuối tệp tin (Overlay)

Thiết kế hàm phần thưởng đa mục tiêu (Multi-Objective Reward Function)

Hàm phần thưởng được xây dựng nhằm cân bằng giữa khả năng né tránh, mức độ biến đổi và bảo toàn chức năng:

$$R = R_{det} \cdot \omega_{det} + R_{dis} \cdot \omega_{dis} + R_{func} \cdot \omega_{func}$$

Trong đó:

  • $R_{det} = 10$ nếu tệp qua mặt được bộ phát hiện ($\text{Score} \le \text{Threshold}$), ngược lại $R_{det} = 0$.
  • $R_{dis} = \left(\frac{R_{max}}{t_{max}}\right) \cdot t$, khuyến khích tác tử đạt mục tiêu với số bước $t \le t_{max} = 10$.
  • $R_{func} = \text{Score}_{CNN} \cdot 10$, phản ánh độ tương đồng chức năng từ mô-đun CNN.
  • $\omega_{det} = 0.33, \omega_{dis} = 0.33, \omega_{func} = 0.34$ (tổng trọng số bằng 1.0).
  • Hệ số phạt lặp hành động (Penalty factor $p$): $$R_{final} = R \cdot p \quad \text{với} \quad p = \begin{cases} 0.8 & \text{khi lặp lại 1 lần} \ 0.6 & \text{khi lặp lại } \ge 2 \text{ lần} \end{cases}$$

Methodology

+------------------------------------------------------------------------------------+
| QUY TRÌNH NGHIÊN CỨU VÀ TRIỂN KHAI THỰC NGHIỆM                                     |
| Phase 1: Thu thập & Chuẩn hóa dữ liệu (Binkit + Malware PE Dataset)               |
| Phase 2: Cải tiến thuật toán Prov2vex & Huấn luyện CNN Functionality Validator     |
| Phase 3: Xây dựng Môi trường RL & Huấn luyện Agent DistDQN                        |
| Phase 4: Đánh giá chéo (Cross-validation) trên MalConv & Gradient Boosting        |
+------------------------------------------------------------------------------------+
  • Quy trình phát triển: Áp dụng phương pháp nghiên cứu thực nghiệm lặp (Iterative Empirical Research), đánh giá độc lập từng mô-đun trước khi tích hợp vào vòng lặp khép kín của tác tử RL.
  • Kế hoạch quản lý rủi ro:
    • Rủi ro mã độc thoát khỏi môi trường: Cô lập hoàn toàn trên máy ảo độc lập, ngắt kết nối mạng ngoài.
    • Rủi ro overfitting của CNN: Bổ sung lớp Dropout 0.5 và cơ chế Max Pooling $2 \times 2$.

Implementation và kết quả

Development process

1. Thuật toán tối ưu hóa Prov2vex

Kỹ thuật Prov2vex nguyên bản chuyển đổi thủ tục nhị phân qua 5 bước: (1) Phân rã khối cơ bản; (2) Tách chuỗi lệnh độc lập (Strands); (3) Chuẩn hóa cú pháp/ngữ nghĩa; (4) Băm MD5 10-bit; (5) Chiếu vào không gian vector $2^{10} = 1024$ chiều.

Cải tiến kỹ thuật: Nhóm nghiên cứu lược bỏ hoàn toàn Bước 3 (VEX-IR Optimization & Canonicalization), thực hiện băm trực tiếp biểu diễn strand thô bằng hàm băm MD5 10-bit.

def extract_optimized_prov2vex(binary_path):
    """
    Trích xuất vector đặc trưng 1024 chiều bằng Prov2vex tối ưu
    """
    vex_blocks = lift_binary_to_vex(binary_path)
    feature_vector = [0] * 1024
    for block in vex_blocks:
        strands = split_block_into_strands(block)
        for strand in strands:
            # Băm trực tiếp chuỗi strand thô không qua bước canonicalization
            hash_val = md5_hash_10bit(str(strand))
            feature_vector[hash_val] += 1
    return feature_vector

2. Tiền xử lý dữ liệu vector thành ảnh 3 kênh

Hai vector đặc trưng $1 \times 1024$ của tệp gốc và biến thể được ghép thành vector $1 \times 2048$, sau đó định hình lại thành 2 ma trận $32 \times 32$ tương ứng với Channel 1 và Channel 2. Channel 3 được điền các giá trị 0 (Zero Padding) nhằm đáp ứng định dạng ảnh chuẩn của mạng CNN mà không làm sai lệch tương quan dữ liệu.

Vector PE Gốc (1x1024)   ----+
                              |---> Vector Gộp (1x2048) ---> Chia thành 2 ma trận (32x32)
Vector PE Đột Biến (1x1024) -+                                    |
                                                                  v
Kênh 1: Ma trận PE Gốc       (32x32)  \
Kênh 2: Ma trận PE Đột Biến  (32x32)   +---> Tensor Ảnh Đầu Vào (32x32x3)
Kênh 3: Ma trận Zero-Filled   (32x32)  /

3. Cấu trúc mạng CNN kiểm chứng chức năng (8 lớp)

Mô hình CNN nhận đầu vào là tensor kích thước $(32, 32, 3)$ với kiến trúc phân tầng:

  1. Conv2D Layer 1: 64 filters, kernel $2 \times 2$, activation ReLU.
  2. MaxPooling2D Layer 1: pool size $2 \times 2$, giảm kích thước đặc trưng.
  3. Conv2D Layer 2: 64 filters, kernel $2 \times 2$, activation ReLU.
  4. MaxPooling2D Layer 2: pool size $2 \times 2$.
  5. Flatten Layer: Chuyển đổi tensor 2D thành vector 1D.
  6. Dropout Layer: Tỷ lệ $0.5$, ngăn ngừa tình trạng quá khớp.
  7. Dense Layer (Fully Connected): 512 units, activation ReLU.
  8. Dense Output Layer: 2 units, activation Softmax (phân loại nhãn 0: khác nhau, nhãn 1: tương đồng).

Testing và validation

Dữ liệu thực nghiệm

  • Tập dữ liệu Binkit (Huấn luyện & Đánh giá Validator): Trích xuất từ 3 ứng dụng chuẩn cppi, cflow, ccd2cue biên dịch trên 8 kiến trúc CPU, 20 phiên bản trình biên dịch GCC/Clang và 5 mức tối ưu hóa (-O0 đến -Ofast), tạo ra tổng cộng 25.350 cặp ảnh cho mỗi trường hợp.
  • Tập dữ liệu Malware (Huấn luyện & Đánh giá RL): 1.300 mẫu PE thực tế thu thập từ VirusShareMalicia Project (1.000 mẫu huấn luyện, 300 mẫu kiểm tra độc lập gồm 5 họ mã độc).
+------------------------------------------------------------------------------------+
| PHÂN PHỐI MẪU MÃ ĐỘC TRONG TẬP KIỂM TRA ĐỘC LẬP (300 FILES)                       |
| Locker: 60 files | Mediyes: 60 files | Winwebsec: 60 files | Zbot: 60 | Zeroaccess: 60 |
+------------------------------------------------------------------------------------+

Kết quả đạt được

1. Đánh giá mô-đun kiểm chứng chức năng CNN (Kịch bản 1)

Kết quả đánh giá trên tập dữ liệu kiểm tra độc lập với 3 cấu hình thiết lập kênh màu thứ 3:

Cấu hình Kênh 3 của Ảnh Tập Huấn luyện (60%) Tập Điều chỉnh (20%) Tập Kiểm tra (20%) Độ chính xác (Accuracy)
Kênh 3 = Giá trị 0 (Zero-filled) 15.210 ảnh 5.070 ảnh 5.070 ảnh 98.42%
Kênh 3 = Kênh 1 (Duplicate Ch1) 15.210 ảnh 5.070 ảnh 5.070 ảnh 97.85%
Kênh 3 = Kênh 2 (Duplicate Ch2) 15.210 ảnh 5.070 ảnh 5.070 ảnh 97.91%

Nhận xét: Việc thiết lập Kênh 3 với giá trị cố định 0 mang lại độ chính xác cao nhất (98.42%), tối ưu hóa khả năng tách biệt đặc trưng giữa hai tệp nhị phân.

2. So sánh hiệu quả né tránh có kiểm chứng chức năng (Kịch bản 4 & 5)

So sánh giữa mô hình RL không có Validator và mô hình RL tích hợp Validator trên tập kiểm tra 300 mẫu mã độc:

+-------------------------------------------------------------------------------------+
| HIỆU SUẤT NÉ TRÁNH VÀ BẢO TOÀN CHỨC NĂNG TRÊN TẬP KIỂM TRA ĐỘC LẬP                  |
+------------------------------+---------------------------+--------------------------+
| Chỉ số đánh giá              | RL KHÔNG có Validator     | RL CÓ Validator (Đề xuất)|
+------------------------------+---------------------------+--------------------------+
| Evasion Rate (ER) - MalConv  | 82.33%                    | 79.67%                   |
| Evasion Rate - GradBoosting  | 74.00%                    | 71.33%                   |
| Tỷ lệ giữ nguyên chức năng   | 41.67%                    | **94.33%**               |
| ERFP (Né tránh + Còn chức năng)| 34.31%                  | **75.15%**               |
+------------------------------+---------------------------+--------------------------+
Tỷ lệ né tránh có bảo toàn chức năng (ERFP) tăng trưởng:
[RL Không Validator]  ■■■■■■■ (34.31%)
[RL Có Validator]     ■■■■■■■■■■■■■■■ (75.15%)  --> Cải thiện +119.03%

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

1. Đổi mới kỹ thuật mang tính đột phá

  • Tối ưu hóa thời gian trích xuất Prov2vex: Lược bỏ bước chuẩn hóa IR cồng kềnh giúp giảm thời gian tạo vector từ $10 - 50\text{ phút/tệp}$ xuống còn dưới $2\text{ giây/tệp}$, cho phép tích hợp trực tiếp vào vòng lặp học tăng cường thời gian thực.
  • Biểu diễn tương đồng nhị phân dưới dạng ảnh 2D: Phương pháp ánh xạ vector ghép nối thành ma trận 3 kênh mở ra hướng tiếp cận mới trong việc khai thác sức mạnh của mạng nơ-ron tích chập (CNN) để so sánh mã máy, thay thế các độ đo hình học truyền thống như Cosine hay Jaccard Distance vốn kém hiệu quả khi số chiều lớn.
  • Tác tử DistDQN với cơ chế Noisy Nets: Phân phối dự đoán giá trị phần thưởng thành phân phối xác suất giúp tác tử vượt qua các không gian hành động phi tuyến phức tạp, tránh rơi vào hành vi lặp đột biến không hiệu quả.
+---------------------------------------------------------------------------------------+
| BẢNG ĐỐI CHIẾU VỚI CÁC CÔNG TRÌNH NGHIÊN CỨU TIÊU BIỂU TRÊN THẾ GIỚI                 |
+-------------------+--------------------+-----------------------+----------------------+
| Tiêu chí          | Anderson et al.[2] | DiDQN + Sandbox [3]   | Đề tài này (2024)    |
+-------------------+--------------------+-----------------------+----------------------+
| Thuật toán RL     | DQN tiêu chuẩn     | Double DQN (DiDQN)    | DistDQN + Noisy Nets |
| Kiểm chứng chức năng| Không có          | Sandbox máy ảo động   | Optimized Prov2vex+CNN|
| Thời gian phản hồi| Nhanh              | Rất chậm (>1 phút/tệp)| Rất nhanh (~2s/tệp)  |
| Tỷ lệ ERFP thực tế| Thấp (<40%)        | Trung bình (~55%)     | **Cao (75.15%)**     |
+-------------------+--------------------+-----------------------+----------------------+

2. Đóng góp học thuật và công nghệ

  1. Cung cấp bộ cơ sở thực nghiệm chi tiết về tính dễ bị tổn thương của các mô hình phát hiện mã độc học sâu trước kỹ thuật đột biến đối kháng.
  2. Đóng góp quy trình kiểm chứng tương đồng nhị phân tĩnh siêu nhẹ, có thể ứng dụng độc lập trong các hệ thống phân tích mã độc tự động tại các trung tâm SOC/CERT.

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

Kịch bản triển khai trong thực tế (Use Cases)

+-----------------------------------------------------------------------------------+
| KỊCH BẢN TRIỂN KHAI: ĐÁNH GIÁ ĐỘ BỀN VỮNG CỦA HỆ THỐNG PHÒNG THỦ AI               |
|                                                                                   |
|  [Hệ thống Sinh Biến thể RL] ---> [Tạo 10.000 Biến thể Đối kháng Có chức năng]    |
|                                                     |                             |
|                                                     v                             |
|  [Bộ phân loại Malware AI/ML] <--- [Kiểm thử Thâm nhập & Tấn công Thử nghiệm]     |
|              |                                                                    |
|              v                                                                    |
|  [Adversarial Retraining] ----> [Nâng cao Năng lực Phát hiện & Miễn dịch Bền vững]|
+-----------------------------------------------------------------------------------+
  1. Adversarial Hardening cho các giải pháp EDR/Antivirus: Các nhà phát triển giải pháp bảo mật sử dụng mô hình này để tự động sinh hàng triệu mẫu biến thể đối kháng có bảo toàn chức năng, phục vụ công tác huấn luyện tăng cường (Adversarial Training) giúp mô hình phòng thủ đạt độ bền vững cao.
  2. Kiểm thử tự động hệ thống nhận diện mã độc (Automated Red Teaming): Đóng vai trò là công cụ tự động hóa kiểm định năng lực phát hiện của các cổng bảo mật (Security Gateways) trước khi triển khai thực tế.

Yêu cầu triển khai hệ thống (Deployment Requirements)

  • Hạ tầng phần cứng:
    • CPU: Intel Core i7 / AMD Ryzen 7 trở lên (tối thiểu 8 cores để chạy đa luồng DistDQN).
    • RAM: Tối thiểu 16GB.
    • GPU: NVIDIA RTX 3060 12GB VRAM trở lên (hỗ trợ CUDA) để tăng tốc huấn luyện CNN và MalConv.
  • Môi trường phần mềm: Linux Ubuntu 22.04 LTS hoặc Windows Subsystem for Linux (WSL2), Python 3.8, CUDA Toolkit 11.8, Docker container hóa môi trường phân tích.

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

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

  1. Phân tích tĩnh phụ thuộc VEX-IR: Nếu mã độc áp dụng các kỹ thuật làm rối mã mức nâng cao (Obfuscation, Dynamic API Resolving, Self-modifying code), việc phân rã assembly tĩnh có thể bị sai lệch.
  2. Không gian hành động giới hạn: Hiện tại chỉ hỗ trợ 10 hành động trên cấu trúc PE; chưa hỗ trợ các kỹ thuật can thiệp sâu vào luồng điều khiển (Control Flow Flattening).
  3. Phạm vi nền tảng: Mới chỉ áp dụng trên định dạng tệp PE của Windows, chưa mở rộng cho định dạng ELF (Linux) hoặc Mach-O (macOS).

Hướng phát triển trong tương lai

  • Tích hợp thêm các kỹ thuật phân tích luồng điều khiển (Control Flow Graph - CFG) kết hợp mạng đồ thị (Graph Neural Network - GNN) vào mô-đun kiểm chứng chức năng.
  • Mở rộng không gian hành động sang các kỹ thuật làm rối mã mức chỉ thị (Instruction-level Obfuscation) và mã hóa động.
  • Phát triển giao diện người dùng trực quan (Web-based GUI Dashboard) phục vụ các chuyên gia phân tích mã độc và kỹ sư an toàn thông tin.

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

+-----------------------------------------------------------------------------------+
| MA TRẬN GIÁ TRỊ DÀNH CHO CÁC NHÓM ĐỐI TƯỢNG                                       |
+-------------------+---------------------------------------------------------------+
| Nhóm đối tượng    | Lợi ích định lượng & Ứng dụng thực tế                         |
+-------------------+---------------------------------------------------------------+
| Sinh viên CNTT    | Tài liệu mẫu mực về kết hợp Học tăng cường, Deep Learning    |
| & An toàn thông tin| và Kỹ thuật đảo ngược (Reverse Engineering).                 |
+-------------------+---------------------------------------------------------------+
| Kỹ sư An toàn     | Framework tự động hóa kiểm thử hộp đen tính bền vững của các  |
| thông tin (SOC/DFIR)| giải pháp phòng thủ máy học.                                 |
+-------------------+---------------------------------------------------------------+
| Doanh nghiệp      | Rút ngắn 80% thời gian tạo dữ liệu mẫu cho Adversarial        |
| Phát triển AV/EDR | Training, nâng cao tỷ lệ phát hiện biến thể zero-day.         |
+-------------------+---------------------------------------------------------------+
| Nhà nghiên cứu AI | Kiến trúc tham chiếu về tối ưu hóa Prov2vex và CNN xử lý      |
| trong Bảo mật     | dữ liệu nhị phân dạng ảnh 3 kênh.                             |
+-------------------+---------------------------------------------------------------+

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

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

Hệ thống yêu cầu máy trạm có tối thiểu CPU 8 luồng, 16GB RAM và GPU hỗ trợ CUDA với 8GB VRAM trở lên. Môi trường yêu cầu Python 3.8 cùng các thư viện chuyên dụng: lief, pyvex, tensorflow, chainer_rl.

2. Tại sao việc tối ưu hóa Prov2vex không làm giảm độ chính xác kiểm chứng?

Việc lược bỏ bước chuẩn hóa (canonicalization) giữ nguyên cấu trúc phân bố tần suất của các biểu thức toán tử cơ bản. Mô hình CNN với 64 bộ lọc ở lớp tích chập đủ năng lực tự trích xuất các mẫu tương đồng không gian từ ma trận phân bố băm mà không cần đưa về dạng văn bản chuẩn hóa.

3. Mô hình có thể tích hợp vào các hệ thống phát hiện mã độc thương mại hiện có không?

Hoàn toàn có thể. Mô-đun tạo biến thể giao tiếp qua API tệp tin PE chuẩn, có thể đóng vai trò như một bộ tạo dữ liệu đối kháng (Adversarial Data Generator) cắm trực tiếp vào đường ống huấn luyện (Training Pipeline) của bất kỳ hệ thống EDR hay Antivirus nào.

4. Chi phí bảo trì và vận hành hệ thống như thế nào?

Do mô hình kiểm chứng sử dụng phân tích tĩnh tối ưu hóa (không cần duy trì trang trại máy ảo sandbox tốn kém), chi phí tài nguyên phần cứng giảm hơn $85%$ so với các giải pháp kiểm thử động truyền thống.

5. Khả năng mở rộng (Scalability) của giải pháp này ra sao?

Thuật toán DistDQN có khả năng phân tán đa tiến trình (multi-worker), cho phép mở rộng quy mô huấn luyện trên các cụm máy chủ GPU tính toán hiệu năng cao để xử lý hàng trăm nghìn mẫu mã độc cùng lúc.


Kết luận

Đề tài khóa luận tốt nghiệp "Phương pháp tạo biến thể mã độc Windows dựa trên học tăng cường có kiểm chứng chức năng bằng so sánh tương đồng nhị phân" của nhóm tác giả Phan Ngọc Yến Nhi và Hoàng Thanh Lam (Trường Đại học Công nghệ Thông tin – ĐHQG-HCM) đã giải quyết thành công bài toán then chốt trong nghiên cứu an toàn thông tin hiện đại: Tự động hóa sinh biến thể mã độc đối kháng mà vẫn bảo toàn trọn vẹn chức năng thực thi.

Bằng việc kết hợp sáng tạo giữa thuật toán học tăng cường tiên tiến DistDQN, kỹ thuật trích xuất đặc trưng Prov2vex tối ưu hóa và mạng học sâu CNN 8 lớp xử lý biểu diễn ảnh 3 kênh, đề tài đã đạt được những kết quả vượt bậc:

  • Độ chính xác kiểm chứng tương đồng chức năng đạt $98.42%$.
  • Nâng cao tỷ lệ né tránh có kiểm chứng chức năng (ERFP) lên mức $75.15%$ (cải thiện hơn $119%$ so với các mô hình không có cơ chế kiểm chứng).
  • Tối ưu hóa thời gian phân tích từ hàng chục phút xuống mức thời gian thực.

Công trình không chỉ mang giá trị học thuật xuất sắc trong lĩnh vực Trí tuệ nhân tạo ứng dụng cho An ninh mạng (AI for Cybersecurity) mà còn cung cấp một công cụ thực tiễn đắc lực phục vụ công tác đánh giá, kiểm thử và nâng cao năng lực phòng thủ chủ động cho các hệ thống an toàn thông tin thế hệ mới.