Bối cảnh và vấn đề nghiên cứu

Sự bùng nổ của Internet of Things (IoT) đã đưa hàng tỷ thiết bị vật lý kết nối vào không gian mạng, với quy mô thị trường toàn cầu ước tính đạt 389 tỷ USD vào năm 2020 và dự kiến vượt 1.000 tỷ USD vào năm 2030. Tuy nhiên, phần lớn các thiết bị IoT có năng lực tính toán hạn chế, thiếu các cơ chế bảo mật phần cứng và phần mềm hoàn chỉnh, dẫn đến hơn 50% trong tổng số khoảng 31 tỷ thiết bị (tính đến năm 2020) có nguy cơ bị tấn công nghiêm trọng. Các lỗ hổng ở cấp độ vật lý, hệ điều hành và giao thức mạng cho phép kẻ tấn công chiếm quyền điều khiển, tạo dựng các mạng botnet quy mô lớn để thực hiện tấn công từ chối dịch vụ phân tán (DDoS). Điển hình như mã độc Mirai năm 2016 đã lây nhiễm 65.000 thiết bị IoT trong 20 giờ đầu tiên, đạt đỉnh 200.000 thiết bị bị kiểm soát, tạo ra các luồng tấn công DDoS lưu lượng 620 Gbps nhắm vào trang tin Brian Krebs và 1,1 Tbps nhắm vào nhà cung cấp OVH, làm tê liệt hàng loạt dịch vụ trực tuyến lớn.

Để đối phó với các nguy cơ trên, việc triển khai các hệ thống phát hiện xâm nhập (IDS) là yêu cầu cấp thiết. Tuy nhiên, các phương pháp truyền thống bộc lộ nhiều điểm nghẽn:

  • Hệ thống dựa trên dấu hiệu (Signature-based IDS): Không có khả năng phát hiện các cuộc tấn công mới (zero-day) và phụ thuộc hoàn toàn vào cơ sở dữ liệu luật do chuyên gia phân tích thủ công.
  • Hệ thống dựa trên sự bất thường (Anomaly-based IDS): Tạo ra tỷ lệ cảnh báo sai (False Positive Rate) cao do sự không đồng nhất và biến động phức tạp của lưu lượng mạng IoT.
  • Hạn chế về dữ liệu huấn luyện học sâu: Việc ứng dụng học sâu (Deep Learning) đòi hỏi tập dữ liệu gán nhãn lớn, nhưng dữ liệu an ninh mạng thường bị mất cân bằng nghiêm trọng giữa lưu lượng bình thường và các lớp tấn công hiếm (ví dụ: trong bộ dữ liệu UNSW-NB15, lớp tấn công Worms chỉ có 174 mẫu so với 44.525 mẫu của lớp Exploits), đồng thời các rào cản về quyền riêng tư khiến việc thu thập dữ liệu thô gặp nhiều khó khăn.

Khóa luận xác định ba nhiệm vụ và mục tiêu nghiên cứu cụ thể:

  1. Xây dựng hoàn chỉnh một hệ thống phát hiện xâm nhập mạng (NIDS) thông minh mang tên IMIDS, hoạt động hiệu quả từ khâu bắt gói tin mạng thời gian thực, trích xuất đặc trưng, huấn luyện/phân loại bằng học sâu cho đến giao diện web trực quan.
  2. Khắc phục tình trạng mất cân bằng dữ liệu bằng cách ứng dụng mạng sinh đối kháng có điều kiện (CTGAN) để tạo dữ liệu tấn công tổng hợp cho các lớp thiểu số, qua đó nâng cao độ chính xác của bộ phân loại.
  3. Tối ưu hóa mô hình học sâu (CNN 1D) nhằm giảm thiểu chi phí tính toán nhưng vẫn đảm bảo độ chính xác cao trên các tập dữ liệu lưu lượng mạng quy mô lớn.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Mô hình học sâu phát hiện và phân loại tấn công mạng (CNN); mô hình mạng sinh đối kháng có điều kiện (CTGAN); kiến trúc hệ thống NIDS tích hợp giao diện điều khiển web.
  • Phạm vi nghiên cứu: Nghiên cứu thực nghiệm trên hai bộ dữ liệu chuẩn quốc tế là UNSW-NB15 (2.540.044 bản ghi) và CICIDS2017 (2.830.743 bản ghi); triển khai thử nghiệm bắt và phân tích luồng dữ liệu mạng cục bộ theo thời gian thực đối với các hành vi duyệt web thông thường, quét cổng (PortScan) và tấn công từ chối dịch vụ (DDoS).

Cơ sở lý thuyết và phương pháp

Khóa luận dựa trên nền tảng lý thuyết về an toàn mạng, kiến trúc hệ thống phát hiện xâm nhập và các kỹ thuật học máy/học sâu:

1. Khung lý thuyết và mô hình kỹ thuật

  • Phân loại hệ thống IDS: Hệ thống phát hiện xâm nhập trên máy chủ (HIDS) và hệ thống phát hiện xâm nhập trên mạng (NIDS); phân loại theo phương pháp phát hiện gồm dựa trên dấu hiệu, dựa trên sự bất thường và phương pháp kết hợp (Hybrid).
  • Kỹ thuật học máy và học sâu:
    • Mô hình phân loại CNN (Convolutional Neural Network): Sử dụng mạng nơ-ron tích chập 1 chiều (1D-CNN) gồm các lớp Convolutional, hàm kích hoạt phi tuyến ReLU ($h(x) = \max(0, x)$), lớp lấy mẫu Max Pooling để giảm số chiều, lớp Dropout chống quá khớp (overfitting) và lớp Fully Connected kết hợp hàm mất mát Categorical Cross-Entropy để phân loại đa lớp.
    • Mô hình mạng sinh đối kháng có điều kiện (Conditional WGAN / CTGAN): Kiến trúc gồm mạng sinh (Generator) và mạng phân biệt (Discriminator/Critic). Generator học phân phối dữ liệu dạng bảng có điều kiện $P_G(\text{row} \mid D_i = K)$ thông qua vector điều kiện $Ct_{\text{vector}} = m_1 \oplus m_2 \oplus \dots \oplus m_{|D|}$ (dạng one-hot vector) kết hợp hàm mất mát Cross-Entropy và cơ chế lấy mẫu theo điều kiện (conditional sampling) để tổng hợp bản ghi lưu lượng mạng nhân tạo.

2. Phương pháp nghiên cứu

  • Phương pháp thu thập và trích xuất đặc trưng luồng mạng: Bắt gói tin định dạng PCAP bằng thư viện Scapy; tùy biến mã nguồn tệp flow.py của công cụ CICFlowMeter để tính toán và trích xuất hơn 70 đặc trưng thống kê của luồng TCP/UDP theo cả hai chiều truyền nhận.
  • Phương pháp tiền xử lý dữ liệu dạng bảng:
    • Hợp nhất tệp dữ liệu thô đa phần thành tập dữ liệu hoàn chỉnh.
    • Xử lý giá trị rỗng (Null/NaN) và giá trị vô cùng (Infinity).
    • Loại bỏ các đặc trưng có tương quan tuyến tính cao ($r > 0.95$) và các đặc trưng định danh mạng không phục vụ phân loại (IP nguồn/đích, cổng nguồn/đích, Timestamp, Flow ID).
    • Chuẩn hóa phân phối lệch bằng hàm $\log(1+p)$ kết hợp chuẩn hóa Standard Scaler ($z = \frac{x - \mu}{\sigma}$) hoặc Min-Max Normalization ($x' = \frac{x - \min}{\max - \min}$).
    • Mã hóa biến phân loại (Categorical variables) bằng kỹ thuật One-Hot Encoding.
  • Phương pháp đánh giá thực nghiệm: Đánh giá hiệu năng bằng các chỉ số Ma trận nhầm lẫn (Confusion Matrix), Độ chính xác tổng thể (Accuracy), Độ chuẩn xác (Precision), Độ thu hồi (Recall) và Điểm F1 (F1-score).

3. Nguồn dữ liệu thực nghiệm

  • Tập dữ liệu UNSW-NB15: Do Cyber Range Lab thuộc Đại học New South Wales (UNSW Canberra) tạo ra bằng công cụ IXIA PerfectStorm, thu thập 100 GB lưu lượng mạng thô; gồm 49 đặc trưng gốc, 2.540.044 bản ghi phân bố trong 4 tệp CSV, bao gồm lưu lượng bình thường và 9 lớp tấn công: Fuzzers, Analysis, Backdoors, DoS, Exploits, Generic, Reconnaissance, Shellcode, Worms.
  • Tập dữ liệu CICIDS2017: Do Viện An ninh mạng Canada (CIC) công bố, thu thập liên tục trong 5 ngày làm việc (03/07/2017 – 07/07/2017) với 2.830.743 bản ghi trong 8 tệp CSV; bao gồm lưu lượng Benign và 14 lớp tấn công mạng hiện đại: DoS Hulk, PortScan, DDoS, DoS GoldenEye, FTP-Patator, SSH-Patator, DoS slowloris, DoS Slowhttptest, Bot, Web Attack-Brute Force, Web Attack-XSS, Infiltration, Web Attack-Sql Injection, Heartbleed.

Thiết kế và triển khai hệ thống

Hệ thống IMIDS được thiết kế theo kiến trúc module hóa hướng dịch vụ, tích hợp quy trình xử lý dữ liệu khép kín phục vụ cả môi trường ngoại tuyến (huấn luyện) và trực tuyến (phân tích giám sát).

1. Kiến trúc tổng thể và các module chức năng

Hệ thống gồm 4 khối thành phần chính:

  • Khối thu thập dữ liệu (Network Capture Block): Lắng nghe trực tiếp trên card mạng (interface) bằng thư viện Scapy, bắt các gói tin truyền qua mạng và ghi nhận thành tệp định dạng PCAP.
  • Khối trích xuất đặc trưng (Feature Extraction Block): Tiếp nhận gói tin PCAP từ khối Network Capture, sử dụng công cụ CICFlowMeter đã được tùy biến để phân rã luồng mạng và trích xuất các thuộc tính thống kê tương thích với định dạng đầu vào của mô hình IDS.
  • Khối huấn luyện và phân loại học sâu (IDS Core Module):
    • Chế độ huấn luyện (Training Phase): Nhận dữ liệu đã chuẩn hóa (kèm dữ liệu bổ sung từ CTGAN nếu có), cập nhật trọng số cho mô hình CNN 1D và lưu trữ mô hình đã huấn luyện.
    • Chế độ dự đoán (Prediction Phase): Nạp trọng số mô hình đã lưu, tiếp nhận luồng đặc trưng từ Feature Extractor để phân loại hành vi lưu lượng theo thời gian thực.
  • Khối giao diện điều khiển (Web Interface): Xây dựng trên nền tảng framework Django (Python), tích hợp thư viện Chart.js hiển thị biểu đồ phân tích dữ liệu, ma trận nhầm lẫn và bảng giám sát cảnh báo.
[ Lưu lượng mạng thực tế ] 
                                            [ Tiền xử lý & Chuẩn hóa ]

2. Kiến trúc chi tiết mô hình phân loại 1D-CNN

Mô hình mạng nơ-ron tích chập 1D đề xuất gồm 10 lớp, chia làm hai giai đoạn:

  • Giai đoạn trích xuất đặc trưng:
    • Lớp Conv1D thứ nhất và thứ hai (kèm hàm kích hoạt ReLU) tạo ra feature map với 64 bộ lọc (filters).
    • Lớp MaxPooling1D thứ nhất thực hiện giảm kích thước không gian đặc trưng (đối với UNSW-NB15, giảm từ $197 \times 64$ xuống $98 \times 64$).
    • Lớp Conv1D thứ ba và thứ tư tiếp tục lọc đặc trưng bậc cao.
    • Lớp MaxPooling1D thứ hai giảm chiều dữ liệu về kích thước $48 \times 128$.
  • Giai đoạn phân loại tấn công:
    • Lớp Flatten duỗi phẳng feature map thành một vector phẳng 6.272 chiều.
    • Lớp Fully Connected (Dense) kết hợp lớp Dropout với tỷ lệ loại bỏ ngẫu nhiên 50% ($p=0.5$) nhằm triệt tiêu hiện tượng quá khớp.
    • Lớp Fully Connected đầu ra (Dense Softmax) đưa ra vector phân phối xác suất tương ứng với số lớp tấn công (vector 10 chiều cho UNSW-NB15; vector 15 chiều cho CICIDS2017).

3. Công nghệ và thư viện triển khai

  • Ngôn ngữ lập trình: Python.
  • Học máy và Học sâu: TensorFlow, Keras, Scikit-learn, CTGAN.
  • Xử lý lưu lượng mạng: Scapy, CICFlowMeter (chỉnh sửa flow.py).
  • Nền tảng Web và Trực quan hóa: Django Framework, JavaScript, Chart.js.

Nội dung chính theo từng chương

Chương 1. Đặt vấn đề, Mục tiêu, Đối tượng và Phạm vi nghiên cứu

Chương 1 thiết lập tính cấp thiết của đề tài xuất phát từ các cuộc tấn công mạng quy mô lớn nhắm vào thiết bị IoT (như mạng botnet Mirai). Tác giả xác định rõ mục tiêu phát triển hệ thống IMIDS gọn nhẹ, đạt độ chính xác cao và giải quyết triệt để rào cản thiếu dữ liệu huấn luyện cân bằng thông qua mạng sinh CTGAN. Chương này cũng phân định ranh giới nghiên cứu tập trung vào NIDS xử lý theo luồng dữ liệu, thử nghiệm trên hai tập dữ liệu chuẩn UNSW-NB15 và CICIDS2017.

Chương 2. Tổng quan về hệ thống phát hiện xâm nhập

Chương 2 phân tích chuyên sâu cơ sở lý thuyết về NIDS, HIDS và so sánh ba phương pháp phát hiện tấn công chính:

Phương pháp phát hiện Tỷ lệ dương tính giả (FPR) Hao tốn tài nguyên Độ linh hoạt Độ tin cậy Tốc độ xử lý
Dựa trên sự bất thường Cao Không tối ưu Cao Cao Trung bình
Dựa trên dấu hiệu Thấp Tối ưu Thấp Thấp Cao
Kết hợp (Hybrid) Trung bình Trung bình Cao Cao Cao

Bên cạnh đó, chương 2 tổng hợp các thuật toán học máy (SVM, Random Forest, K-Means, PCA) và học sâu (1D-CNN, LSTM, GAN, WGAN, CTGAN, TableGAN, MedGAN); phân tích vai trò của các thư viện TensorFlow, Keras, Scikit-learn, Scapy, CICFlowMeter, Django; đồng thời điểm luận các công trình nghiên cứu NIDS quốc tế liên quan từ năm 2015 đến 2021.

Chương 3. Nội dung và phương pháp

Chương 3 trình bày chi tiết phương pháp luận và các bước triển khai kỹ thuật của giải pháp IMIDS:

  • Tiền xử lý tập dữ liệu UNSW-NB15:
    • Hợp nhất 4 tệp CSV chứa 2.540.044 bản ghi.
    • Chuyển đổi 1.552.862 giá trị null trong trường attack_cat thành nhãn normal.
    • Hiệu chỉnh kiểu dữ liệu cho ct_ftp_cmd (chuyển về dạng số), is_ftp_login (nhị phân), thay thế ký tự '-' trong trường service bằng giá trị None.
    • Gộp hai nhãn trùng lặp 'backdoor' và 'backdoors' thành nhãn duy nhất 'backdoors'.
    • Tạo mới đặc trưng tổng hợp network_bytes = sbytes + dbytes.
    • Loại bỏ các cột tương quan cao ($r > 0.95$) và các cột định danh địa chỉ (srcip, sport, dstip, dsport).
    • Áp dụng phép biến đổi $\log(1+p)$, chuẩn hóa Standard Scaler và One-Hot Encoding trên các biến danh mục (proto, service, state), mở rộng không gian đặc trưng từ 49 lên 197 thuộc tính.
  • Tiền xử lý tập dữ liệu CICIDS2017:
    • Loại bỏ 288.602 dòng chỉ chứa toàn giá trị NaN trong tệp Thursday-WorkingHours-Morning-WebAttacks.csv, sau đó hợp nhất 8 tệp CSV (tổng cộng 2.830.743 bản ghi).
    • Loại bỏ đặc trưng trùng lặp Fwd Header Length.1.
    • Loại bỏ các đặc trưng chỉ chứa một giá trị hằng số duy nhất (như Bwd PSH Flags, Bwd URG Flags, Fwd Avg Bytes/Bulk, Fwd Avg Packets/Bulk, Fwd Avg Bulk Rate, Bwd Avg Bytes/Bulk, Bwd Avg Packets/Bulk, Bwd Avg Bulk Rate).
    • Loại bỏ các cột không phục vụ phân loại (Flow ID, Source IP, Destination IP, Timestamp).
    • Thay thế giá trị NaN và Infinity bằng giá trị $-1$.
    • Áp dụng chuẩn hóa Min-Max Normalization cho toàn bộ các đặc trưng số, thu được tập dữ liệu đầu vào gồm 71 đặc trưng.
  • Thiết kế CTGAN và Module Web: Xây dựng cơ chế sinh dữ liệu có điều kiện CTGAN bằng mask vector và vector điều kiện $Ct_{\text{vector}}$; thiết kế 3 phân hệ web: Phân tích dữ liệu (Dataset Analysis), Huấn luyện & Đánh giá (Train & Evaluate), Bắt gói tin & Phân loại trực tiếp (Capture Traffic & Predict).

Chương 4. Thực nghiệm và đánh giá

Chương 4 công bố các kết quả thực nghiệm đạt được:

  • Đánh giá hiệu năng mô hình 1D-CNN trên tập kiểm thử độc lập của cả hai bộ dữ liệu, phân tích ma trận nhầm lẫn cho 10 lớp (UNSW-NB15) và 15 lớp (CICIDS2017).
  • Đánh giá tác động của dữ liệu tổng hợp CTGAN: Việc bổ sung các mẫu sinh nhân tạo của lớp thiểu số Backdoors giúp ma trận nhầm lẫn sau khi tái huấn luyện (retrain) cải thiện rõ rệt số lượng mẫu dự đoán chính xác.
  • So sánh hiệu năng với các nghiên cứu công bố gần đây trên cùng bộ dữ liệu.
  • Kiểm thử chức năng toàn diện trên giao diện web thực tế thông qua 3 kịch bản: lưu lượng duyệt web thông thường, tấn công quét cổng (PortScan) và tấn công từ chối dịch vụ (DDoS), chứng minh hệ thống bắt gói tin, trích xuất đặc trưng và đưa ra cảnh báo chính xác theo thời gian thực.

Chương 5. Tổng kết và hướng phát triển

Chương 5 đúc kết các đóng góp về mặt khoa học kỹ thuật và giá trị ứng dụng thực tiễn của đề tài trong việc bảo vệ hạ tầng IoT; đồng thời chỉ rõ các định hướng nâng cấp trong tương lai.


Kết quả và đóng góp

1. Kết quả định lượng trên các tập dữ liệu chuẩn

Mô hình học sâu 1D-CNN trong hệ thống IMIDS đạt hiệu năng cao trên cả hai tập dữ liệu quy mô lớn:

Tập dữ liệu Số bản ghi xử lý Số đặc trưng đầu vào Số lớp phân loại Điểm F1 trung bình (F1-score)
UNSW-NB15 2.540.044 197 10 (9 tấn công + 1 Normal) 97,22%
CICIDS2017 2.830.743 71 15 (14 tấn công + 1 Benign) 96,32%

2. Hiệu quả cải thiện từ mô hình mạng sinh CTGAN

Thực nghiệm cho thấy việc đưa dữ liệu tổng hợp từ CTGAN vào huấn luyện bổ sung giúp giải quyết hiệu quả điểm nghẽn mất cân bằng dữ liệu ở các lớp tấn công hiếm (như Backdoors trên UNSW-NB15), giúp mô hình nâng cao độ nhạy phát hiện mà không làm suy giảm độ chính xác tổng thể hay phải thay đổi cấu trúc mạng phân loại.

3. Đóng góp khoa học và giải pháp kỹ thuật

  • Đề xuất một kiến trúc IDS nhẹ dựa trên 1D-CNN với 10 lớp xử lý, tối ưu hóa tốc độ tính toán nhưng vẫn trích xuất được các mối tương quan đa chiều phức tạp trong dữ liệu luồng mạng IoT.
  • Xây dựng thành công quy trình sinh dữ liệu bảng mạng bằng CTGAN có điều kiện, cung cấp giải pháp khắc phục vấn đề mất cân bằng dữ liệu và thiếu hụt dữ liệu gán nhãn do rào cản bảo mật thông tin.
  • Hoàn thiện hệ thống thực nghiệm NIDS đầu cuối (end-to-end), tích hợp liên thông từ khối bắt gói tin (Scapy), khối trích xuất luồng (CICFlowMeter tùy biến) đến giao diện quản trị web trực quan (Django), cho phép giám sát, phân tích và phản ứng kịp thời với các cuộc tấn công mạng.

Hạn chế và hướng nghiên cứu tiếp

Khóa luận chỉ ra các hạn chế thực tế và vạch ra các hướng phát triển tiếp theo:

Hạn chế của nghiên cứu

  • Hệ thống hoạt động theo cơ chế huấn luyện ngoại tuyến (offline training): Khi tiến hành huấn luyện bổ sung hoặc cập nhật tham số mô hình, hệ thống phải tạm dừng chế độ giám sát phát hiện tấn công trực tiếp.
  • Quy trình tiền xử lý và huấn luyện trên các tập dữ liệu hàng triệu bản ghi đòi hỏi tài nguyên tính toán đáng kể trong giai đoạn chuẩn bị dữ liệu ban đầu.

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

  • Nghiên cứu và tích hợp cơ chế huấn luyện trực tuyến (online/incremental learning) giúp mô hình tự động cập nhật trọng số liên tục theo thời gian thực mà không làm gián đoạn tiến trình giám sát.
  • Mở rộng phạm vi sinh dữ liệu của mô hình CTGAN cho toàn bộ các lớp tấn công thiểu số khác trong mạng IoT (như Worms, Infiltration, Heartbleed, SQL Injection).
  • Tối ưu hóa sâu hơn nữa cấu trúc mô hình để có thể nhúng trực tiếp lên các thiết bị phần cứng IoT Gateway có tài nguyên cực kỳ hạn chế (Edge Computing).

Giá trị tham khảo

Tài liệu khóa luận có giá trị tham khảo ứng dụng và học thuật cao đối với:

  • Sinh viên và học viên chuyên ngành An toàn thông tin, Mạng máy tính: Cung cấp tài liệu tham khảo chi tiết về quy trình thu thập, phân tích lưu lượng mạng bằng Scapy và CICFlowMeter; các bước tiền xử lý chuyên sâu trên hai bộ dữ liệu thực tế UNSW-NB15 và CICIDS2017.
  • Nghiên cứu sinh và kỹ sư phát triển AI trong an ninh mạng: Đóng vai trò là tài liệu tham khảo về kiến trúc mạng 1D-CNN cho dữ liệu dạng bảng (tabular network data) và phương pháp ứng dụng Conditional GAN (CTGAN) để giải quyết bài toán mất cân bằng dữ liệu mạng.
  • Kỹ sư phát triển hệ thống giám sát an toàn thông tin: Bản mẫu kiến trúc hoàn chỉnh tích hợp giữa backend học máy Python/TensorFlow và giao diện web điều khiển Django phục vụ giám sát luồng lưu lượng mạng thực tế.

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

1. Mô hình phân loại cốt lõi của hệ thống IMIDS có cấu trúc như thế nào?
Mô hình sử dụng mạng nơ-ron tích chập 1 chiều (1D-CNN) gồm 10 lớp: 4 lớp tích chập Conv1D (kèm hàm kích hoạt ReLU), 2 lớp lấy mẫu MaxPooling1D, 1 lớp Flatten duỗi thẳng dữ liệu thành vector 6.272 chiều, 1 lớp Dense kết hợp Dropout 50% để tránh overfitting, và 1 lớp Dense đầu ra Softmax sử dụng hàm mất mát Categorical Cross-Entropy để phân loại đa lớp.

2. Tác giả đã xử lý những đặc trưng nào trong bộ dữ liệu UNSW-NB15 để tăng từ 49 lên 197 đặc trưng?
Tác giả đã chuyển đổi 1.552.862 giá trị null của trường attack_cat thành nhãn normal, sửa kiểu dữ liệu cho ct_ftp_cmd, is_ftp_login, thay thế ký tự '-' trong service bằng None, gộp nhãn backdoor và backdoors, tạo đặc trưng mới network_bytes ($=\text{sbytes} + \text{dbytes}$), loại bỏ các cột tương quan $> 0.95$ và các cột địa chỉ IP/Port, sau đó áp dụng phép biến đổi $\log(1+p)$, Standard Scaler và mã hóa One-Hot Encoding trên các trường danh mục (proto, service, state).

3. Vì sao mạng sinh đối kháng truyền thống (Vanilla GAN) không hiệu quả với dữ liệu lưu lượng mạng và CTGAN giải quyết vấn đề này ra sao?
Dữ liệu lưu lượng mạng là dữ liệu dạng bảng chứa nhiều cột mang giá trị rời rạc và bị mất cân bằng lớp nghiêm trọng, khiến Vanilla GAN dễ rơi vào trạng thái "mode collapse" và không mô hình hóa được phân phối thực. CTGAN khắc phục bằng cách sử dụng Generator có điều kiện $P_G(\text{row} \mid D_i = K)$, xây dựng vector điều kiện $Ct_{\text{vector}}$ (dạng one-hot) và áp dụng cơ chế huấn luyện bằng cách lấy mẫu theo điều kiện (conditional sampling).

4. Điểm F1 trung bình mà hệ thống IMIDS đạt được trên các tập dữ liệu thử nghiệm là bao nhiêu?
Hệ thống đạt điểm F1 trung bình là 97,22% khi nhận diện 9 loại tấn công trên tập dữ liệu UNSW-NB15 và 96,32% khi nhận diện 14 loại tấn công trên tập dữ liệu CICIDS2017.

5. Hệ thống IMIDS bắt gói tin và trích xuất đặc trưng luồng mạng bằng những công cụ nào?
Hệ thống sử dụng thư viện Scapy để bắt các gói tin mạng thô trả về tệp định dạng PCAP, sau đó sử dụng công cụ CICFlowMeter (đã được hiệu chỉnh mã nguồn trong tệp flow.py) để trích xuất hơn 70 đặc trưng thống kê của luồng mạng trước khi chuyển qua mô hình học sâu.


Kết luận

Khóa luận tốt nghiệp của tác giả Trần Ngọc Duẩn và Trần Trọng Đạt đã xây dựng thành công hệ thống phát hiện xâm nhập thông minh IMIDS tích hợp hoàn chỉnh từ module bắt gói tin, trích xuất đặc trưng đến giao diện giám sát web. Bằng việc kết hợp mạng nơ-ron tích chập 1D-CNN gọn nhẹ với mô hình mạng sinh đối kháng CTGAN, nghiên cứu đã giải quyết hiệu quả bài toán mất cân bằng dữ liệu và đạt điểm F1 vượt trội trên hai tập dữ liệu chuẩn UNSW-NB15 (97,22%) và CICIDS2017 (96,32%). Đây là công trình nghiên cứu kỹ thuật có hàm lượng thực nghiệm cao, cung cấp giải pháp khả thi và có giá trị tham khảo thực tiễn trong lĩnh vực bảo mật mạng cho các hệ sinh thái IoT.