Bài 9: IDS Dựa Trên Học Máy (Machine Learning-based IDS)


1. Tổng quan về IDS và thách thức

Nhắc lại: IDS là gì?

Intrusion (xâm nhập) là hành động truy cập trái phép vào thông tin bên trong một máy tính hoặc hệ thống mạng, ảnh hưởng đến tính bảo mật (Confidentiality), toàn vẹn (Integrity), và sẵn sàng (Availability) – bộ ba CIA.

Intrusion Detection and Prevention Systems (IDPS) tập trung vào:

  • Xác định các hành vi xâm nhập
  • Ghi log thông tin sự kiện
  • Cố gắng ngăn chặn tấn công
  • Báo cáo với quản trị viên bảo mật

Phân loại IDS

IDS
├── Theo cách triển khai / nguồn dữ liệu
│   ├── Network-based IDS (NIDS)
│   └── Host-based IDS (HIDS)
└── Theo kỹ thuật phát hiện
    ├── Signature-based IDS (SIDS)
    └── Anomaly-based IDS (AIDS)

Thách thức với IDS truyền thống

Giải pháp tiềm năng: IDS dựa trên Machine Learning (ML) và Deep Learning (DL).


2. Tổng quan về Machine Learning và Deep Learning

Machine Learning là gì?

ML là quá trình sử dụng các dữ liệu đã thấy để đưa ra thuật toán dự đoán cho những dữ liệu chưa từng thấy (dữ liệu tương lai).

Một thuật toán ML bao gồm:

  • Đầu vào: Tập dữ liệu huấn luyện (training dataset)
  • Kết quả: Một mô hình (model)
  • Model: Nhận đầu vào là dữ liệu mới cùng định dạng và đưa ra dự đoán
Training Dataset --> [ML/DL Algorithm] --> Model --> Dự đoán trên dữ liệu mới

Phân loại các phương pháp học máy

Học có giám sát – dữ liệu đầu vào đã được gán nhãn (label).

Classification (Phân lớp): Xác định thể loại của mỗi dữ liệu.

  • Nhị phân: Chỉ có 2 lớp. Ví dụ: phân loại tất cả sự kiện mạng thành tấn công hoặc bình thường.
  • Đa lớp: Có nhiều lớp. Ví dụ: xác định loại malware cụ thể là ransomware, keylogger, hay remote access trojan.

Regression (Hồi quy): Dự đoán một giá trị số thực. Ví dụ: dự đoán số lượng email lừa đảo một nhân viên sẽ nhận trong 1 tháng dựa trên vị trí làm việc, quyền hạn, thời gian làm việc…

Học không giám sát – dùng dữ liệu chưa được gán nhãn.

Clustering: Xác định các dữ liệu nào tương tự nhau và gom nhóm chúng lại. Ví dụ: phân tích lượng lớn traffic đến một website, có thể phân nhóm các request thành: botnet, người dùng thông thường, crawler…

Học bán giám sát – dữ liệu đầu vào gồm cả dữ liệu đã gán nhãn và chưa gán nhãn. Thích hợp khi việc gán nhãn tốn kém nhưng vẫn có một lượng nhỏ dữ liệu có nhãn.
Học tăng cường – đưa ra các quyết định dựa trên thử và sai. Dạy cho agent thực hiện tốt một task bằng cách tương tác với môi trường (environment) thông qua hành động (action) và nhận phần thưởng (reward). Ứng dụng trong IDS: cho phép hệ thống học cách phản ứng tối ưu với các tình huống tấn công qua thời gian.

3. Quy trình xây dựng ML-based IDS

flowchart LR A[Original Dataset] --> B[Preprocessing\nEncoding, Normalization,\nData Cleaning] B --> C[Training Dataset\n80%] B --> D[Testing Dataset\n20%] C --> E[ML/DL Algorithm\nTraining Phase] E --> F[Trained Model] F --> G[Testing Phase\nwith Testing Dataset] G --> H{Predictions} H --> I[Benign] H --> J[Attack]

3 bước chính:

  1. Tiền xử lý dữ liệu (Preprocessing):

    • Chuyển dữ liệu sang định dạng phù hợp cho thuật toán (encoding các giá trị categorical, normalization về cùng thang đo).
    • Data cleaning: loại bỏ dữ liệu nhiễu, thiếu.
    • Chia ngẫu nhiên thành 2 tập: training (80%)testing (20%).
  2. Training – Huấn luyện:

    • Thuật toán ML hoặc DL được huấn luyện với tập dữ liệu training.
    • Model học các pattern từ dữ liệu.
  3. Testing – Kiểm tra:

    • Model đã huấn luyện được kiểm tra với tập testing.
    • Đánh giá dựa trên các dự đoán mà model đưa ra.

Overfitting và Underfitting


4. Các thuật toán Machine Learning (“Shallow Learning”)

4.1 Decision Tree (DT) – Cây quyết định

Ý tưởng: Thuật toán học có giám sát cơ bản, dùng cho cả classification và regression. Áp dụng một loạt các quyết định (rules) để phân loại dữ liệu.

Cấu trúc:

  • Node: Đại diện cho một đặc điểm (feature/attribute).
  • Nhánh (Branch): Đại diện cho một quyết định hoặc rule.
  • Lá (Leaf): Kết quả hoặc nhãn cần gán cho dữ liệu.

Ưu điểm:

  • Tự động chọn các thuộc tính tốt nhất để dựng cây.
  • Thực hiện pruning (cắt tỉa) – bỏ đi các nhánh không liên quan để tránh overfitting.
  • Dễ giải thích (interpretable).

Các model DT phổ biến: CART, C4.5, ID3

Mở rộng: Random Forest (RF), XGBoost – là các ensemble methods dựa trên DT.


4.2 Support Vector Machine (SVM)

Ý tưởng: Tìm một siêu mặt phẳng phân chia (hyperplane)lề (margin) lớn nhất trong không gian n chiều để phân tách các lớp dữ liệu.

  • n = 2: đường thẳng
  • n = 3: mặt phẳng
  • n > 3: siêu mặt phẳng

Xử lý bài toán phi tuyến tính:

  1. Dùng kernel function để ánh xạ vector đầu vào ít chiều sang không gian nhiều chiều hơn (nơi dữ liệu có thể phân tách tuyến tính).
  2. Tìm support vectors – các điểm dữ liệu gần ranh giới nhất – để xác định siêu mặt phẳng phân chia tối ưu.

Ứng dụng trong IDS: Phân loại traffic bình thường và tấn công.


4.3 K-Nearest Neighbor (KNN)

Ý tưởng: Phân loại dữ liệu mới dựa trên k điểm dữ liệu “hàng xóm” gần nhất (tính theo khoảng cách, thường là Euclidean distance).

Cách hoạt động:

  • Tính khoảng cách từ điểm cần phân loại đến tất cả các điểm trong tập training.
  • Chọn k điểm gần nhất.
  • Phân loại theo nhãn chiếm đa số trong k điểm đó (majority voting).

Ảnh hưởng của tham số k:

  • k quá nhỏ → model dễ bị overfitting (nhạy cảm với nhiễu).
  • k quá lớn → model có thể phân loại sai do xét đến quá nhiều hàng xóm không liên quan.

4.4 K-Means Clustering

Ý tưởng: Thuật toán unsupervised learning, chia dữ liệu thành K cluster (nhóm) bằng cách đặt các dữ liệu giống nhau vào cùng một nhóm.

Cách hoạt động (lặp lại đến khi hội tụ):

1. Khởi tạo K centroid (trung tâm) ngẫu nhiên
2. Gán mỗi điểm dữ liệu vào cluster có centroid gần nhất
3. Tính lại centroid mới của mỗi cluster (trung bình các điểm trong cluster)
4. Lặp lại bước 2-3 cho đến khi centroid không thay đổi

Mục tiêu: Giảm thiểu tổng khoảng cách giữa các điểm dữ liệu và centroid đại diện của cluster.

Ứng dụng trong IDS: Phân nhóm traffic để phát hiện anomaly mà không cần nhãn.


4.5 Artificial Neural Network (ANN)

Ý tưởng: Lấy cảm hứng từ mạng thần kinh sinh học trong não người.

Cấu trúc:

  • Input layer: Nhận dữ liệu đầu vào.
  • Hidden layers: Các lớp ẩn xử lý và trích xuất đặc trưng.
  • Output layer: Đưa ra kết quả dự đoán.

Backpropagation: Thuật toán học chính trong ANN, điều chỉnh trọng số (weights) của các kết nối theo hướng giảm thiểu sai số (loss).


4.6 Ensemble Learning – Học kết hợp

Ý tưởng: Thay vì dùng một classifier, kết hợp nhiều classifier khác nhau để tạo ra một classifier tổng thể mạnh hơn.

Nguyên lý: Kết hợp các classifier “yếu” (weak learners) thông qua thuật toán voting để tạo thành một “strong learner”.

Ví dụ phổ biến:

  • Random Forest: Kết hợp nhiều Decision Tree, mỗi cây được train trên một subset ngẫu nhiên của dữ liệu và features.
  • XGBoost: Gradient boosting, huấn luyện tuần tự, mỗi cây mới cố gắng sửa lỗi của các cây trước.
  • Bagging, Boosting, Stacking: Các chiến lược ensemble khác nhau.

5. Các thuật toán Deep Learning (DL)

5.1 Convolutional Neural Network (CNN)

Phù hợp với: Dữ liệu dạng mảng (array), đặc biệt dữ liệu hình ảnh. Trong IDS, traffic data có thể được biểu diễn dạng ma trận để áp dụng CNN.

Cấu trúc:

Input --> [Convolutional Layer] --> [Pooling Layer] --> ... --> [Fully Connected Layer] --> Output
  • Convolutional Layer: Trích xuất đặc trưng cục bộ bằng các bộ lọc (filters/kernels).
  • Pooling Layer: Giảm chiều dữ liệu, giữ lại đặc trưng quan trọng, tăng tính bất biến.
  • Fully Connected Layer: Kết hợp tất cả đặc trưng để đưa ra phân loại cuối cùng.

Ứng dụng trong IDS: Trích xuất đặc trưng và phân loại theo hướng có giám sát.


5.2 Recurrent Neural Network (RNN)

Phù hợp với: Dữ liệu dạng chuỗi (sequence data) – phù hợp với traffic mạng có tính thứ tự thời gian.

Điểm đặc biệt: Mỗi đơn vị RNN đưa ra quyết định dựa trên input hiện tạikết quả của bước trước – tạo ra “bộ nhớ” ngắn hạn.

Hạn chế: Khó xử lý các chuỗi rất dài do vấn đề vanishing gradient (gradient biến mất khi lan truyền ngược qua nhiều bước).

Các biến thể cải tiến:

  • LSTM (Long Short-Term Memory): Giải quyết vấn đề vanishing gradient bằng các cổng (gate) kiểm soát luồng thông tin.
  • GRU (Gated Recurrent Unit): Phiên bản đơn giản hơn LSTM, ít tham số hơn nhưng hiệu quả tương đương trong nhiều trường hợp.

5.3 AutoEncoder (AE)

Ý tưởng: Mạng học cách nén (encode) dữ liệu vào biểu diễn chiều thấp rồi giải nén (decode) lại, được huấn luyện để tái tạo đầu vào càng chính xác càng tốt.

Ứng dụng trong IDS (Anomaly Detection):

  • Train AutoEncoder chỉ trên traffic bình thường.
  • Khi gặp traffic tấn công (bất thường), reconstruction error cao → phát hiện anomaly.

Các biến thể: Variational AE (VAE), Sparse AE, Stacked AE.


5.4 Deep Belief Network (DBN)

Mạng nhiều tầng được xây dựng từ các Restricted Boltzmann Machines (RBM), học biểu diễn phân tầng của dữ liệu theo kiểu unsupervised, sau đó fine-tune có giám sát.


6. Các tập dữ liệu Benchmark cho IDS

DatasetNămLoại tấn công chính
KDD Cup'991998DoS, Probe, R2L, U2R
NSL-KDD2009DoS, Probe, R2L, U2R
Kyoto 2006+2006–2015Known/Unknown Attacks
UNSW-NB152015DoS, Exploits, Backdoor, Fuzzers, Worms, Shellcode, Recon, Port Scan, Generic
CIC-IDS20172017Brute Force, HeartBleed, Botnet, DoS, DDoS, Web Attack, Infiltration
CSE-CIC-IDS20182018Brute-force, Heartbleed, Botnet, DoS, DDoS, Web Attacks, Infiltration

7. Các chỉ số đánh giá IDS

Ma trận nhầm lẫn (Confusion Matrix)

Dự đoán: Tấn côngDự đoán: Bình thường
Thực tế: Tấn côngTP (True Positive)FN (False Negative)
Thực tế: Bình thườngFP (False Positive)TN (True Negative)
Dự đoán: aDự đoán: bDự đoán: c
Thực tế: aTPFNFN
Thực tế: bFPTNTN
Thực tế: cFPTNTN

Định nghĩa:

  • TP (True Positive): Cảnh báo đúng – thực sự là tấn công và bị phát hiện.
  • FP (False Positive): Cảnh báo sai – thực ra là bình thường nhưng bị cảnh báo là tấn công.
  • TN (True Negative): Không có tấn công và không có cảnh báo.
  • FN (False Negative): Là tấn công nhưng không bị phát hiện – nguy hiểm nhất.

Các công thức tính

Accuracy (Độ chính xác):

Accuracy = (TP + TN) / (TP + TN + FP + FN)

Có bao nhiêu trường hợp được xác định đúng trong tổng số.

False Positive Rate (FPR):

FPR = FP / (FP + TN)

Tỷ lệ traffic bình thường bị cảnh báo nhầm là tấn công.

False Negative Rate (FNR):

FNR = FN / (FN + TP)

Tỷ lệ tấn công thực sự không được phát hiện.

Precision:

Precision = TP / (TP + FP)

Trong tất cả các cảnh báo tấn công, có bao nhiêu là thật sự tấn công.

Recall (Detection Rate):

Recall = TP / (TP + FN)

Trong tất cả các tấn công thực tế, bao nhiêu được phát hiện.

F1-Score:

F1 = 2 * (Precision * Recall) / (Precision + Recall)

Tổ hợp hài hòa giữa Precision và Recall, hữu ích khi dữ liệu mất cân bằng.

Bài tập tính chỉ số đánh giá

Cho bảng confusion matrix:

Dự đoán: Tấn côngDự đoán: Bình thường
Thực tế: Tấn công5545
Thực tế: Bình thường50850

8. Xu hướng hiện tại và tương lai

Xu hướng hiện tại

  • DL chiếm ưu thế hơn ML trong các nghiên cứu gần đây: DL chiếm ~60%, ML ~40% trong các nghiên cứu từ 2017–2020.
  • Dataset được dùng nhiều nhất: NSL-KDD (36%), KDD Cup'99 (24%), UNSW-NB15 (18%).
  • Hầu hết model được test trên các dataset cũ như KDD Cup'99 và NSL-KDD → hiệu suất tốt trên dataset cũ có thể giảm khi áp dụng dataset mới hơn.
  • Các thuật toán ML được dùng nhiều nhất: RF, DT, KNN, SVM, Ensemble Methods.

Thách thức trong nghiên cứu

Xu hướng trong tương lai

  • Framework NIDS hiệu quả với dataset cập nhật, cân bằng, có hệ thống.
  • Các thuật toán DL mới chưa được khai thác nhiều: Deep Reinforcement Learning, Hidden Markov Models.
  • NIDS cho Cyber-Physical Systems:
    • SCADA networks (smart grids, manufacturing industries).
    • Mạng UAV (Unmanned Aerial Vehicles – phương tiện không người lái).

9. Các tài liệu tham khảo và tự học



Câu hỏi trắc nghiệm

Câu 1. Bộ ba CIA trong bảo mật thông tin bao gồm những gì?

  • A. Confidentiality, Integrity, Availability
  • B. Classification, Identification, Authentication
  • C. Cryptography, Intrusion, Access
  • D. Control, Isolation, Authorization

Câu 2. IDPS viết tắt của gì?

  • A. Intrusion Data Protection System
  • B. Intrusion Detection and Prevention Systems
  • C. Internal Defense and Prevention Service
  • D. Integrated Detection Protocol Stack

Câu 3. IDS phân loại theo kỹ thuật phát hiện gồm những loại nào?

  • A. NIDS và HIDS
  • B. SIDS và AIDS
  • C. ML-based và Rule-based
  • D. Active và Passive

Câu 4. Zero-day attack là gì và tại sao nó là thách thức cho IDS truyền thống?

  • A. Tấn công xảy ra vào ngày đầu tiên của tháng, khó dự đoán
  • B. Tấn công lợi dụng lỗ hổng chưa được công bố, Signature-based IDS không có chữ ký để phát hiện
  • C. Tấn công từ 0 giờ đêm đến 6 giờ sáng
  • D. Tấn công mà hacker không để lại dấu vết nào

Câu 5. Trong ML, “model” là gì?

  • A. Tập dữ liệu huấn luyện
  • B. Thuật toán được sử dụng để training
  • C. Thuật toán nhận dữ liệu mới và đưa ra dự đoán sau khi training
  • D. Kết quả cuối cùng sau khi testing

Câu 6. Supervised Learning khác Unsupervised Learning ở điểm nào chính?

  • A. Supervised Learning dùng nhiều dữ liệu hơn
  • B. Supervised Learning dùng dữ liệu đã được gán nhãn, Unsupervised Learning dùng dữ liệu chưa gán nhãn
  • C. Supervised Learning chỉ dùng cho classification, Unsupervised Learning chỉ dùng cho clustering
  • D. Supervised Learning chậm hơn Unsupervised Learning

Câu 7. Anomaly-based IDS phù hợp với kỹ thuật ML nào nhất?

  • A. Classification nhị phân
  • B. Clustering
  • C. Regression / phát hiện bất thường
  • D. Reinforcement Learning

Câu 8. Semi-Supervised Learning là gì?

  • A. Học máy chỉ dùng 50% dữ liệu
  • B. Kết hợp dữ liệu đã gán nhãn và chưa gán nhãn
  • C. Học máy với giám sát một phần bởi con người
  • D. Học máy dùng cho bài toán có 2 class

Câu 9. Trong quy trình ML-based IDS, tập dữ liệu thường được chia theo tỷ lệ nào?

  • A. 50% training – 50% testing
  • B. 70% training – 30% testing
  • C. 80% training – 20% testing
  • D. 90% training – 10% testing

Câu 10. Preprocessing dữ liệu trong ML bao gồm các bước nào?

  • A. Encoding, Normalization, Data Cleaning
  • B. Encryption, Compression, Classification
  • C. Training, Testing, Validation
  • D. Labeling, Sorting, Filtering

Câu 11. Overfitting xảy ra khi nào?

  • A. Model quá đơn giản, không học được đủ pattern
  • B. Model học quá khớp với training data, không tổng quát hóa tốt trên dữ liệu mới
  • C. Model có quá nhiều dữ liệu training
  • D. Model dùng quá nhiều tài nguyên tính toán

Câu 12. Decision Tree thực hiện “pruning” để làm gì?

  • A. Tăng độ sâu của cây để học nhiều hơn
  • B. Loại bỏ các nhánh không liên quan để tránh overfitting
  • C. Cắt bớt dữ liệu training để tiết kiệm thời gian
  • D. Tối ưu hóa tốc độ dự đoán

Câu 13. Các model Decision Tree phổ biến được đề cập là gì?

  • A. CART, C4.5, ID3
  • B. CNN, RNN, LSTM
  • C. KNN, SVM, RF
  • D. CART, XGBoost, GBM

Câu 14. Support Vector Machine tìm kiếm điều gì trong không gian n chiều?

  • A. Centroid gần nhất với dữ liệu
  • B. Siêu mặt phẳng phân chia có lề (margin) lớn nhất
  • C. Cây quyết định tối ưu
  • D. Cluster có nhiều điểm nhất

Câu 15. SVM xử lý bài toán phi tuyến tính bằng cách nào?

  • A. Tăng số lượng support vectors
  • B. Dùng kernel function để ánh xạ vào không gian chiều cao hơn
  • C. Chia bài toán thành nhiều bài toán tuyến tính nhỏ
  • D. Dùng ensemble của nhiều SVM tuyến tính

Câu 16. Trong KNN, điều gì xảy ra nếu k quá nhỏ?

  • A. Model bị underfitting
  • B. Model dễ bị overfitting
  • C. Model không thể phân loại được
  • D. Model chạy chậm hơn

Câu 17. Trong KNN, điều gì xảy ra nếu k quá lớn?

  • A. Model bị overfitting
  • B. Model có thể phân loại sai do xét quá nhiều hàng xóm không liên quan
  • C. Thời gian dự đoán nhanh hơn
  • D. Model tốt hơn vì xét nhiều thông tin hơn

Câu 18. K-Means Clustering là thuật toán thuộc loại nào?

  • A. Supervised Learning
  • B. Semi-supervised Learning
  • C. Unsupervised Learning
  • D. Reinforcement Learning

Câu 19. Mục tiêu tối ưu của K-Means là gì?

  • A. Tối đa hóa khoảng cách giữa các cluster
  • B. Giảm thiểu tổng khoảng cách giữa các điểm dữ liệu và centroid của cluster
  • C. Tối đa hóa số lượng cluster
  • D. Tối thiểu hóa số lượng vòng lặp

Câu 20. Thuật toán backpropagation trong ANN dùng để làm gì?

  • A. Truyền dữ liệu từ input đến output
  • B. Điều chỉnh trọng số các kết nối theo hướng giảm thiểu sai số
  • C. Khởi tạo các node trong mạng
  • D. Loại bỏ các node không quan trọng

Câu 21. Deep Learning khác Machine Learning “nông” (shallow) ở điểm gì chính?

  • A. DL dùng nhiều dữ liệu hơn
  • B. DL có nhiều hidden layers, tự học đặc trưng từ dữ liệu thô
  • C. DL chỉ dùng cho phân loại ảnh
  • D. DL không cần training

Câu 22. CNN đặc biệt phù hợp với loại dữ liệu nào?

  • A. Dữ liệu dạng bảng (tabular)
  • B. Dữ liệu dạng chuỗi thời gian
  • C. Dữ liệu dạng mảng (array), đặc biệt là ảnh
  • D. Dữ liệu văn bản

Câu 23. Pooling layer trong CNN có chức năng gì?

  • A. Tăng kích thước feature map
  • B. Trích xuất đặc trưng bằng kernel
  • C. Giảm chiều dữ liệu và giữ đặc trưng quan trọng
  • D. Kết hợp tất cả đặc trưng để phân loại

Câu 24. RNN phù hợp với loại dữ liệu nào?

  • A. Dữ liệu ảnh
  • B. Dữ liệu dạng chuỗi (sequence data) có tính thứ tự thời gian
  • C. Dữ liệu bảng không có thứ tự
  • D. Dữ liệu âm thanh dạng snapshot

Câu 25. LSTM và GRU là gì?

  • A. Hai loại CNN khác nhau
  • B. Biến thể của RNN giải quyết vấn đề vanishing gradient
  • C. Hai thuật toán clustering
  • D. Các phương pháp ensemble

Câu 26. AutoEncoder ứng dụng trong IDS như thế nào?

  • A. Train trên cả dữ liệu tấn công và bình thường để phân loại
  • B. Train chỉ trên traffic bình thường, khi reconstruction error cao → phát hiện anomaly
  • C. Nén dữ liệu để tăng tốc độ xử lý
  • D. Tạo dữ liệu tổng hợp để augment tập training

Câu 27. Ensemble Learning có ý tưởng chính là gì?

  • A. Dùng một model rất phức tạp để đạt độ chính xác cao
  • B. Kết hợp nhiều classifier yếu để tạo thành một classifier mạnh hơn
  • C. Chia dữ liệu thành nhiều phần và train song song
  • D. Dùng nhiều lần train để tăng độ chính xác

Câu 28. Dataset nào sau đây là phiên bản cải tiến của KDD Cup'99?

  • A. UNSW-NB15
  • B. CIC-IDS2017
  • C. NSL-KDD
  • D. Kyoto 2006+

Câu 29. KDD Cup'99 phân loại tấn công thành mấy loại chính?

  • A. 3 loại: DoS, Probe, R2L
  • B. 4 loại: DoS, Probe, R2L, U2R
  • C. 5 loại: DoS, Probe, R2L, U2R, DDoS
  • D. 2 loại: Normal và Attack

Câu 30. Dataset UNSW-NB15 được tạo bởi tổ chức nào?

  • A. Canadian Institute of Cyber Security
  • B. Đại học Kyoto, Nhật Bản
  • C. Australian Center for Cyber Security và Đại học UNSW
  • D. Communications Security Establishment Canada

Câu 31. CIC-IDS2017 sử dụng công cụ gì để phân tích traffic mạng?

  • A. Wireshark
  • B. Snort
  • C. CICFlowMeter
  • D. Argus

Câu 32. CIC-IDS2017 và CSE-CIC-IDS2018 mỗi record có bao nhiêu thuộc tính?

  • A. 24 thuộc tính
  • B. 41 thuộc tính
  • C. 49 thuộc tính
  • D. Hơn 80 thuộc tính

Câu 33. True Positive (TP) trong IDS được định nghĩa là gì?

  • A. Cảnh báo sai – thực ra là traffic bình thường
  • B. Không có tấn công và không có cảnh báo
  • C. Tấn công thực sự được phát hiện và cảnh báo đúng
  • D. Tấn công xảy ra nhưng không bị phát hiện

Câu 34. False Negative (FN) trong IDS nguy hiểm như thế nào?

  • A. Gây ra nhiều cảnh báo sai, làm quản trị viên mệt mỏi
  • B. Tấn công thực sự xảy ra nhưng không bị phát hiện – hệ thống bị xâm nhập mà không hay biết
  • C. Làm chậm hệ thống do xử lý nhiều cảnh báo
  • D. Không nguy hiểm, chỉ ảnh hưởng đến hiệu suất

Câu 35. Công thức tính Accuracy là gì?

  • A. TP / (TP + FP)
  • B. TP / (TP + FN)
  • C. (TP + TN) / (TP + TN + FP + FN)
  • D. FP / (FP + TN)

Câu 36. Precision đo lường điều gì?

  • A. Tỷ lệ tấn công thực tế được phát hiện
  • B. Trong tất cả các cảnh báo tấn công, bao nhiêu là thực sự tấn công
  • C. Tỷ lệ traffic bình thường bị cảnh báo nhầm
  • D. Tổng số tấn công trong dataset

Câu 37. Recall (Detection Rate) đo lường điều gì?

  • A. Trong tất cả các cảnh báo, bao nhiêu là đúng
  • B. Trong tất cả các tấn công thực tế, bao nhiêu được phát hiện
  • C. Tỷ lệ True Negative
  • D. Số lượng cảnh báo trên mỗi giờ

Câu 38. F1-Score được tính như thế nào và dùng khi nào?

  • A. (Precision + Recall) / 2, dùng khi dữ liệu cân bằng
  • B. 2 * (Precision * Recall) / (Precision + Recall), đặc biệt hữu ích khi dữ liệu mất cân bằng
  • C. Precision * Recall, dùng thay thế Accuracy
  • D. (TP + FP) / (TP + FN), dùng khi FP quan trọng hơn FN

Câu 39. FPR (False Positive Rate) ảnh hưởng thực tế như thế nào đến hoạt động IDS?

  • A. FPR cao → bỏ sót nhiều tấn công thật
  • B. FPR cao → nhiều cảnh báo sai, tốn thời gian xử lý và gây “alert fatigue” cho quản trị viên
  • C. FPR cao → model quá nhạy, phát hiện tốt hơn
  • D. FPR không ảnh hưởng đến IDS

Câu 40. Tại sao chỉ dùng Accuracy không đủ để đánh giá IDS khi dataset mất cân bằng?

  • A. Accuracy không tính đến thời gian xử lý
  • B. Dataset mất cân bằng (ví dụ 95% normal, 5% attack) làm model đoán “normal” cho tất cả vẫn cho Accuracy cao, nhưng Recall = 0
  • C. Accuracy chỉ đúng với binary classification
  • D. Accuracy bị ảnh hưởng bởi số lượng thuộc tính

Câu 41. Theo thống kê từ 2017–2020, DL hay ML được dùng nhiều hơn trong nghiên cứu IDS?

  • A. ML nhiều hơn (~60%)
  • B. DL nhiều hơn (~60%)
  • C. Ngang nhau (~50-50%)
  • D. Không có xu hướng rõ ràng

Câu 42. Dataset nào được dùng nhiều nhất trong nghiên cứu IDS (2017–2020)?

  • A. KDD Cup'99 (36%)
  • B. UNSW-NB15 (36%)
  • C. NSL-KDD (36%)
  • D. CIC-IDS2017 (36%)

Câu 43. Class imbalance (mất cân bằng lớp) trong IDS dataset gây ra vấn đề gì?

  • A. Làm chậm quá trình training
  • B. Ảnh hưởng đến tỷ lệ phát hiện và độ chính xác cho các lớp tấn công có ít bản ghi
  • C. Làm tăng FPR
  • D. Gây ra overfitting trong mọi trường hợp

Câu 44. Giải pháp nào được đề xuất để xử lý class imbalance?

  • A. Tăng số lượng hidden layers
  • B. Dùng SMOTE, RandomOverSampler, ADASYN
  • C. Giảm learning rate
  • D. Dùng activation function khác

Câu 45. Tại sao DL được ưa chuộng hơn ML truyền thống với dataset lớn?

  • A. DL nhanh hơn ML
  • B. DL ít tốn bộ nhớ hơn
  • C. DL tự học và trích xuất đặc trưng từ dữ liệu thô, phù hợp khi gán nhãn tốn kém
  • D. DL không cần preprocessing

Câu 46. Kyoto 2006+ dataset có điểm đặc biệt gì so với các dataset khác?

  • A. Có nhiều thuộc tính nhất (>80)
  • B. Được thu thập từ môi trường thực với honeypot và các biện pháp an ninh thực tế, dữ liệu từ 2006–2015
  • C. Chỉ có 2 loại tấn công
  • D. Được tạo bởi Canada

Câu 47. Xu hướng tương lai nào được đề xuất cho NIDS?

  • A. Quay lại dùng Signature-based IDS
  • B. NIDS cho Cyber-Physical Systems như SCADA, UAV networks
  • C. Giảm sử dụng DL do tốn tài nguyên
  • D. Chỉ tập trung vào bảo mật web

Câu 48. Tại sao hiệu suất model tốt trên KDD Cup'99 không đảm bảo hiệu suất tốt trong thực tế?

  • A. KDD Cup'99 quá lớn, model bị overfitting
  • B. KDD Cup'99 là dataset cũ (1998), không phản ánh các tấn công hiện đại
  • C. KDD Cup'99 có quá nhiều thuộc tính
  • D. KDD Cup'99 không có nhãn

Câu 49. Deep Reinforcement Learning và Hidden Markov Models được đề cập trong bối cảnh nào?

  • A. Các thuật toán đã được nghiên cứu đầy đủ trong IDS
  • B. Các thuật toán DL đáng quan tâm nhưng chưa được khai thác nhiều trong IDS
  • C. Các phương pháp thay thế cho KNN và SVM
  • D. Chỉ dùng cho Cyber-Physical Systems

Câu 50. Trong IDS dựa trên ML, tại sao cần “model NIDS càng được huấn luyện nhiều thì phát hiện tấn công càng hiệu quả”?

  • A. Vì mỗi lần train sẽ reset model về trạng thái ban đầu
  • B. Vì training thêm trên dữ liệu mới giúp model cập nhật pattern tấn công mới, cải thiện khả năng tổng quát hóa
  • C. Vì DL cần ít nhất 100 epoch mới hoạt động được
  • D. Vì dataset cần được shuffle nhiều lần

Câu 51. NSL-KDD cải thiện KDD Cup'99 bằng cách nào?

  • A. Thêm nhiều loại tấn công mới
  • B. Tăng số lượng bản ghi lên 10 triệu
  • C. Loại bỏ bản ghi trùng lặp và một số vấn đề thống kê tồn tại
  • D. Chuyển sang định dạng CSV

Câu 52. Thuật toán ML nào được dùng nhiều nhất trong IDS theo thống kê 2017–2020?

  • A. SVM
  • B. KNN
  • C. Random Forest (RF)
  • D. K-Means

Câu 53. Chỉ số nào trong các chỉ số sau được dùng phổ biến nhất để đánh giá IDS?

  • A. FPR
  • B. ROC
  • C. Accuracy
  • D. Precision

Câu 54. Tại sao IDS “nhẹ” (lightweight) quan trọng trong ngữ cảnh IoT?

  • A. IoT devices có băng thông mạng hạn chế
  • B. IoT devices thường có tài nguyên tính toán và bộ nhớ rất hạn chế, không thể chạy model phức tạp
  • C. IoT chỉ bị tấn công DoS nên cần IDS đơn giản
  • D. IoT không kết nối internet nên cần IDS offline

Câu 55. Trong bài tập confusion matrix (TP=55, FN=45, FP=50, TN=850), FNR bằng bao nhiêu và có ý nghĩa gì?

  • A. FNR = 5.56%, nghĩa là 5.56% tấn công bị bỏ qua
  • B. FNR = 45%, nghĩa là 45% tấn công thực sự không bị phát hiện
  • C. FNR = 47.6%, nghĩa là gần nửa cảnh báo là sai
  • D. FNR = 90.5%, nghĩa là model hoạt động tốt