Luận Văn: Nghiên Cứu Phát Hiện Mã Độc Dựa Trên Kỹ Thuật Học Máy (Nguyễn Nam Ngân - ĐH CNTT)

Chuyên khảo kỹ thuật phân tích Luận văn thạc sỹ kỹ thuật về nghiên cứu phương pháp phát hiện mã độc dựa trên các kỹ thuật học máy, đánh giá các khía cạnh quan trọng, đề xuất hướng

Chuyên ngành

Hệ thống thông tin

Người đăng

Ẩn danh

Thể loại

Luận văn Thạc sĩ Kỹ thuật

2022

56
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CAM ĐOAN

DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT

DANH MỤC BẢNG BIỂU

DANH MỤC HÌNH VẼ

MỞ ĐẦU

1. CHƯƠNG 1 - TỔNG QUAN VỀ MÃ ĐỘC VÀ PHÁT HIỆN MÃ ĐỘC

1.1. Tổng quan về mã độc

1.1.1. Khái niệm mã độc

1.2. Các phương pháp phát hiện mã độc

1.2.1. Phương pháp phát hiện dựa trên chữ ký

1.2.2. Phương pháp phát hiện dựa trên hành vi

1.3. Sự cần thiết của học máy trong phát hiện mã độc

1.4. Các nghiên cứu liên quan

1.5. Kết luận chương

2. CHƯƠNG 2 - PHÁT HIỆN MÃ ĐỘC DỰA TRÊN HỌC MÁY

2.1. Khái quát về các kỹ thuật học máy

2.1.1. Tổng quan về học máy

2.1.2. Một số kỹ thuật học máy

2.2. Mô hình phát hiện mã độc dựa trên học máy

2.3. Kết luận chương

3. CHƯƠNG 3 - CÀI ĐẶT VÀ THỬ NGHIỆM

3.1. Thu thập và tiền xử lý dữ liệu

3.1.1. Dữ liệu mẫu

3.1.2. Trích xuất đặc trưng

3.1.3. Lựa chọn đặc trưng

3.2. Huấn luyện và kiểm thử mô hình phát hiện mã độc

3.3. Kết quả và đánh giá

3.3.1. Support Vector Machines

3.4. Kết luận chương

KẾT LUẬN VÀ KIẾN NGHỊ

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tại Sao Phát Hiện Mã Độc Bằng Học Máy Là Giải Pháp Tối Ưu Hiện Nay

Sự phát triển mạnh mẽ của công nghệ thông tin đã mang lại nhiều tiện ích vượt trội, nhưng song hành là những mối đe dọa từ mã độc ngày càng gia tăng. Các loại mã độc hiện đại không ngừng đa dạng và tinh vi, có khả năng lẩn tránh các phần mềm chống virus truyền thống thông qua kỹ thuật né tránh như nén, xáo trộn mã, hoặc tự thay đổi mã nguồn. Điều này đặt ra thách thức lớn cho an ninh mạng toàn cầu, đòi hỏi các phương pháp phòng chống mã độc tiên tiến hơn.

Nghiên cứu về phát hiện mã độc bằng học máy nổi lên như một hướng đi đầy hứa hẹn, giải quyết các hạn chế của phương pháp dựa trên chữ ký và hành vi truyền thống. Học máy (Machine Learning) không chỉ giúp tự động hóa quy trình phân tích mã độc mà còn cải thiện đáng kể khả năng nhận diện các dạng mã độc mới, chưa từng xuất hiện (zero-day malware). Thay vì dựa vào chữ ký tĩnh, học máy tập trung vào việc học các đặc trưng mã độc từ dữ liệu, cho phép mô hình dự đoán hành vi độc hại một cách linh hoạt hơn.

Trong bối cảnh tội phạm mạng ngày càng chuyên nghiệp, được tài trợ và sử dụng các công cụ tinh vi, việc ứng dụng trí tuệ nhân tạohọc sâu vào kỹ thuật phòng thủ là không thể thiếu. Mục tiêu là xây dựng các hệ thống phát hiện xâm nhập (IDS)phòng chống mã độc có khả năng thích nghi, tự học để đối phó với hành vi mã độc biến đổi liên tục. Luận văn “Nghiên cứu phương pháp phát hiện mã độc dựa trên các kỹ thuật học máy” của Nguyễn Nam Ngân (2022) đã chỉ ra rằng việc kết hợp các phương pháp phân tích động mã độc với thuật toán học máy có thể tăng cường độ chính xác và hiệu quả trong việc nhận diện các mối đe dọa phức tạp. Điều này khẳng định vai trò then chốt của học máy trong việc bảo vệ các hệ thống thông tin khỏi sự tấn công của malware analysis và các mối đe dọa trực tuyến khác. Các nghiên cứu tiếp theo sẽ tiếp tục tối ưu hóa các mô hình dự đoán và nâng cao khả năng phát hiện để đảm bảo an ninh mạng vững chắc hơn. Việc này cũng đòi hỏi việc xây dựng các tập dữ liệu mã độc chất lượng cao và quy trình phân loại mã độc hiệu quả để huấn luyện mô hình. Đây là một bước tiến quan trọng trong cybersecurity researchAI in security.

1.1. Bức Tranh Toàn Cảnh Về Mã Độc và Tác Hại Khôn Lường

Mã độc là các phần mềm được thiết kế có chủ đích, nhằm gây thiệt hại đến hệ thống máy tính cá nhân, máy chủ, hoặc mạng lưới. Chúng thực hiện các hành vi bất hợp pháp như truy cập trái phép, đánh cắp thông tin, tống tiền, hoặc do thám ([Nguyễn Nam Ngân, 2022]). Từ năm 2003, mục đích chính của virus và worm đã chuyển sang chiếm quyền điều khiển máy tính bất hợp pháp để gửi email rác hoặc thực hiện các cuộc tấn công từ chối dịch vụ. Đặc biệt, năm 2017 chứng kiến sự bùng nổ của ransomwaremã độc đào tiền ảo, với số lượng mã độc đào tiền ảo tăng 8.500% so với các năm trước ([Symantec, 2017] được trích dẫn trong [Nguyễn Nam Ngân, 2022]). Các thiết bị IoT cũng trở thành mục tiêu, với số lượng tấn công tăng 600%, cho phép tội phạm mạng lợi dụng liên kết thiết bị để đào tiền ảo quy mô lớn.

Lịch sử phát triển của mã độc trải qua ba giai đoạn chính: những năm đầu (1971–1999) với sự lây lan qua đĩa mềm, giai đoạn gia tăng lây nhiễm (2000–2010) với sự xuất hiện của toolkits, và giai đoạn hiện đại (2010–nay) với sự tinh vi hóa, được chính phủ tài trợ và hướng đến lợi nhuận. Các loại mã độc như Stuxnet, WannaCry Ransomware đã gây ra những thiệt hại đáng kể. Những biến thể của mã độc ngày càng phức tạp như virus máy tính tự nhân bản, worm phát tán qua mạng, trojan cải trang thành phần mềm hữu ích, adware hiển thị quảng cáo, spyware theo dõi người dùng, rootkit kiểm soát hệ thống, backdoor tạo cổng vào bí mật, và keylogger ghi lại thao tác bàn phím. Các kỹ thuật phòng thủ truyền thống gặp nhiều khó khăn trước sự biến đổi liên tục này, đặt ra yêu cầu cấp thiết cho các phương pháp phát hiện mã độc tiên tiến hơn.

1.2. Hạn Chế Của Các Phương Pháp Phát Hiện Mã Độc Truyền Thống

Các phương pháp phát hiện mã độc truyền thống chủ yếu dựa trên chữ ký hoặc hành vi. Phương pháp dựa trên chữ ký hoạt động bằng cách quét các tệp tin để tìm kiếm các chuỗi băm hoặc metadata đã biết của mã độc được lưu trữ trong cơ sở dữ liệu. Ưu điểm là tốc độ nhanh và hiệu quả với các mã độc đã biết. Tuy nhiên, nó không hiệu quả với các mã độc mới (zero-day) hoặc mã độc đa hình (polymorphic malware) có khả năng thay đổi chữ ký để né tránh bị phát hiện ([Nguyễn Nam Ngân, 2022]). Thời gian chờ đợi để cập nhật chữ ký mới cũng tạo ra một khoảng trống nguy hiểm, vì theo Cisco (2017), 95% mã độc chưa đủ một ngày tuổi khi được phát hiện ([Nguyễn Nam Ngân, 2022]).

Ngược lại, phương pháp dựa trên hành vi (heuristics) giám sát hành vi mã độc trong môi trường ảo (sandbox) khi nó thực thi, phát hiện các hành vi bất thường như truy cập tệp tin, thay đổi registry, hoặc thiết lập kết nối đáng ngờ. Phương pháp này có thể phát hiện mã độc zero-daymã độc đa hình. Tuy nhiên, phân tích động mã độc này tốn nhiều thời gian và có thể bị các kỹ thuật né tránh phát hiện môi trường ảo. Ngoài ra, việc xác định ngưỡng độc hại cho các hành vi cũng không phải lúc nào cũng chính xác, dẫn đến tỉ lệ dương tính giả (false positive) hoặc âm tính giả (false negative) cao ([Nguyễn Nam Ngân, 2022]). Các hạn chế này làm giảm hiệu quả của phòng chống mã độc truyền thống, đặc biệt trước lượng mã độc gia tăng và mức độ phức tạp ngày càng cao, thúc đẩy nhu cầu về kỹ thuật phòng thủ dựa trên trí tuệ nhân tạo.

II. Khai Phá Sức Mạnh Học Máy Nền Tảng Phát Hiện Mã Độc Hiệu Quả

Trong bối cảnh an ninh mạng đầy thách thức, phát hiện mã độc bằng học máy trở thành một giải pháp chiến lược để đối phó với sự tinh vi của các mối đe dọa. Học máy là một lĩnh vực của trí tuệ nhân tạo tập trung vào việc nghiên cứu các kỹ thuật cho phép hệ thống tự học từ dữ liệu để giải quyết các vấn đề cụ thể ([Wikipedia, 2022] được trích dẫn trong [Nguyễn Nam Ngân, 2022]). Thay vì lập trình rõ ràng cho từng loại mã độc, các thuật toán học máy có khả năng tự động nhận diện mẫu, phân loại mã độc, và dự đoán mô hình hành vi độc hại.

Quy trình phát hiện mã độc dựa trên học máy bắt đầu bằng việc thu thập và tiền xử lý dữ liệu từ các mẫu mã độc và tệp tin lành tính. Các đặc trưng mã độc quan trọng, như lời gọi API, thay đổi registry, hay hành vi mạng, sẽ được trích xuất. Sau đó, tập dữ liệu mã độc đã được xử lý sẽ được sử dụng để huấn luyện các mô hình học máy. Các mô hình dự đoán này học cách phân biệt giữa các tệp tin độc hại và lành tính. Khi một tệp tin mới xuất hiện, mô hình sẽ phân tích các đặc trưng của nó và đưa ra phán đoán về mức độ độc hại.

Ưu điểm vượt trội của học máy trong an ninh mạng là khả năng tự động hóa và thích nghi. Nó có thể phát hiện cả mã độc đã biết lẫn mã độc zero-day mà không cần chữ ký cố định. Hơn nữa, học sâu (Deep Learning), một nhánh của học máy, đang mở ra những tiềm năng mới trong việc xử lý các tập dữ liệu mã độc phức tạp và trích xuất các đặc trưng mã độc ẩn sâu. Sự kết hợp giữa phân tích mã độc truyền thống và thuật toán học máy không chỉ tăng độ chính xác mà còn giảm tỉ lệ dương tính giả, giúp các hệ thống phát hiện xâm nhập (IDS) hoạt động hiệu quả hơn. Đây là một yếu tố quan trọng trong việc tăng cường kỹ thuật phòng thủ và bảo vệ các hệ thống thông tin khỏi threat intelligence và các cuộc tấn công mạng mới nhất.

2.1. Học Máy Khái Niệm Quy Trình Cơ Bản trong An Ninh Mạng

Học máy là một nhánh của trí tuệ nhân tạo cho phép hệ thống máy tính “học” từ dữ liệu mà không cần lập trình tường minh ([Tom Mitchell, 1997] được trích dẫn trong [Nguyễn Nam Ngân, 2022]). Trong an ninh mạng, nó được ứng dụng để giải quyết các bài toán như phân loại mã độc, phát hiện bất thường, và mô hình dự đoán các cuộc tấn công. Quy trình học máy điển hình bao gồm năm bước: nhập dữ liệu, xử lý dữ liệu, huấn luyện mô hình, thử nghiệm mô hình, và triển khai mô hình.

Tại bước xử lý dữ liệu, tập dữ liệu mã độc được làm sạch, chuẩn hóa và chia thành tập huấn luyện và tập thử nghiệm. Trích xuất đặc trưng là quá trình quan trọng để thu được các thuộc tính cần thiết từ dữ liệu đầu vào. Ví dụ, trong phát hiện mã độc, các đặc trưng có thể là lời gọi API, chuỗi nhị phân, hoặc hành vi hệ thống. Học máy có hai loại chính: học có giám sát (dữ liệu được dán nhãn) và học không giám sát (dữ liệu không được dán nhãn). Phân loại mã độc thường thuộc về học có giám sát, nơi các thuật toán học máy được huấn luyện trên các mẫu đã biết là độc hại hoặc lành tính để dự đoán trạng thái của tệp tin mới. Việc hiểu rõ quy trình này là nền tảng để xây dựng các hệ thống phát hiện xâm nhập (IDS) hiệu quả, góp phần vào kỹ thuật phòng thủ vững chắc hơn.

2.2. Kỹ Thuật Trích Chọn Đặc Trưng Mã Độc Bí Quyết Thành Công

Trích xuất đặc trưng là một bước then chốt trong phát hiện mã độc bằng học máy. Nó liên quan đến việc chuyển đổi dữ liệu thô của mã độc thành một dạng biểu diễn mà các thuật toán học máy có thể sử dụng. Các đặc trưng phải bao quát thông tin quan trọng và không dư thừa. Đối với malware analysis, các đặc trưng mã độc có thể được trích xuất từ phân tích tĩnh mã độc (kiểm tra metadata tệp, chuỗi, cấu trúc PE header) hoặc phân tích động mã độc (ghi nhận hành vi mã độc trong môi trường sandbox như lời gọi API, thay đổi registry, hoạt động mạng) ([Nguyễn Nam Ngân, 2022]).

Luận văn của Nguyễn Nam Ngân (2022) đã sử dụng Cuckoo Sandbox để phân tích hành vi mã độc và trích xuất các đặc trưng. Các đặc trưng này bao gồm hành vi đối với tệp tin, các khóa registry, tiến trình được tạo ra, địa chỉ IP và truy vấn DNS, cùng với các lời gọi API. Biểu diễn đặc trưng dưới dạng ma trận tần suất, nơi thể hiện tần suất các lời gọi API thành công, thất bại và mã trả về, giúp các thuật toán học máy xử lý hiệu quả. Lựa chọn đặc trưng là bước tiếp theo, nhằm loại bỏ các đặc trưng không quan trọng hoặc dư thừa, giúp giảm tài nguyên tính toán và tăng độ chính xác của mô hình dự đoán. Các phương pháp như lọc, đóng gói hoặc nhúng có thể được áp dụng để chọn lọc tập đặc trưng tối ưu, đảm bảo Machine learning for cybersecurity đạt hiệu suất cao nhất.

III. Top 5 Thuật Toán Học Máy Nổi Bật Trong Phát Hiện Mã Độc

Việc lựa chọn thuật toán học máy phù hợp là yếu tố quyết định đến hiệu quả của hệ thống phát hiện mã độc. Trong nghiên cứu kỹ thuật phòng thủan ninh mạng, một số thuật toán học máy đã chứng minh được khả năng vượt trội trong việc phân loại mã độcphát hiện bất thường. Các thuật toán này hoạt động dựa trên nguyên lý học từ tập dữ liệu mã độc đã được gán nhãn, từ đó xây dựng mô hình dự đoán để nhận diện các mẫu mã độc mới.

Các thuật toán phổ biến bao gồm K-Nearest Neighbors (KNN), Support Vector Machines (SVM), Naïve Bayes, J48 Decision Tree và Random Forest. Mỗi thuật toán học máy có những ưu nhược điểm riêng, phù hợp với các loại đặc trưng mã độc và yêu cầu về hiệu suất khác nhau. Ví dụ, KNN là thuật toán đơn giản nhưng hiệu quả, dựa trên khoảng cách giữa các điểm dữ liệu. SVM tìm kiếm siêu mặt phẳng tối ưu để phân chia các lớp, rất hiệu quả với dữ liệu nhiều chiều. Naïve Bayes dựa trên lý thuyết xác suất, trong khi Cây quyết định (Decision Tree) và Random Forest (một tập hợp nhiều cây quyết định) nổi bật với khả năng xử lý dữ liệu lớn và cung cấp sự minh bạch trong quy trình ra quyết định.

Áp dụng những kỹ thuật học máy này vào phân tích mã độc đòi hỏi quá trình thu thập, tiền xử lý dữ liệu, trích xuất đặc trưnglựa chọn đặc trưng một cách cẩn thận. Mục tiêu cuối cùng là xây dựng một mô hình phát hiện mã độc có độ chính xác cao, giảm thiểu tỉ lệ dương tính giả và âm tính giả, đặc biệt quan trọng trong việc chống lại phát hiện ransomwarephát hiện virus ngày càng tinh vi. Sự kết hợp giữa học sâu và các thuật toán học máy truyền thống đang tạo ra những tiến bộ đáng kể trong lĩnh vực AI in security, mở ra những giải pháp phòng chống mã độc mạnh mẽ hơn.

3.1. Phân Tích Chuyên Sâu Các Thuật Toán Phân Lớp Phổ Biến

Trong lĩnh vực phát hiện mã độc bằng học máy, các thuật toán học máy sau đây thường được sử dụng rộng rãi:

  • K-Nearest Neighbors (KNN): Đây là thuật toán phi tham số, thuộc loại 'lazy learning'. KNN dự đoán lớp của một điểm dữ liệu mới dựa trên bình chọn đa số của 'k' điểm gần nhất trong tập dữ liệu huấn luyện. Khoảng cách Euclidean là phương pháp phổ biến để đo độ gần, mặc dù có những hạn chế khi dữ liệu phân phối không đồng đều hoặc có nhiều nhiễu ([Nguyễn Nam Ngân, 2022]).
  • Support Vector Machines (SVM): SVM tìm kiếm một siêu mặt phẳng tối ưu để phân chia các lớp dữ liệu, tối đa hóa biên (margin) giữa các lớp. SVM hoạt động tốt với các tập dữ liệu mã độc 'sạch' và dữ liệu nhiều chiều, ngay cả khi số chiều lớn hơn số mẫu. Tuy nhiên, thời gian huấn luyện có thể kéo dài ([Nguyễn Nam Ngân, 2022]).
  • Naïve Bayes: Thuật toán này dựa trên định lý Bayes, giả định rằng các đặc trưng mã độc là độc lập với nhau. Naïve Bayes tính toán xác suất tiên nghiệm và xác suất có điều kiện để phân loại mã độc. Ưu điểm là đơn giản, hiệu quả với nhiều đặc trưng khác nhau và tiêu tốn ít tài nguyên. Tuy nhiên, giả định độc lập có thể không chính xác trong nhiều trường hợp, dẫn đến kết quả thiếu chính xác khi các lời gọi API thường phụ thuộc lẫn nhau ([Nguyễn Nam Ngân, 2022]).
  • J48 Decision Tree: Cây quyết định J48 phân loại đối tượng dựa trên các luật, được xây dựng bằng cách chọn thuộc tính tốt nhất để phân chia dữ liệu tại mỗi nút, dựa trên Entropy và Information Gain ([Nguyễn Nam Ngân, 2022]). Đây là thuật toán 'white box', dễ hiểu và có thể xử lý tốt dữ liệu lớn, nhiều nhiễu.
  • Random Forest: Đây là một tập hợp các cây quyết định độc lập. Random Forest xây dựng nhiều cây con từ các tập dữ liệu con được chọn ngẫu nhiên. Kết quả cuối cùng là bình chọn của đa số các cây. Thuật toán này thừa hưởng nhiều ưu điểm từ cây quyết định, cho kết quả chính xác và ổn định hơn, phù hợp cho việc phòng chống mã độc phức tạp ([Nguyễn Nam Ngân, 2022]).

3.2. Mô Hình Phát Hiện Mã Độc Dựa Trên Học Máy Kiến Trúc Tổng Quan

Một mô hình phát hiện mã độc bằng học máy thường tuân thủ kiến trúc tổng quan được đề xuất trong luận văn của Nguyễn Nam Ngân (2022). Mô hình này bao gồm các bước chính:

  1. Thu thập và Tiền xử lý Dữ liệu: Tập dữ liệu mã độc (bao gồm cả mẫu độc hại và lành tính) được thu thập từ các nguồn như Contagio và VX Heaven. Dữ liệu sau đó được chia thành tập huấn luyện và tập thử nghiệm một cách ngẫu nhiên.
  2. Trích xuất Đặc trưng: Sử dụng Cuckoo Sandbox để thực thi mã độc trong môi trường ảo và ghi lại hành vi mã độc. Các đặc trưng mã độc được trích xuất bao gồm lời gọi API, thay đổi registry, hoạt động tệp tin, và tương tác mạng (IP, DNS). Các báo cáo phân tích JSON từ sandbox được xử lý thành ma trận tần suất, thể hiện tần suất các lời gọi API thành công/thất bại và mã trả về.
  3. Lựa chọn Đặc trưng: Do số lượng đặc trưng tiềm năng rất lớn, bước này giúp loại bỏ các đặc trưng dư thừa hoặc không quan trọng. Điều này không chỉ giảm tài nguyên tính toán mà còn cải thiện độ chính xác của mô hình dự đoán. Các thuật toán như Boruta có thể được áp dụng để chọn ra các đặc trưng tối ưu.
  4. Huấn luyện và Thử nghiệm Mô hình: Tập dữ liệu mã độc đã được trích xuất và lựa chọn đặc trưng sẽ được dùng để huấn luyện các thuật toán học máy (KNN, SVM, J48 Decision Tree, Naïve Bayes, Random Forest). Sau đó, mô hình được đánh giá bằng tập thử nghiệm để xác định độ chính xác và hiệu suất, góp phần vào cybersecurity research hiệu quả. Kiến trúc này tối ưu cho việc xây dựng hệ thống phát hiện xâm nhập (IDS) dựa trên AI in security.

IV. Đánh Giá Thực Nghiệm Kết Quả Phát Hiện Mã Độc Bằng Học Máy

Để chứng minh hiệu quả của phát hiện mã độc bằng học máy, các nghiên cứu thực nghiệm là cần thiết. Luận văn của Nguyễn Nam Ngân (2022) đã tiến hành cài đặt và thử nghiệm mô hình dựa trên các thuật toán học máy đã trình bày. Quy trình bao gồm thu thập tập dữ liệu mã độc, cấu hình môi trường phân tích động, trích xuất đặc trưng, và cuối cùng là huấn luyện, kiểm thử các mô hình để đánh giá hiệu suất. Kết quả từ những thử nghiệm này cung cấp cái nhìn sâu sắc về khả năng của từng thuật toán học máy trong việc đối phó với các mối đe dọa mã độc thực tế.

Tập dữ liệu mã độc được sử dụng bao gồm 1503 tệp tin, trong đó có 1077 tệp tin mã độc (virus, trojan, worm, ransomware và các dạng khác) và 426 tệp tin bình thường. Môi trường phân tích động Cuckoo Sandbox được cấu hình với máy chủ Ubuntu và máy khách Windows 7 để đảm bảo ghi nhận hành vi mã độc một cách chính xác. Các đặc trưng mã độc chính được trích xuất là tần suất các lời gọi API thành công, thất bại và mã trả về. Sau quá trình lựa chọn đặc trưng kỹ lưỡng, số lượng đặc trưng được giảm từ 14789 xuống còn 99, giúp tối ưu hóa tài nguyên và nâng cao hiệu suất.

Việc đánh giá được thực hiện dựa trên độ chính xác (Accuracy), được tính bằng công thức (TP + TN) / (TP + TN + FP + FN). Các mô hình dự đoán được huấn luyện và thử nghiệm với các thuật toán học máy như KNN, SVM, J48 Decision Tree, Naïve Bayes, và Random Forest. Kết quả cho thấy sự khác biệt rõ rệt về hiệu năng giữa các thuật toán, khẳng định tầm quan trọng của việc lựa chọn kỹ thuật học máy phù hợp cho phòng chống mã độcan ninh mạng. Nghiên cứu này cung cấp cái nhìn thực tế về cách học máy có thể cải thiện kỹ thuật phòng thủ chống lại malware analysis và các mối đe dọa phức tạp.

4.1. Cách Thu Thập và Tiền Xử Lý Tập Dữ Liệu Mã Độc Hiệu Quả

Việc chuẩn bị tập dữ liệu mã độc chất lượng là yếu tố nền tảng cho phát hiện mã độc bằng học máy. Luận văn của Nguyễn Nam Ngân (2022) đã thu thập 1503 tệp tin mẫu, bao gồm 1077 tệp mã độc (từ các nguồn như Contagio và VX Heaven) và 426 tệp lành tính (định dạng .exe, .docx, v.v.). Tập dữ liệu mã độc này sau đó được chia ngẫu nhiên thành 2/3 cho huấn luyện và 1/3 cho thử nghiệm.

Để trích xuất đặc trưng, Cuckoo Sandbox được sử dụng làm môi trường phân tích động. Cuckoo Sandbox được cấu hình với máy chủ Ubuntu 16.04 x64 và máy khách Windows 7 Professional x86, cùng các phần mềm thiết yếu như Adobe PDF reader, Flashplayer, Microsoft Office 2007. Khi một tệp tin được gửi đến, Cuckoo sẽ thực thi nó trong môi trường ảo và ghi lại tất cả hành vi mã độc như mở/ghi tệp tin, thay đổi registry, tạo tiến trình, truy vấn DNS, và các lời gọi API. Các báo cáo phân tích ở định dạng JSON sau đó được xử lý bằng script để tạo ra một tệp .csv, chứa ma trận tần suất biểu diễn các đặc trưng mã độc (tần suất lời gọi API thành công, thất bại, mã trả về). Quá trình này giúp chuẩn bị dữ liệu đầu vào tối ưu cho thuật toán học máyphân tích mã độc sâu hơn, cải thiện đáng kể khả năng phòng chống mã độc.

4.2. So Sánh Hiệu Năng Độ Chính Xác của Các Thuật Toán Học Máy

Kết quả thực nghiệm trên tập dữ liệu mã độc đã xử lý cho thấy sự khác biệt về độ chính xác giữa các thuật toán học máy trong phát hiện mã độc.

  • K-Nearest Neighbors (KNN): Đạt độ chính xác rất cao, lên tới 99.3%, với tỉ lệ âm tính giả (FN) bằng 0, nghĩa là không có mã độc nào bị nhận nhầm là lành tính.
  • Support Vector Machines (SVM): Đạt độ chính xác 98.6%.
  • J48 Decision Tree: Cho kết quả tương tự SVM, với độ chính xác 98.5%.
  • Naïve Bayes: Đáng chú ý, thuật toán này cho độ chính xác khá thấp, chỉ 54.5%. Tỉ lệ mã độc bị nhận nhầm thành file bình thường (FN) rất cao (57.5%). Điều này được giải thích là do giả định các đặc trưng mã độc độc lập của Naïve Bayes không đúng trong thực tế, khi các lời gọi API thường có mối quan hệ phụ thuộc.

(Dữ liệu cụ thể về Random Forest không được cung cấp chi tiết trong phần kết quả này của tài liệu gốc, nhưng thường Random Forest cho kết quả tốt trong các bài toán phân loại).

Từ kết quả này, có thể thấy các thuật toán học máy như KNN, SVM, và J48 Decision Tree có hiệu suất vượt trội trong phân loại mã độc dựa trên các đặc trưng hành vi mã độc được trích xuất. Độ chính xác cao và tỉ lệ FN thấp là yếu tố then chốt cho một hệ thống phát hiện xâm nhập (IDS) hiệu quả trong an ninh mạng, đặc biệt khi đối phó với phát hiện ransomware và các mối đe dọa mới. Những nghiên cứu này là cơ sở quan trọng cho Machine learning for cybersecurity.

V. Tương Lai An Ninh Mạng Phát Hiện Mã Độc Bằng Học Máy Sẽ Đi Về Đâu

Sự phát triển không ngừng của mã độc đòi hỏi các kỹ thuật phòng thủ phải liên tục tiến hóa. Phát hiện mã độc bằng học máy đã chứng minh là một phương pháp hiệu quả hơn so với các phương pháp truyền thống dựa trên chữ ký và heuristics, đặc biệt trong việc nhận diện mã độc zero-day và các biến thể đa hình. Tuy nhiên, lĩnh vực này vẫn đối mặt với nhiều thách thức và tiềm năng phát triển mạnh mẽ. Tương lai của an ninh mạng sẽ chứng kiến sự tích hợp sâu rộng hơn của trí tuệ nhân tạohọc sâu để tạo ra các hệ thống phát hiện xâm nhập (IDS) có khả năng tự học, thích ứng và dự đoán tốt hơn các mối đe dọa mới.

Một trong những hướng phát triển quan trọng là nâng cao khả năng chống lại kỹ thuật né tránh (evasion techniques) của mã độc. Kẻ tấn công liên tục tìm cách qua mặt các mô hình dự đoán bằng cách tạo ra các mẫu mã độc có khả năng thay đổi hành vi hoặc phát hiện môi trường ảo. Do đó, nghiên cứu về học máy đối kháng (adversarial machine learning) và các phương pháp tăng cường tính mạnh mẽ của mô hình sẽ trở nên thiết yếu. Ngoài ra, việc phát triển các tập dữ liệu mã độc lớn hơn, đa dạng hơn và có chất lượng cao hơn cũng là yếu tố then chốt để huấn luyện các mô hình dự đoán ngày càng chính xác.

Việc kết hợp học máy với các công nghệ khác như Big Data và Điện toán đám mây sẽ mở rộng quy mô và hiệu suất của các giải pháp phòng chống mã độc. AI in security không chỉ dừng lại ở phân loại mã độc mà còn hướng tới phát hiện bất thường trong thời gian thực trên quy mô lớn, cung cấp threat intelligence toàn diện. Cybersecurity research sẽ tiếp tục khám phá các mô hình học sâu phức tạp hơn, có khả năng trích xuất các đặc trưng mã độc tinh vi và đưa ra các dự đoán mang tính giải thích được (explainable AI) để các chuyên gia an ninh mạng có thể hiểu rõ hơn về quyết định của hệ thống. Điều này hứa hẹn một tương lai an toàn hơn cho không gian mạng, nơi malware analysis được thực hiện bởi các hệ thống thông minh, tự động và hiệu quả.

5.1. Thách Thức Hiện Tại và Hướng Phát Triển Tiếp Theo

Mặc dù phát hiện mã độc bằng học máy mang lại nhiều lợi ích, nhưng vẫn tồn tại các thách thức đáng kể. Một trong những thách thức lớn nhất là các kỹ thuật né tránh ngày càng tinh vi của mã độc, bao gồm tấn công đối kháng (adversarial attacks) nhằm đánh lừa các mô hình dự đoán. Mã độc có thể thay đổi để trông giống tệp tin lành tính hoặc thay đổi hành vi để tránh bị phát hiện trong môi trường sandbox ([Nguyễn Nam Ngân, 2022]).

Ngoài ra, khái niệm trôi dạt (concept drift) là một vấn đề khi hành vi mã độc thay đổi theo thời gian, làm giảm hiệu quả của mô hình đã huấn luyện. Điều này đòi hỏi các hệ thống phát hiện xâm nhập (IDS) phải liên tục được cập nhật và tái huấn luyện. Hướng phát triển tiếp theo bao gồm:

  • Nghiên cứu về học máy giải thích được (Explainable AI - XAI) để hiểu rõ hơn lý do các mô hình đưa ra quyết định, tăng cường sự tin cậy.
  • Ứng dụng học liên kết (Federated Learning) để huấn luyện mô hình trên dữ liệu phân tán mà không cần chia sẻ dữ liệu gốc, giải quyết vấn đề riêng tư.
  • Phát triển các phương pháp trích xuất đặc trưng mã độc mạnh mẽ hơn, ít bị ảnh hưởng bởi các kỹ thuật né tránh.
  • Tích hợp các kỹ thuật học sâu (Deep Learning for malware detection) để xử lý lượng lớn dữ liệu và nhận diện các mẫu phức tạp hơn, nhằm nâng cao khả năng phòng chống mã độc.

5.2. Tiềm Năng Ứng Dụng Rộng Rãi của Trí Tuệ Nhân Tạo Trong Kỹ Thuật Phòng Thủ

Trí tuệ nhân tạohọc máy không chỉ giới hạn ở việc phát hiện mã độc mà còn có tiềm năng ứng dụng rộng rãi trong toàn bộ lĩnh vực an ninh mạngkỹ thuật phòng thủ. Các mô hình dự đoán dựa trên học máy có thể được triển khai để:

  • Phát hiện bất thường (Anomaly Detection) trong lưu lượng mạng và hành vi người dùng, giúp nhận diện sớm các cuộc tấn công mới.
  • Tự động hóa phân tích mã độcphân loại mã độc quy mô lớn, giảm tải công việc cho các chuyên gia.
  • Cung cấp threat intelligence (thông tin tình báo về mối đe dọa) theo thời gian thực, giúp các tổ chức chủ động hơn trong phòng chống mã độc.
  • Xây dựng các hệ thống phản ứng tự động (automated response systems) để cô lập hoặc loại bỏ mối đe dọa ngay khi chúng được phát hiện.

Khả năng của học sâu trong việc xử lý các tập dữ liệu mã độc không cấu trúc như mã nhị phân hay hình ảnh biểu diễn mã độc mở ra nhiều hướng nghiên cứu mới. AI in security sẽ tiếp tục đóng vai trò trọng tâm trong việc bảo vệ các hệ thống thông tin khỏi các mối đe dọa ngày càng phức tạp, từ phát hiện virus thông thường đến các cuộc tấn công ransomware tinh vi. Việc liên tục nghiên cứu và ứng dụng các kỹ thuật học máy mới sẽ định hình tương lai của cybersecurity research và các giải pháp phòng chống mã độc hiệu quả.

30/09/2025

Trích đoạn nội dung tài liệu

chương 1 đề cập đến khái niệm mã độc và tác hại của nó, lịch sử hình thành và phát triển của mã độc, các dạng mã độc phổ biến hiện nay. Ngoài ra cũng nêu lên các phương pháp phân tích và phát hiện mã độc, sự cần thiết của học máy trong việc phát hiện mã độc và giới thiệu một số nghiên cứu liên quan.1 Tổng quan về mã độc 1.1 Khái niệm mã độc Mã độc là các phần mềm được thiết kế một cách có chủ đích, dùng để gây thiệt hại tới máy tính cá nhân, máy chủ hoặc hệ thống mạng máy tính. Mục đích của mã độc là thực thi các hành vi bất hợp pháp như: truy cập trái phép, đánh cắp thông tin người dùng, lây lan thư rác, thậm chí thực hiện các hành vi tống tiền, tấn công và gây tổn thương cho các hệ thống máy tính… nhằm chuộc lợi cá nhân, hoặc các lợi ích về kinh tế, chính trị hay đơn giản chúng có khi được tạo ra chỉ là một trò đùa ác ý nào đó. Kể từ khi Internet bắt đầu phát triển, các phần mềm độc hại cũng nhắm đến lợi ích nhiều hơn.

Từ năm 2003, mục đích chính của việc phát tán virus và worm là chiếm quyền điều khiển máy tính người dùng một cách bất hợp pháp. Các máy bị lây nhiễm có thể được dùng để gửi email rác, lưu trữ các nội dung không lành mạnh, hoặc tham gia vào tấn công từ chối dịch vụ phân tán. Năm 2017 là năm bùng nổ của các loại mã độc tống tiền (ransomware) và các loại mã độc đào tiền ảo. Theo thống kê từ Symatec [26], số lượng mã độc đào tiền ảo được phát hiện trong năm 2017 tăng 8,500% so với các năm trước.

Liên quan tới đào tiền ảo, các thiết bị IoT cũng là một mục tiêu được nhắm đến. Cũng theo Symatec, số lượng các cuộc tấn công nhằm vào thiết bị IoT tăng 600%, tức là tội phạm mạng có thể lợi dụng mối liên kết giữa các thiết bị này để đào tiền ảo trên diện rộng. 4 Mối đe dọa của mã độc đối với các thiết bị di động cũng đang ngày càng gia tăng.1 thể hiện số lượng mã độc trên thiết bị di động được phát hiện trong năm 2017 tăng 54% so với năm 2016 [26].1 Thống kê số lượng mã độc trên điện thoại di động 2016-2017 Vậy mã độc xuất hiện từ khi nào? Theo [30], ý tưởng về virus máy tính đã xuất hiện từ năm 1949, khi nhà khoa học máy tính John von Neumann nêu lên trong bài báo của ông về một chương trình máy tính có thể tự nhân bản nó. Đến những năm 1950, ý tưởng của Von Neumann đã được các thành viên tại Bell Labs biến thành hiện thực với một trò chơi tên là “Core Wars”.

Trong trò chơi, người lập trình sẽ thả các “sinh vật” để cạnh tranh quyền điều khiển máy tính. Tài liệu đầu tiên về virus máy tính xuất hiện vào đầu những năm 1970, trình bày về “Creeper Worm”, một chương trình có khả năng tự nhân bản được viết bởi Bob Thomas [9]. Creeper lấy quyền truy cập thông qua ARPANET, tự nhân bản nó tới các hệ thống từ xa và hiển thị đoạn tin nhắn: “I’m the creeper, catch me if you can!”. Quá trình phát triển của mã độc có thể được chia làm 3 giai đoạn chính [23]: - Những năm đầu (1971 – 1999): thời kỳ này mã độc vẫn còn sơ khai, chủ yếu lây lan qua đĩa mềm truyền từ máy tính này sang máy tính khác một cách thủ công.

Khi mạng và internet phát triển, người viết mã độc cũng nhanh chóng 5 thích nghi và tận dụng phương tiện truyền thông mới này. Một số mã độc nổi tiếng trong thời kỳ này: Creeper (1971), Wabbit (1974), Brain Boot Sector Virus (1986), Morris Worm (1988), Melissa Virus (1999),… - Tỉ lệ lây nhiễm bắt đầu gia tăng (2000 – 2010): trong khoảng thời gian này, mã độc đã gia tăng đáng kể, về cả số lượng và tốc độ lây lan. Toolkits bắt đầu xuất hiện, các bộ công cụ nhắm vào các websites cũng trở nên phổ biến, khiến cho số lượng websites bị tấn công ngày càng nhiều. Một số mã độc đáng chú ý: ILOVEYOU Worm (2000), SQL Slammer Worm (2003), Conficker Worm (2008),… - Được chính phủ tài trợ, tinh vi hơn và hướng đến lợi nhuận (2010 – nay): kể từ năm 2010 đến nay, mã độc đã và đang tiến hóa ngày một tinh vi hơn.

Các nhóm tội phạm có tổ chức và được tài trợ bởi chính phủ vẫn đang tiếp tục phát triển các loại mã độc tiên tiến, có khả năng vượt qua các hệ thống diệt virus thông thường. Mã độc được sử dụng để tấn công các doanh nghiệp, hệ thống quân sự, và việc kiếm tiền từ các phần mềm độc hại này cũng đang gia tăng nhanh chóng, thông qua ransomware và các phần mềm bất hợp khác. Một số mã độc có tác hại đáng kể trong giai đoạn này: Stuxnet Worm (2010), Zues Trojan (2011), Cryptolocker (2013), WannaCry Ransomware (2017),… Từ những khởi đầu đơn giản và vô hại, mã độc đã trở thành mối đe dọa vô cùng lớn cho người dùng trên toàn thế giới. Mặc dù ngành công nghiệp an ninh mạng đang nỗ lực hết sức mình để kiểm soát mã độc – và đã thành công phần nào, tội phạm mạng vẫn không có dấu hiệu ngừng lại mà ngày càng nguy hiểm và đa dạng hơn.2 Các dạng mã độc Để hiểu rõ hơn về phương thức và logic hoạt động của mã độc, người ta phân loại mã độc thành các lớp, dựa theo mục đích của chúng.

a) Virus máy tính Đặc điểm chính của virus máy tính là có khả năng tự nhân bản. Nó thường tấn công và lây nhiễm vào các tệp tin trên hệ thống nạn nhân. Sau khi lây nhiễm vào tệp tin, virus sẽ tự động tải và chạy mà không cần quyền từ người dùng. Khi được thực 6 thi nó sẽ cố gắng sao chép chính nó vào bên trong một mã thực thi khác.

Các mã lây nhiễm khi chạy có thể tiếp tục lây nhiễm sang các mã mới. Sự tự sao chép này là một đặc tính quan trọng của virus. Khi virus được lây nhiễm nó có thể thực hiện một loạt các hành vi như thay đổi, xóa, hay sao chép các tệp tin cũng như phát tán chúng trên các hệ thống máy tính. Ngoài khả năng đánh cắp và làm hỏng dữ liệu, virus còn tiêu tốn tài nguyên hệ thống – khiến cho hệ thống máy chủ trở nên chậm chạp hoặc thậm chí bị vô hiệu hóa.

Một đặc điểm thường gặp ở virus là chúng được che giấu khá kĩ, khiến cho chúng khó có thể bị phát hiện. b) Worm Cũng như virus, worm có khả năng tự nhân bản chính nó. Tuy nhiên, worm không cần phải lây nhiễm vào một tệp tin cụ thể. Worm có thể phát tán thông qua hệ thống mạng, dựa vào lỗi bảo mật để truy cập vào máy tính của nạn nhân, sau đó đánh cắp hoặc xóa dữ liệu.

Nhiều worm được thiết kế chỉ để tự phát tán chính nó mà không gây tổn hại đến hệ thống mà nó đi qua. c) Trojan Mã độc Trojan Horse là một cái tên được xuất phát từ một điển tích “Con ngựa thành Troy” trong thần thoại Hy Lạp. Tội phạm mạng sẽ cải trang trojan thành các phần mềm hữu ích và thuyết phục người dùng cài đặt nó. Do vậy, cách phát tán chính của trojan là sử dụng social engineering.

Payload của trojan thường có dạng cửa hậu, cho phép kẻ tấn công truy cập bất hợp pháp vào máy tính của nạn nhân. Kẻ tấn công có thể thu thập thông tin cá nhân của người dùng như địa chỉ IP, mật khẩu và thông tin thanh toán ngân hàng. Chúng thường cài đặt keylogger cùng với trojan để lấy thông tin tài khoản và mật khẩu, hoặc dữ liệu thẻ tín dụng. Hầu hết các cuộc tấn công ransomware đều sử dụng trojan, bằng cách nhúng đoạn mã độc hại vào trong một chương trình vô hại.

d) Adware 7 Adware là chương trình được thiết kế để hiển thị quảng cáo trên máy tính của người dùng, sau đó chuyển hướng yêu cầu tìm kiếm của người dùng tới các website quảng cáo và thu thập dữ liệu tiếp thị của người dùng. Ví dụ, adware sẽ thu thập thông tin về các website mà người dùng truy cập, sau đó hiển thị quảng cáo phù hợp với nhu cầu của người dùng. Adware thường được coi như là một nhánh con của spyware và không gây nhiều thiệt hại nghiêm trọng. e) Spyware Spyware là phần mềm dùng để theo dõi người dùng.

Spyware được thiết kế để giám sát và chặn bắt lịch sử duyệt web cũng như các hoạt động khác của người dùng, sau đó bán các thông tin này cho các nhà quảng cáo hoặc bên thứ ba. Spyware có nhiều chức năng hơn so với adware, ví dụ, thu thập các dữ liệu nhạy cảm như tài khoản ngân hàng, mật khẩu, hoặc thông tin thẻ tín dụng. f) Rootkit Rootkit là một bộ các công cụ phần mềm độc hại cho phép một người dùng trái phép có quyền truy cập vào máy tính. Khi rootkit được cài đặt, kẻ tấn công có thể điều khiển từ xa để thực thi các tệp tin và thay đổi cấu hình hệ thống trên máy nạn nhân.

Rootkit không có khả năng tự nhân bản. Chúng phải được cài đặt và thực thi ở lớp thấp của hệ điều hành, ở kernel, hoặc trong hệ thống vào ra của thiết bị (BIOS) với quyền truy cập đặc quyền, do đó, chúng rất khó để phát hiện và gỡ bỏ. Khi phát hiện rootkit, các chuyên gia khuyến cáo nên xóa sạch ổ cứng và cài lại hệ điều hành từ đầu. g) Backdoor Backdoor là một dạng malware cung cấp cho kẻ tấn công một “cổng vào” bí mật tới hệ thống.

Backdoor không bao giờ được sử dụng một cách riêng lẻ. Nó thường hỗ trợ cho các dạng tấn công khác. Đôi khi các lập trình viên cũng tạo ra một backdoor trong chương trình của mình nhằm bỏ qua bước xác thực khi debug trên máy chủ. h) Keylogger 8 Keylogger sẽ ghi lại tất cả những phím được bấm trên một máy tính mà người dùng không hề biết.

Keylogger được công nhận là một công cụ giám sát chuyên nghiệp hợp pháp. Tuy nhiên, keylogger thường được sử dụng với mục đích xấu, như thu thập thông tin nhạy cảm, bao gồm tài khoản, mật khẩu, câu trả lời của các câu hỏi bảo mật và thông tin tài chính. i) Ransomware Ransomware là một dạng mã độc sẽ khóa tất cả dữ liệu trên máy tính nạn nhân, thường là bằng cách mã hóa. Nạn nhân sẽ phải trả tiền để kẻ tấn công giải mã dữ liệu và trả lại quyền truy cập.

Động cơ chính của tấn công ransomware là tiền.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ