Tổng quan nghiên cứu

Trong bối cảnh cuộc cách mạng công nghiệp 4.0, Internet của vạn vật (IoT) đã trở thành xu hướng công nghệ phát triển mạnh mẽ, thay đổi sâu sắc cách thức sống và làm việc của con người. Tuy nhiên, sự gia tăng kết nối giữa các thiết bị IoT cũng kéo theo nhiều lỗ hổng bảo mật nghiêm trọng. Theo số liệu của Kaspersky Lab đầu năm 2018, hơn 7.000 mẫu phần mềm độc hại nhắm vào thiết bị IoT đã được phát hiện, trong đó hơn một nửa xuất hiện chỉ trong năm 2017. Các thiết bị bị tấn công chủ yếu là máy ghi hình kỹ thuật số hoặc máy quay IP (chiếm 63%), tiếp đến là các thiết bị mạng như router, modem (20%), và khoảng 1% là các thiết bị gia đình thông minh khác.

Mã độc botnet trên thiết bị IoT ngày càng đa dạng và phức tạp, gây khó khăn lớn cho việc phát hiện và ngăn chặn. Việc thu thập dữ liệu mã độc đã được thực hiện qua các hệ thống HoneyPot như IoTPot, tuy nhiên, việc thu thập dữ liệu lành tính để áp dụng các thuật toán học máy nhằm phân biệt mã độc và lành tính vẫn còn hạn chế. Trong điều kiện dữ liệu bị lệch lớn giữa hai lớp, thuật toán học máy một lớp (One-class SVM) được đánh giá là phù hợp và hiệu quả.

Mục tiêu nghiên cứu là xây dựng và thử nghiệm mô hình phát hiện botnet trên các thiết bị IoT dân dụng bằng thuật toán One-class SVM, sử dụng đặc trưng System-call Graph (SCG) với bộ dữ liệu gồm khoảng 4.000 mẫu IoT botnet từ IoTPot và các nguồn khác như VirusShare. Nghiên cứu tập trung vào các thiết bị IoT dân dụng phổ biến như router, IP Camera, Smartbox-TV, trong phạm vi thời gian đến năm 2020 tại Việt Nam. Kết quả nghiên cứu có ý nghĩa quan trọng trong việc nâng cao an ninh mạng cho các thiết bị IoT, góp phần giảm thiểu rủi ro tấn công mạng và bảo vệ người dùng cuối.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Nghiên cứu dựa trên các lý thuyết và mô hình sau:

  • Mã độc IoT Botnet: Tổng quan về các loại mã độc botnet phổ biến trên thiết bị IoT dân dụng như Linux.Hydra, Psyb0t, Mirai, LightAidra, Remaiten, với các đặc điểm tấn công từ chối dịch vụ phân tán (DDoS) và khả năng lây nhiễm đa kiến trúc (MIPS, ARM, PPC).

  • Phương pháp phát hiện mã độc: Bao gồm phân tích tĩnh (dựa trên đặc trưng tập tin, đồ thị luồng điều khiển CFG), phân tích động (giám sát hành vi mã độc trong môi trường sandbox hoặc máy ảo), và phương pháp lai kết hợp ưu điểm của cả hai.

  • Học máy và thuật toán One-class SVM: Học máy là tập con của trí tuệ nhân tạo, trong đó One-class SVM là thuật toán học không giám sát, phù hợp với bài toán phát hiện mã độc khi chỉ có dữ liệu của một lớp (mã độc hoặc lành tính). One-class SVM xác định siêu cầu nhỏ nhất bao quanh dữ liệu để phân biệt điểm bất thường.

  • Đặc trưng System-call Graph (SCG): Sử dụng đồ thị lời gọi hệ thống làm đặc trưng cho mô hình học máy, giúp biểu diễn hành vi thực thi của mã độc trên thiết bị IoT.

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

  • Nguồn dữ liệu: Thu thập 1.326 tệp tin mẫu từ các nguồn VirusShare, IoTPot và các nguồn khác, trong đó có 1.248 tệp chứa mã độc và 78 tệp lành tính, tất cả chạy trên hệ điều hành Linux.

  • Phương pháp thu thập dữ liệu: Sử dụng bộ giả lập QEMU để mô phỏng kiến trúc chip ARM, MIPS phổ biến trên thiết bị IoT dân dụng. Dữ liệu hành vi được thu thập qua công cụ Strace để ghi lại các lời gọi hệ thống khi thực thi các tệp tin mẫu trong môi trường sandbox.

  • Tiền xử lý dữ liệu: Xây dựng đồ thị lời gọi hệ thống (SCG) từ nhật ký lời gọi hệ thống, áp dụng kỹ thuật giảm số lượng lời gọi lặp lại liên tiếp để tối ưu hiệu năng. Tiếp theo, chuyển đổi đồ thị SCG thành vector đặc trưng có kích thước cố định bằng kỹ thuật đồ thị nhúng (graph embeddings) như graph2vec.

  • Phương pháp phân tích: Áp dụng thuật toán One-class SVM để huấn luyện mô hình phát hiện botnet dựa trên vector đặc trưng từ đồ thị nhúng. Tập huấn luyện chỉ sử dụng dữ liệu mã độc (chiếm 75% số mẫu mã độc), tập kiểm thử sử dụng 25% còn lại cùng với dữ liệu lành tính.

  • Timeline nghiên cứu: Nghiên cứu được thực hiện trong năm 2019-2020, bao gồm các giai đoạn thu thập dữ liệu, xây dựng mô hình, thử nghiệm và đánh giá kết quả.

Kết quả nghiên cứu và thảo luận

Những phát hiện chính

  1. Hiệu quả của thuật toán One-class SVM trong phát hiện botnet IoT: Mô hình đạt độ chính xác phát hiện trên 90% khi áp dụng trên tập kiểm thử gồm 312 tệp tin mã độc và 78 tệp lành tính. Tỷ lệ phát hiện dương tính giả (false positive) được kiểm soát dưới 5%.

  2. Tác động của kỹ thuật giảm lời gọi hệ thống lặp lại: Việc chỉ ghi nhận một lần các lời gọi hệ thống lặp lại liên tiếp giúp giảm số lượng lời gọi trung bình từ khoảng 1.500 xuống còn khoảng 1.000 lời gọi, giảm đáng kể chi phí tính toán mà không ảnh hưởng đến độ chính xác mô hình.

  3. Hiệu quả của kỹ thuật đồ thị nhúng graph2vec: Việc chuyển đổi đồ thị SCG thành vector đặc trưng có kích thước cố định giúp mô hình học máy xử lý dữ liệu hiệu quả hơn, tăng tốc độ huấn luyện và kiểm thử lên khoảng 30% so với phương pháp truyền thống.

  4. So sánh với các nghiên cứu trước: Kết quả mô hình vượt trội hơn so với các nghiên cứu chỉ sử dụng tập dữ liệu mã độc hoặc chỉ thử nghiệm trên thiết bị Raspberry Pi, nhờ việc sử dụng tập dữ liệu đa dạng và kỹ thuật học máy một lớp phù hợp với dữ liệu lệch.

Thảo luận kết quả

Nguyên nhân chính giúp mô hình đạt hiệu quả cao là do việc sử dụng đặc trưng SCG phản ánh chính xác hành vi thực thi của mã độc trên thiết bị IoT, kết hợp với thuật toán One-class SVM phù hợp với bài toán phân lớp lệch dữ liệu. Việc giảm lời gọi hệ thống lặp lại giúp giảm nhiễu và tăng tính ổn định của đặc trưng đầu vào.

So với các nghiên cứu trước đây, mô hình này có ưu điểm là sử dụng dữ liệu đa dạng hơn, bao gồm cả mã độc và dữ liệu lành tính, giúp giảm tỷ lệ dương tính giả. Kỹ thuật đồ thị nhúng graph2vec cũng là điểm mới giúp xử lý dữ liệu hiệu quả hơn.

Kết quả có thể được trình bày qua biểu đồ ROC thể hiện độ nhạy và độ đặc hiệu của mô hình, bảng confusion matrix minh họa số lượng mẫu được phân loại đúng/sai, và biểu đồ tần suất lời gọi hệ thống trước và sau khi giảm lặp lại.

Ý nghĩa của nghiên cứu là cung cấp một giải pháp phát hiện botnet trên thiết bị IoT dân dụng hiệu quả, có thể áp dụng trong thực tế để nâng cao an ninh mạng, giảm thiểu thiệt hại do các cuộc tấn công DDoS từ mạng botnet IoT.

Đề xuất và khuyến nghị

  1. Triển khai hệ thống phát hiện botnet dựa trên One-class SVM trong các thiết bị IoT dân dụng: Các nhà sản xuất thiết bị IoT và nhà cung cấp dịch vụ mạng nên tích hợp mô hình phát hiện này vào hệ thống giám sát an ninh, nhằm phát hiện sớm và ngăn chặn các cuộc tấn công botnet. Thời gian triển khai dự kiến trong vòng 12 tháng.

  2. Phát triển thêm bộ dữ liệu mã độc và lành tính đa dạng hơn: Các tổ chức nghiên cứu và doanh nghiệp cần phối hợp thu thập, cập nhật dữ liệu mẫu mã độc và dữ liệu lành tính để cải thiện độ chính xác và khả năng thích ứng của mô hình. Đây là nhiệm vụ liên tục, cần thực hiện hàng năm.

  3. Nâng cao kỹ thuật tiền xử lý dữ liệu và đồ thị nhúng: Đề xuất nghiên cứu thêm các kỹ thuật nhúng đồ thị mới, như Graph Neural Networks (GNN), để tăng khả năng biểu diễn đặc trưng và cải thiện hiệu quả mô hình. Chủ thể thực hiện là các nhóm nghiên cứu trong lĩnh vực an ninh mạng và học máy, trong vòng 18 tháng.

  4. Xây dựng môi trường sandbox chuyên biệt cho thiết bị IoT đa kiến trúc: Các nhà phát triển phần mềm bảo mật cần phát triển các môi trường giả lập và sandbox hỗ trợ đa kiến trúc chip (ARM, MIPS, PPC) để thu thập dữ liệu hành vi mã độc chính xác hơn, phục vụ cho việc huấn luyện và kiểm thử mô hình. Thời gian thực hiện dự kiến 12-24 tháng.

Đối tượng nên tham khảo luận văn

  1. Nhà nghiên cứu và sinh viên ngành an ninh mạng, hệ thống thông tin: Luận văn cung cấp kiến thức chuyên sâu về mã độc IoT botnet, phương pháp phát hiện dựa trên học máy, giúp nâng cao hiểu biết và phát triển các nghiên cứu tiếp theo.

  2. Doanh nghiệp phát triển thiết bị IoT và nhà cung cấp dịch vụ mạng: Tham khảo để áp dụng mô hình phát hiện botnet nhằm tăng cường an ninh sản phẩm và dịch vụ, giảm thiểu rủi ro tấn công mạng.

  3. Cơ quan quản lý và tổ chức an ninh mạng: Sử dụng kết quả nghiên cứu để xây dựng chính sách, quy chuẩn bảo mật cho thiết bị IoT, đồng thời triển khai các giải pháp giám sát và phòng chống mã độc hiệu quả.

  4. Nhà phát triển phần mềm bảo mật và công cụ phân tích mã độc: Áp dụng các kỹ thuật thu thập dữ liệu, xây dựng đặc trưng SCG và thuật toán One-class SVM để phát triển các công cụ phát hiện mã độc chuyên biệt cho thiết bị IoT.

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

  1. One-class SVM khác gì so với SVM truyền thống?
    One-class SVM là thuật toán học không giám sát, chỉ sử dụng dữ liệu của một lớp (ví dụ mã độc) để xây dựng mô hình, phù hợp với bài toán khi dữ liệu của lớp khác (lành tính) rất ít hoặc không có. Trong khi đó, SVM truyền thống cần dữ liệu của cả hai lớp để phân loại.

  2. Tại sao chọn đặc trưng System-call Graph (SCG) để phát hiện mã độc?
    SCG phản ánh chính xác hành vi thực thi của mã độc thông qua các lời gọi hệ thống, giúp phân biệt mã độc và phần mềm lành tính dựa trên hành vi thay vì chỉ dựa vào đặc trưng tĩnh, tăng độ chính xác phát hiện.

  3. Làm thế nào để giảm thiểu dương tính giả trong mô hình?
    Sử dụng tập dữ liệu đa dạng bao gồm cả mã độc và dữ liệu lành tính, áp dụng kỹ thuật tiền xử lý như giảm lời gọi hệ thống lặp lại, và lựa chọn tham số phù hợp cho thuật toán One-class SVM giúp giảm tỷ lệ dương tính giả.

  4. Mô hình có thể áp dụng cho các thiết bị IoT ngoài phạm vi nghiên cứu không?
    Mô hình được xây dựng trên các thiết bị IoT dân dụng phổ biến với kiến trúc ARM, MIPS. Với các thiết bị khác hoặc kiến trúc khác, cần thu thập dữ liệu tương ứng và điều chỉnh mô hình để đảm bảo hiệu quả.

  5. Có thể kết hợp mô hình này với các phương pháp phát hiện khác không?
    Có thể kết hợp với các phương pháp phân tích tĩnh, phân tích động hoặc phương pháp lai để tăng cường khả năng phát hiện, giảm thiểu sai sót và nâng cao độ tin cậy của hệ thống phát hiện mã độc.

Kết luận

  • Đã xây dựng thành công mô hình phát hiện botnet trên thiết bị IoT dân dụng sử dụng thuật toán One-class SVM với đặc trưng System-call Graph, đạt độ chính xác trên 90%.
  • Áp dụng kỹ thuật giảm lời gọi hệ thống lặp lại và đồ thị nhúng graph2vec giúp tối ưu hiệu năng và tăng tốc độ xử lý.
  • Mô hình vượt trội hơn các nghiên cứu trước nhờ sử dụng tập dữ liệu đa dạng và phù hợp với bài toán phân lớp lệch dữ liệu.
  • Đề xuất các giải pháp triển khai thực tế, phát triển bộ dữ liệu và nâng cao kỹ thuật tiền xử lý để cải thiện mô hình trong tương lai.
  • Khuyến nghị các nhà nghiên cứu, doanh nghiệp và cơ quan quản lý tham khảo và ứng dụng kết quả nghiên cứu nhằm nâng cao an ninh mạng cho thiết bị IoT.

Next steps: Triển khai thử nghiệm mô hình trong môi trường thực tế, mở rộng bộ dữ liệu, nghiên cứu áp dụng các kỹ thuật học sâu và mạng nơ-ron đồ thị để nâng cao hiệu quả phát hiện.

Call-to-action: Các tổ chức và cá nhân quan tâm đến an ninh IoT nên phối hợp nghiên cứu, phát triển và ứng dụng các giải pháp phát hiện botnet dựa trên học máy để bảo vệ hệ sinh thái IoT ngày càng phát triển.