Hệ thống phát hiện các loại tấn công ít mẫu dựa trên kỹ thuật FewShot Learning. Hệ thống có thể phát hiện các loại tấn công không có đủ dữ liệu thu thập để huấn luyện mô hình Machine Learning thông thường. Hệ thống có thể phát hiện một loại tấn công mới, với chỉ 510 mẫu dữ liệu thu thập từ trước. Độ chính xác của mô hình lên tới 9498%.
Trang 1DANH MỤC VIẾT TẮT
AI Artificial Intelligence
ANN Artficial Neural Network
CNN Convolutional Neural Network
OSSEC Open Source HIDS SECurity
SVM Suppost Vector Machine
TCP Transmission Control Protocol
UDP User Datagram Protocol
Trang 2MỤC LỤC
MỞ ĐẦU 1
Chương 1 TỔNG QUAN VỀ PHÁT HIỆN XÂM NHẬP MẠNG 6
1.1 Tổng quan về an toàn, an ninh mạng 6
1.1.1 Định nghĩa về an toàn, an ninh mạng 6
1.1.2 Tầm quan trọng về an toàn, an ninh mạng trong thế giới hiện đại 7
1.1.3 Thực trạng an toàn, an ninh mạng hiện nay 8
1.2 Các hướng tiếp cận trong phát hiện xâm nhập mạng phổ biến 11
1.2.1 Hệ thống phát hiện xâm nhập 11
1.2.2 Phát hiện xâm nhập sử dụng hệ thống các luật 16
1.2.3 Phát hiện xâm nhập sử dụng học máy 18
1.3 Một số hệ thống phát hiện xâm nhập mạng phổ biến hiện nay 22
1.3.1 Hệ thống phát hiện xâm nhập mạng mã nguồn mở Snort 22
1.3.2 Hệ thống phát hiện xâm nhập mạng Suricata 25
Chương 2 PHÁT HIỆN XÂM NHẬP MẠNG DỰA TRÊN CÁC KỸ THUẬT META LEARNING 30
2.1 Meta-Learning trong phát hiện xâm nhập mạng 30
2.1.1 Khái niệm về Meta-Learning 30
2.1.2 Những ưu điểm khi ứng dụng Meta-Learning vào trong hệ thống phát hiện xâm nhập 31
2.2 Một số kỹ thuật Meta Learning phổ biến 33
2.2.1 Few-shot learning 33
2.2.2 Transfer Learning 37
Trang 32.3 Đề xuất mô hình Few-shot dựa trên khung Meta-Learning 39
2.3.1 Tại sao nên sử dụng Few-shot Learning 39
2.3.2 Biểu diễn trực quan luồng dữ liệu mạng 42
2.3.3 Kỹ thuật Few-shot dựa trên khung meta-learning 46
2.3.4 Đánh giá mô hình 54
Chương 3 XÂY DỰNG HỆ THỐNG VÀ KIỂM THỬ 63
3.1 Thiết kế kiến trúc hệ thống 63
3.1.1 Mô hình kiến trúc hệ thống 63
3.1.2 Giao diện người dùng 64
3.1.3 API và tương tác 68
3.2 Môi trường triển khai và các công cụ sử dụng 69
3.2.1 Môi trường phát triển 69
3.2.2 Các công cụ sử dụng 70
3.3 Xây dựng và triển khai hệ thống 74
3.3.1 Thu thập dữ liệu 74
3.3.2 Xử lí dữ liệu 74
3.4 Kiểm thử và đánh giá hệ thống 76
3.4.1 Kiểm thử trên tập dữ liệu có sẵn 76
3.4.2 Giám sát, phát hiện tấn công thời gian thực 79
3.5 Kết luận 81
KẾT LUẬN 82
TÀI LIỆU THAM KHẢO 83
Trang 4DANH MỤC HÌNH VẼ
Hình 1.1 Thống kê các cuộc tấn công mạng ở Việt Nam từ 2017 - nửa đầu 2022 10
Hình 1.2 Tam giác CIA trong an toàn thông tin 11
Hình 1.3 Hệ thống phát hiện, ngăn chặn xâm nhập IDS/IPS 12
Hình 1.4 Mô hình Network-base IDS 13
Hình 1.5 OSSEC được triển khai trên các Server 15
Hình 1.7 Hệ thống IDS Snort 22
Hình 1.8 Suricata có thể chạy như một hệ thống phát hiện xâm nhập IDS 27
Hình 1.9 Ví dụ về phân loại trong Meta-Learning 32
Hình 2.1 Phương pháp giải quyết bài toán Few-shot Learning với thuật toán dữ liệu 36 Hình 2.2 Sơ đồ phân chia tập dữ liệu trong Meta-learning 42
Hình 2.3 Mô hình tham chiếu OSI 43
Hình 2.4 Biểu diễn trực quan của luồng dữ liệu mạng 45
Hình 2.5 Biểu diễn trực quan của 4 loại luồng dữ liệu 46
Hình 2.6 Chuẩn bị dữ liệu và phương pháp Few-shot dựa trên Meta-learning 48
Hình 2.7 Flow của mô hình phát hiện xâm nhập dựa trên Meta-learning 49
Hình 2.8 Luồng thực thi của một nhiệm vụ phát hiện few-shot 50
Hình 2.9 Kiến trúc tổng thể của FC-Net 51
Hình 2.10 Giá trị mất mát sau mỗi phiên huấn luyện 59
Hình 2.11 Mô hình đề xuất cho kết quả phát hiện tốt chỉ với số lượng mẫu nhỏ 60
Hình 2.12 Kết quả phát hiện các loại tấn công trong tập dữ liệu ISCX2012FS 61
Hình 3.1 Sơ đồ chức năng BFD của hệ thống phát hiện xâm nhập 63
Hình 3.2 Mô hình tổng quát hệ thống 64
Hình 3.3 Thiết kế hệ thống 64
Hình 3.4 Giao diện Dashboard của hệ thống 65
Hình 3.5 Thống kê số lượng luồng dữ liệu đã thu thập và kiểm thử 65
Hình 3.6 Biểu đồ thể hiện tỉ lệ kết quả kiểm thử các tập dữ liệu 66
Trang 5Hình 3.7 Các luồng dữ liệu được xác định là từ luồng dữ liệu tấn công 66
Hình 3.8 Giao diện kiểm thử dữ liệu thu thập sẵn 67
Hình 3.9 Các luồng dữ liệu được upload lên hệ thống 67
Hình 3.10 Các bộ dữ liệu sau khi đã xử lí sẽ sẵn sàng để phân loại 68
Hình 3.11 Thiết lập công cụ Tshark để bắt lưu lượng mạng liên tục 74
Hình 3.12 Sử dụng công cụ Packet2flow-master để chia dữ liệu thành các flow 74
Hình 3.13 File pcap được phân tích thành các flow dữ liệu 75
Hình 3.14 Xử lí chuyển đổi từ flow dữ liệu thành dataset 75
Hình 3.15 Các dataset sau khi xử lí các flow 76
Hình 3.16 Tải lên bộ dữ liệu thu thập sẵn để tiến hành kiểm thử 77
Hình 3.17 Luồng dữ liệu được tải lên hệ thống thành công 77
Hình 3.18 Các luồng dữ liệu chưa được xử lí đã được tải lên hệ thống 78
Hình 3.19 Danh sách các dataset đã được tiền xử lí, sẵn sàng cho kiểm thử 78
Hình 3.20 Kết quả kiểm thử thông báo đây là luồng dữ liệu tấn công 79
Hình 3.21 Hệ thống phát hiện xâm nhập được cài đặt trên server 79
Hình 3.22 Chọn network interface cần giám sát 80
Hình 3.23 Giám sát tấn công xâm nhập thời gian thực 80
Trang 6DANH MỤC BẢNG BIỂU
Bảng 2.1 Cấu hình siêu tham số 53 Bảng 2.2 Mã kí hiệu cho các loại tấn công 56 Bảng 3.1 Các module tấn công mà Patator hỗ trợ 72
Trang 7MỞ ĐẦU
1 Lý do chọn đề tài
Ngày nay, vấn đề về an toàn và bảo mật thông tin cùng với các thách thức trong không gian mạng đã xâm nhập sâu vào cuộc sống xã hội Chúng không chỉ trở thành một phần không thể thiếu của an ninh quốc gia, mà còn là một đề tài nóng bỏng với quy mô toàn cầu Sự phức tạp của tình hình mất an toàn thông tin hiện nay đe dọa nghiêm trọng đến việc sử dụng công nghệ thông tin để phát triển kinh tế và xã hội cũng như đảm bảo an ninh và quốc phòng
Tuy nhiên, ở Việt Nam, tình hình an ninh thông tin đang trải qua những biến động phức tạp Các cơ quan nước ngoài, cùng với các thế lực thù địch và những yếu
tố phản động, đang gia tăng hoạt động tình báo, gián điệp và phá hoại hệ thống thông tin Họ lan truyền thông tin gây hại nhằm can thiệp vào chính trị nội bộ, thay đổi hướng dẫn chính sách và pháp luật của Việt Nam Cùng với đó, việc tăng cường các cuộc tấn công mạng nhằm vào hệ thống thông tin quan trọng của quốc gia và hệ thống thông tin liên quan đến an ninh quốc gia đang ngày càng gia tăng
Thống kê cho thấy mỗi ngày, một cuộc tấn công mạng mới xuất hiện trên web, với khoảng cách chỉ sau 39 giây Cái con số này không thể không gây lo ngại, khi có đến 2.244 vụ tấn công xảy ra trên internet hàng ngày Thông tin cũng cho thấy rằng vào tháng 3 năm 2022, gần 4 triệu hồ sơ đã bị tấn công Trong số này, đã có 88 vụ tấn công mạng được tiết lộ công khai, dẫn đến việc vi phạm 3.987.593 hồ sơ cá nhân Trong cả quý đầu tiên của năm 2022, tổng cộng đã có 75.099.482 hồ sơ bị xâm phạm
Số liệu thống kê cũng cho thấy mỗi ngày, có khoảng 300.000 phần mềm độc hại mới được tạo ra, bao gồm vi rút, phần mềm quảng cáo, Trojan, keylogger, với mục đích chung là đánh cắp thông tin cá nhân
Trong lĩnh vực tài chính, hơn 60% công ty có hơn 1.000 tệp nhạy cảm mà tất
cả nhân viên đều có thể truy cập Điều này tiềm ẩn rủi ro lớn với sự thụ động trong
Trang 8việc thay đổi mật khẩu, khi khoảng 60% công ty sử dụng hơn 500 mật khẩu mà không bao giờ thay đổi
Điều đáng chú ý là tin tặc không ngừng sáng tạo hàng trăm nghìn phần mềm độc hại mới mỗi ngày Những phần mềm này không được tạo ra để đứng yên, mà chúng được thiết kế để triển khai trên web và xâm nhập vào các lỗ hổng trong các mục tiêu cụ thể Điều này nói lên một sự thật quan trọng: một cuộc tấn công không hẳn là vi phạm, vì thành công hay thất bại của nó phụ thuộc vào biện pháp an ninh mạng mà mục tiêu đã thiết lập
Hiện nay, các cơ quan nhà nước, các tổ chức chính phủ đã và đang có nhiều biện pháp tích cực trong việc phòng chống và phát hiện xâm nhập mạng Rất nhiều biện pháp đã được ứng dụng và triển khai trong thực tế Tuy nhiên, các kỹ thuật tấn công và xâm nhập ngày càng được biến đổi tinh vi và phức tạp, dẫn đến một số hệ thống đảm bảo an toàn thông tin không phát hiện và ngăn chặn kịp thời các tấn công này Chính vì vậy, để sớm phát hiện và ngăn chặn các cuộc tấn công và xâm nhập mạng thì yêu cầu hệ thống đảm bảo an toàn thông tin phải liên tục cập nhật, có khả năng phát hiện các cuộc tấn công mới và thu thập, xử lý dữ liệu lớn về tấn công từ nhiều nơi khác nhau cũng như các loại dữ liệu khác nhau như lưu lượng mạng, dữ liệu qua giao thức HTTPS, dữ liệu qua giao thức HTTP, Để làm được điều đó, ta cần phải tiến hành nghiên cứu, tìm hiểu và ứng dụng công nghệ xử lý dữ liệu lớn (BigData) nhằm theo dõi và phát hiện sớm các cuộc tấn công xâm nhập mạng Ngoài
ra, các phương pháp phát hiện xâm nhập thông thường chủ yếu sử dụng kỹ thuật so sánh mẫu dựa trên cơ sở dữ liệu được xây dựng và định nghĩa từ trước, tuy nhiên phương pháp này bộc lộ nhiều nhược điểm đó là không có khả năng phát hiện các hình thức tấn công mới, số lượng dữ liệu độc hại ngày càng gia tăng làm cho cơ sở
dữ liệu mẫu trở nên ngày càng lớn Thực tế cho thấy hướng nghiên cứu dựa vào công nghệ AI để phân loại và phát hiện các cuộc tấn công đang chứng tỏ là một phương
Trang 9truyền thống Tuy nhiên, một trong những vấn đề được quan tâm là làm sao để xây dựng được mô hình AI tốt nhất đạt hiểu quả chính xác và hiệu quả cao
Nhận thức được vấn đề, tôi đã quyết định chọn đề tài: “Nghiên cứu xây dựng
hệ thống phát hiện xâm mạng dựa trên các kỹ thuật Meta-Learning“ với mục tiêu xây dựng hệ thống giám sát và phát hiện tấn công mạng sử dụng các kỹ thuật meta-learning nâng cao khả năng phát hiện và ngăn chặn các cuộc tấn công bất hợp pháp vào hệ thống công nghệ thông tin của đơn vị
Đề tài chủ yếu tập trung giới thiệu về cách xây dựng một mô hình mạng neutral network có ứng dụng các kỹ thuật meta-learning để phát hiện các traffic mạng tấn công, từ đó phát hiện các cuộc tấn công xâm nhập vào hệ thống mạng
Cấu trúc chính của đề tài bao gồm các phần sau:
Lời mở đầu: Nêu lên tầm quan trọng và xu hướng phát triển của vấn đề bảo mật hiện nay và giới thiệu về đề tài
Chương 1: Tổng quan về phát hiện xâm nhập mạng
Chương 2: Phát hiện xâm nhập mạng dựa trên các kỹ thuật meta-learning Chương 3: Xây dựng và thử nghiệm hệ thống
Kết luận: Đánh giá tổng kết về đề tài cũng như đưa ra một số định hướng
Trang 10few Giám sát và phát hiện lưu lượng mạng tấn công dựa trên các kỹ thuật Metafew learning (Few-shot Learning)
Meta Phát hiện các loại tấn công xâm nhập mạng với số lượng ít mẫu được gắn nhãn
3 Đối tượng, phạm vi và phương pháp nghiên cứu
- Đối tượng nghiên cứu:
Trong đề tài này, đối tượng nghiên cứu là lưu lượng mạng (network traffic); phương pháp trích xuất, phân tích dữ liệu gói tin mạng; các loại tấn công mạng phổ biến; kỹ thuật meta-learning trong phát hiện tấn công mạng
- Phạm vi nghiên cứu:
Đề tài nghiên cứu xây dựng hệ thống phát hiện tấn công mạng dựa trên kỹ thuật Few-shot Learning
- Phương pháp nghiên cứu lý thuyết:
Dựa trên lý thuyết về hệ thống giám sát, phát hiện tấn công mạng và các kỹ thuật trong việc phát hiện; mô hình mạng OSI, TCP/IP, giao thức truyền dữ liệu TCP, giao thức HTTP,… và phương pháp chặn bắt, phân tích gói tin trên mạng
Dựa trên cơ sở lý thuyết về phát hiện tấn công dựa trên trích xuất đặc trưng và một số thuật toán Meta-learning được sử dụng trong phát hiện tấn công mạng
Dựa trên cơ sở lý thuyết về cách phát hiện các luồng dữ liệu đặc trưng của các cuộc tấn công xâm nhập mạng
Dựa trên lý thuyết về công nghệ Realtime Dashboard SentEvent
- Phương pháp nghiên cứu thực tế:
Trang 11Đánh giá, so sánh kết quả thu được từ đó đưa ra đề xuất tối ưu
Để hoàn thành đồ án này, tôi muốn bày tỏ lòng biết ơn chân thành đối với các thầy cô giáo trong Bộ môn và Khoa đã luôn hỗ trợ, hướng dẫn và tạo điều kiện thuận lợi cho tôi suốt thời gian học tại Học viện Đặc biệt, tôi xin bày tỏ lòng biết ơn sâu sắc đến thầy giáo TS Cao Văn Lợi và ThS Vũ Ngọc Cương, những người đã dành thời gian và tâm huyết để hướng dẫn, quan tâm và tận tâm chỉ bảo trong quá trình hoàn thiện dự án này
Tôi cũng muốn bày tỏ lòng biết ơn đến gia đình và bạn bè, những người luôn
ở bên, hỗ trợ, động viên và quan tâm đến tôi trong suốt thời gian học tập và hoàn thiện đồ án tốt nghiệp Mặc dù đã nỗ lực hết sức, nhưng do thời gian có hạn và kiến thức còn hạn chế, không thể tránh khỏi những thiếu sót Vì vậy, tôi trân trọng mọi ý kiến góp ý và hướng dẫn từ các thầy cô giáo để đồ án có thể hoàn thiện hơn và tôi có thể rút ra nhiều kinh nghiệm quý báu cho học tập, công việc và nghiên cứu trong tương lai
Tôi xin chân thành cảm ơn!
Trang 12Chương 1 TỔNG QUAN VỀ PHÁT HIỆN XÂM NHẬP MẠNG
1.1 Tổng quan về an toàn, an ninh mạng
Trong bối cảnh công nghệ thông tin phát triển mạnh mẽ, bảo mật mạng và an toàn thông tin trở thành vấn đề quan trọng cần được chú trọng, cùng với việc các hoạt động mạng diễn ra đang ngày càng phức tạp Việc nghiên cứu đánh giá thực trạng
an toàn thông tin, các giải pháp khắc phục và những thách thức, hạn chế còn tồn tại hiện nay là cơ sở quan trọng để chúng ta có thể lựa chọn những giải pháp thay thế tối ưu, giải quyết hiệu quả các vấn đề thực tiễn đặt ra
1.1.1 Định nghĩa về an toàn, an ninh mạng
An toàn, an ninh mạng là sự bảo vệ thông tin, hệ thống thông tin trên mạng tránh bị truy cập trái phép, sử dụng, làm lộ, làm hỏng, chỉnh sửa hoặc phá hoại trái phép nhằm bảo đảm tính bí mật, toàn vẹn và tính khả dụng của thông tin
An toàn mạng (network security) là sự bảo vệ các hệ thống mạng khỏi các truy cập, sử dụng, tiết lộ, gián đoạn, sửa đổi hoặc phá hoại trái phép An toàn mạng tập trung vào việc bảo vệ các cơ sở hạ tầng mạng vật lý và logic, bao gồm phần cứng, phần mềm, mạng và dữ liệu
An ninh mạng (cybersecurity) là một khái niệm rộng hơn an toàn mạng, bao gồm cả an toàn mạng An ninh mạng đề cập đến việc bảo vệ tất cả các tài sản kỹ thuật
số, bao gồm máy tính, thiết bị di động, dữ liệu và mạng An ninh mạng cũng bao gồm việc bảo vệ chống lại các mối đe dọa kỹ thuật số, chẳng hạn như phần mềm độc hại, tấn công mạng và xâm nhập trái phép
Tóm lại, an toàn, an ninh mạng là một lĩnh vực vô cùng rộng bao gồm tổng thể các hoạt động và biện pháp nhằm bảo vệ thông tin và hệ thống thông tin khỏi các mối đe dọa kỹ thuật số
Trang 131.1.2 Tầm quan trọng về an toàn, an ninh mạng trong thế giới hiện đại
Trong thế giới hiện đại, công nghệ thông tin và truyền thông đóng vai trò quan trọng trong mọi lĩnh vực của đời sống xã hội, từ kinh tế, chính trị, xã hội, văn hóa, giáo dục, y tế, đến an ninh quốc phòng Việc sử dụng rộng rãi các hệ thống thông tin và mạng máy tính đã tạo ra nhiều cơ hội phát triển mới, nhưng cũng đặt ra những thách thức lớn về an toàn, an ninh mạng
Tầm quan trọng của an toàn, an ninh mạng trong bối cảnh hiện nay được thể hiện qua các khía cạnh sau:
Về kinh tế: an toàn, an ninh mạng là điều kiện cần thiết để bảo vệ các tài sản kỹ thuật số, bao gồm dữ liệu, hệ thống thông tin và cơ sở hạ tầng công nghệ thông tin Đây là những tài sản quan trọng đối với hoạt động kinh doanh, sản xuất, cung cấp dịch
vụ của các doanh nghiệp, tổ chức Các vụ xâm nhập mạng, tấn công mạng có thể gây thiệt hại lớn về tài sản, uy tín và thậm chí là phá sản đối với các doanh nghiệp
Về chính trị: an toàn, an ninh mạng là vấn đề quan trọng đối với quốc gia, dân tộc Các cuộc tấn công mạng có thể được sử dụng để phá hoại cơ sở hạ tầng quan trọng, đánh cắp thông tin nhạy cảm hoặc gây rối loạn trật tự xã hội Các hoạt động gián điệp mạng của các quốc gia khác cũng có thể gây ra những tác động tiêu cực đến an ninh quốc gia
Về xã hội: an toàn, an ninh mạng có vai trò quan trọng trong việc bảo vệ quyền riêng tư và an toàn của cá nhân Các vụ xâm nhập mạng có thể dẫn đến việc đánh cắp thông tin cá nhân, như thông tin tài chính, thông tin y tế, Điều này có thể gây
ra những tổn hại về kinh tế, sức khỏe và tinh thần cho người dân
Về văn hóa, giáo dục, y tế: an toàn, an ninh mạng là điều kiện cần thiết để đảm bảo hoạt động bình thường của các lĩnh vực văn hóa, giáo dục và y tế Các cuộc tấn
Trang 14công mạng có thể gây gián đoạn các hoạt động giảng dạy, học tập, khám chữa bệnh, Điều này có thể ảnh hưởng đến chất lượng cuộc sống của người dân
Về an ninh quốc phòng: an toàn, an ninh mạng có vai trò quan trọng trong việc bảo vệ quốc phòng, an ninh quốc gia Các cuộc tấn công mạng có thể được sử dụng
để xâm nhập hệ thống thông tin quân sự, đánh cắp bí mật quân sự, gây rối loạn hoạt động quân sự Điều này có thể đe dọa đến an ninh quốc gia và chủ quyền quốc gia
Tóm lại, an toàn, an ninh mạng là một vấn đề quan trọng trong thế giới hiện đại Việc đảm bảo an toàn, an ninh mạng là nhiệm vụ của toàn xã hội, từ các cơ quan nhà nước, doanh nghiệp, tổ chức đến mỗi cá nhân
1.1.3 Thực trạng an toàn, an ninh mạng hiện nay
Năm 2021, Việt Nam đã chứng kiến sự bùng nổ của các nền tảng số, đồng thời phải đối mặt với một loạt cuộc tấn công mạng có mục tiêu đánh cắp thông tin và hủy hoại danh tiếng quốc gia Các hoạt động tấn công trực tuyến đã nhắm vào hệ thống thông tin của các cơ quan quan trọng như truyền thông, hàng không, năng lượng, và các cơ sở y tế, gây ra những hậu quả nghiêm trọng ngày càng gia tăng Trong 6 tháng đầu năm 2021, đã có 1.555 trang web và cổng thông tin điện tử tại Việt Nam, trong
đó có 412 trang thuộc quản lý của các cơ quan nhà nước, bị tấn công bởi các hacker
So với cùng kỳ năm trước, số lượng các trang và cổng thông tin điện tử bị tấn công
đã giảm đi 12% Tình hình vi phạm và tội phạm liên quan đến thông tin ngày càng phức tạp, với số lượng vụ vi phạm tăng lên, và các thủ đoạn trở nên tinh vi hơn, gây
ra thiệt hại nghiêm trọng trên nhiều khía cạnh
Các hành vi tấn công gây hại hạ tầng thông tin, làm gián đoạn hoạt động bình thường của mạng máy tính và viễn thông, và tạo ra những thiệt hại kinh tế và an ninh lớn đối với các tổ chức và cá nhân Hệ thống thông tin của Việt Nam tiếp tục có nhiều điểm yếu và lỗ hổng bảo mật dễ bị tấn công và xâm nhập, dẫn đến rò rỉ thông tin nhà
Trang 15và sử dụng trái phép cơ sở dữ liệu và tài nguyên thông tin quốc gia đã trở nên phức tạp hơn Ngoài ra, xuất hiện nhiều dịch vụ mới và hiện đại cũng đã làm tăng khó khăn trong công tác quản lý và kiểm soát của các cơ quan chức năng
Thực tế trên cũng đã mang đến nhiều mối đe dọa đối với an ninh thông tin của Việt Nam, không chỉ từ bên trong mà còn từ bên ngoài Trong nước, xuất hiện nguy
cơ tụt hậu về công nghệ và sự phụ thuộc đối với công nghệ nước ngoài, đặc biệt là
hệ thống mạng lõi Sự lan tràn của phần mềm và dịch vụ thông tin từ nước ngoài đang khiến Việt Nam mất chủ quyền nội dung số và tài nguyên thông tin Các tình huống xâm phạm chính trị nội bộ thông qua mạng xã hội và tác động tiêu cực trên
dư luận cũng đã tăng lên Trong khi đó, từ bên ngoài, các thế lực thù địch đã tận dụng
hệ thống thông tin để tác động và can thiệp vào nội bộ, thúc đẩy các hoạt động phản đối và thay đổi chính sách Điều này càng trở nên nguy hiểm hơn khi xâm phạm độc lập và chủ quyền quốc gia trên không gian mạng và chiến tranh thông tin ngày càng phổ biến Các tổ chức khủng bố và phản động cũng đang tận dụng không gian mạng
để tấn công và phá hoại hệ thống thông tin quan trọng đối với an ninh quốc gia
Hiện tại, Việt Nam đang đối diện với các thách thức lớn từ Cuộc Cách mạng Công nghiệp lần thứ tư, mà có sự phát triển mạnh mẽ của trí tuệ nhân tạo, robot, và công nghệ sinh học Điều này đã tạo ra nhiều lĩnh vực mới như "Internet công nghiệp", "Nhà máy thông minh", "Thành phố thông minh", "Xã hội siêu thông minh"
và "Chính phủ điện tử" Tất cả hoạt động trên không gian mạng và mang theo tiềm năng phát triển kinh tế và xã hội Mối nguy hiểm lớn nhất đối với an ninh mạng của Việt Nam là tình trạng phát triển chậm chạp và sự phụ thuộc vào công nghệ thông tin của nước ngoài, đặc biệt là các hệ thống mạng lõi Việc sử dụng mạng xã hội để tán phát thông tin giả và thông tin xấu, độc nhằm gây rối nội bộ và kích động các cuộc biểu tình và bạo loạn đã trở thành một thách thức đối với Việt Nam
Trang 16Hình 1.1 Thống kê các cuộc tấn công mạng ở Việt Nam từ 2017 - nửa đầu 2022
Những thách thức này càng trở nên đặc biệt khi đại dịch COVID-19 tiếp tục ảnh hưởng trên toàn thế giới và thúc đẩy sự chuyển đổi số trong đời sống xã hội Việc
áp dụng công nghệ vào cuộc sống là cách để đối phó với khó khăn mà đại dịch mang lại Với xu hướng này, an ninh mạng của Việt Nam sẽ đối diện với nhiều thách thức
và tình hình tấn công mạng dự kiến sẽ ngày càng phức tạp và gia tăng
Trong bối cảnh này, sự phát triển và ứng dụng nhanh chóng của công nghệ thông tin đồng thời mang lại nhiều cơ hội lớn và đặc biệt đối với Việt Nam Tuy nhiên, điều này cũng tạo ra nhiều thách thức cho an ninh mạng Các cuộc tấn công
và tội phạm mạng có xu hướng gia tăng về số lượng và phức tạp hơn Trong 6 tháng đầu năm 2021, đã phát hiện hơn 2.551 cuộc tấn công mạng và 5,4 triệu lượt địa chỉ
IP của các cơ quan, bộ, ngành 63 tỉnh, thành bị tấn công với 15 biến thể mã độc Các tội phạm sử dụng công nghệ cao ngày càng tinh vi hơn và tạo ra nhiều mối đe dọa đối với xã hội Với tốc độ phát triển và sự ứng dụng mạnh mẽ của công nghệ thông tin, tình hình an ninh mạng của Việt Nam dự kiến sẽ tiếp tục phức tạp và nguy cơ tấn công mạng và tội phạm mạng sẽ gia tăng
Trang 171.2 Các hướng tiếp cận trong phát hiện xâm nhập mạng phổ biến
1.2.1 Hệ thống phát hiện xâm nhập
Tự động phát hiện các cuộc tấn công vào hệ thống máy tính là một lĩnh vực cốt lõi trong nghiên cứu bảo mật máy tính và đã có những bước đầu tiên từ những nghiên cứu về bảo mật trên các hệ thống multi-user (Andersion, 1980) Bảo mật máy tính liên quan đến việc bảo vệ tính bảo mật, tính toàn vẹn và khả năng sẵn sàng của tài nguyên Tấn công an ninh mạng là những hành động nhằm gây hại cho tính bảo mật, tính toàn vẹn và tính sẵn sàng của tài nguyên Cụ thể, tấn công an ninh mạng có thể bao gồm nghe trộm trên đường truyền (xâm phạm tính bảo mật), thay đổi dữ liệu trên máy chủ (xâm phạm tính toàn vẹn) hoặc gây hại cho phần cứng (xâm phạm tính sẵn sàng) Dựa vào nguồn gốc của cuộc tấn công, ta có thể phân biệt giữa tấn công
từ bên trong hệ thống và tấn công từ xa
Hình 1.2 Tam giác CIA trong an toàn thông tin
Để đối phó với các cuộc tấn công mạng, nhiều cơ chế khác nhau trong lĩnh vực bảo mật máy tính đã được phát triển Tuy nhiên, cơ chế đầu tiên và cuối cùng của bất
kỳ giải pháp bảo mật nào đó là ngăn chặn các cuộc tấn công Ví dụ, cơ chế kiểm soát truy cập (access control) và mã hoá (cryptography) là một số ví dụ Tuy nhiên, qua lịch sử dài của bảo mật máy tính, đã được chứng minh rằng không có một cơ chế ngăn ngừa hoàn hảo nào mà có thể cung cấp mức bảo vệ tuyệt đối Vì vậy, cơ chế phát hiện
Trang 18tấn công đã trở thành một phần quan trọng trong danh mục các giải pháp bảo mật Nhiệm vụ chính của nó là xây dựng hệ thống phát hiện xâm nhập (IDS) để phát hiện
và cảnh báo về các hành động tấn công vào mạng hoặc hệ thống máy tính
Hệ thống phát hiện xâm nhập có nhiệm vụ thu thập thông tin và dữ liệu từ nhiều nguồn khác nhau trên mạng hoặc từ hệ thống để theo dõi và phát hiện các hoạt động tấn công Mục tiêu chính của hệ thống phát hiện xâm nhập là ngăn ngừa các hành động gây thiệt hại đối với tính bảo mật của hệ thống hoặc phát hiện những hành động này trong quá trình tấn công
Hình 1.3 Hệ thống phát hiện, ngăn chặn xâm nhập IDS/IPS
Điều này là quan trọng vì trong lĩnh vực bảo mật, nguy cơ luôn tồn tại và không ngừng tiến hóa Chúng ta cần sự tổng hợp của nhiều phương pháp và công cụ khác nhau để đảm bảo tính an toàn và bảo mật của mạng và hệ thống máy tính
Hệ thống IDS gồm 2 cách phân loại, thứ nhất là dựa trên cơ chế IDS phát hiện xâm nhập và tiêu chí thứ hai là nguồn thông tin dữ liệu mà IDS sử dụng Với tiêu chí thứ nhất dựa trên cơ chế phát hiện xâm nhập IDS phân thành 2 loại: phát hiện dựa trên dấu hiệu đã biết (Signature-based IDS) và phát hiện dựa trên dấu hiệu bất thường (Anomaly-based IDS) Hai cơ chế này được trình bày chi tiết trong phần các kỹ thuật
Trang 19phát hiện tấn công mạng Theo tiêu chuẩn thứ 2 IDS phân thành Network-based IDS (NIDS) và Host-based IDS (HIDS)
a Network-base IDS
Hệ thống IDS dựa trên mạng, thường được gọi là NIDS, hoạt động bằng cách theo dõi và phân tích giao tiếp trên mạng trong thời gian thực Nó kiểm tra dữ liệu gửi qua mạng, quét các header của các gói tin, và thậm chí có thể kiểm tra nội dung của các gói tin này để phát hiện ra các đoạn mã độc hại hoặc các dạng tấn công khác Một ví dụ điển hình của việc sử dụng NIDS là trong việc phát hiện tấn công DoS (Denied of Service) dựa trên băng thông
Hình 1.4 Mô hình Network-base IDS
* Ưu điểm của NIDS:
- Quản lý toàn bộ mạng: NIDS có khả năng quản lý và giám sát toàn bộ một phân đoạn mạng (network segment), bao gồm nhiều máy trạm và thiết bị mạng
- Theo dõi thời gian thực: NIDS hoạt động ở thời gian thực, cho phép nó phát hiện các hành vi tấn công ngay khi chúng xảy ra
- Cài đặt và bảo trì đơn giản: Cài đặt và duy trì NIDS không ảnh hưởng đến cấu trúc mạng hiện có và không đòi hỏi sự can thiệp lớn
Trang 20- Tránh tấn công DoS cục bộ: NIDS có khả năng ngăn chặn các cuộc tấn công DoS nhằm vào một máy trạm cụ thể
- Xác định lỗi tại tầng Network: NIDS có khả năng xác định lỗi ở tầng Network, giúp xác định và khắc phục các vấn đề liên quan đến mạng
- Độc lập với hệ điều hành: NIDS không phụ thuộc vào hệ điều hành của máy tính mục tiêu
* Nhược điểm của NIDS:
- Báo động giả: Có thể xảy ra trường hợp NIDS phát hiện các tấn công giả mạo (false positive)
- Không thể phân tích dữ liệu đã được mã hóa: NIDS không thể giải mã dữ liệu đã được mã hóa bằng các phương pháp như SSL, SSH, IPSec, điều này làm giảm khả năng phát hiện tấn công trong trường hợp này
- Cần cập nhật chữ ký thường xuyên: Để đảm bảo hiệu suất, NIDS cần được cập nhật thường xuyên với các chữ ký mới nhất
- Độ trễ: Có độ trễ giữa thời điểm xảy ra tấn công và thời điểm NIDS phát hiện
nó Trong khoảng thời gian này, hệ thống có thể đã bị tổn hại
- Không biết tấn công thành công hay không: NIDS chỉ phát hiện sự hiện diện của tấn công, không thể xác định liệu tấn công đã thành công hay không
- Hạn chế băng thông: NIDS phải xử lý toàn bộ lưu lượng mạng, do đó, khi tốc độ mạng tăng lên, NIDS cũng phải tăng khả năng xử lý
b Host-based IDS (HIDS)
Hệ thống IDS dựa trên máy chủ, thường được gọi là HIDS, hoạt động bằng cách cài đặt một phần mềm trực tiếp trên máy chủ HIDS quan sát và ghi lại tất cả
Trang 21mức sử dụng CPU, RAM, tính toàn vẹn của hệ thống, và nhiều thông số khác HIDS thường được cài đặt trên các máy chủ quan trọng và các máy chủ trong mạng DMS (Demilitarized Zone)
* Ưu điểm của HIDS:
- Xác định người dùng liên quan: HIDS có khả năng xác định người dùng liên quan đến các sự kiện
- Phát hiện tấn công trên máy tính: HIDS có khả năng phát hiện các tấn công xảy ra trên máy tính cụ thể
- Phân tích dữ liệu đã mã hóa: HIDS có khả năng phân tích các dữ liệu đã được
mã hóa, bao gồm cả SSL, SSH, và IPSec
- Cung cấp thông tin chi tiết về host: HIDS cung cấp thông tin chi tiết về trạng thái của máy chủ trong quá trình tấn công
Hình 1.5 OSSEC được triển khai trên các Server
* Nhược điểm của HIDS:
- Thông tin không đáng tin cậy sau khi bị tấn công: Thông tin từ HIDS có thể không đáng tin cậy ngay khi máy chủ bị tấn công thành công
Trang 22- Tương thích với hệ điều hành: HIDS phụ thuộc vào hệ điều hành của máy tính mục tiêu và có thể bị vô hiệu hóa hoặc lừa đảo
- Cần cài đặt trên từng máy chủ: HIDS cần phải được cài đặt và cấu hình trên từng máy chủ cần giám sát
- Không phát hiện các cuộc quét mạng: HIDS không có khả năng phát hiện các cuộc quét mạng như Nmap hoặc Netcat
- Tài nguyên máy tính: HIDS cần tài nguyên máy tính để hoạt động đúng cách
và có thể ảnh hưởng đến hiệu suất máy chủ
- Khả năng phát hiện thấp khi bị tấn công DOS (Denial of Service): HIDS có thể không hiệu quả trong việc phát hiện các cuộc tấn công DOS
1.2.2 Phát hiện xâm nhập sử dụng hệ thống các luật
Phương pháp phát hiện xâm nhập sử dụng hệ thống các luật (gọi tắt là Signature-Based Intrusion Detection) là một trong những kỹ thuật phổ biến và cổ điển trong lĩnh vực phát hiện xâm nhập mạng Phương pháp này dựa trên việc xác định các đặc điểm hoặc dấu hiệu của các cuộc tấn công mạng đã biết trước, như các mẫu mã độc hại hoặc hoạt động không bình thường trong mạng Trong phần này, tôi
sẽ trình bày nguyên lý hoạt động, loại dấu hiệu, cách thức phát hiện, và ưu nhược điểm của phương pháp này
Phương pháp phát hiện xâm nhập sử dụng hệ thống các luật hoạt động theo cách sau:
- Thu thập dữ liệu: Hệ thống IDS thu thập dữ liệu từ nhiều nguồn khác nhau trong hệ thống thông tin, bao gồm dữ liệu mạng, dữ liệu hệ thống, và dữ liệu ứng dụng
Trang 23- Phân tích dữ liệu: Dữ liệu thu thập được sau đó được phân tích để xác định các dấu hiệu của các cuộc tấn công mạng đã biết trước Các dấu hiệu này bao gồm các mẫu mã độc hại hoặc các hoạt động không thường xuất hiện trong mạng
- Phát hiện và cảnh báo: Khi hệ thống phát hiện các dấu hiệu của cuộc tấn công mạng trong dữ liệu, nó sẽ phát ra cảnh báo cho người quản trị hệ thống, cho họ biết rằng có sự cố xâm nhập mạng đang xảy ra
Trong phương pháp này, có hai loại dấu hiệu chính được sử dụng:
- Dấu hiệu tĩnh (Static Signature): Đây là các dấu hiệu không thay đổi theo thời gian và dựa vào các thông tin cố định như các mẫu mã độc hại, danh sách các địa chỉ IP của các máy chủ độc hại, và các chuỗi ký tự cụ thể
- Dấu hiệu động (Dynamic Signature): Đây là các dấu hiệu có thể thay đổi theo thời gian và dựa vào các hoạt động thực tế trong mạng, chẳng hạn như các hành vi không thường xuất hiện của người dùng, các hoạt động không thường trên mạng, và
sự thay đổi của các thông số mạng
Có hai cách thức chính để phát hiện các dấu hiệu của cuộc tấn công mạng trong phương pháp này:
- So sánh với cơ sở dữ liệu dấu hiệu: Hệ thống IDS sử dụng một cơ sở dữ liệu chứa các dấu hiệu của các cuộc tấn công mạng đã biết trước Khi dữ liệu thu thập được trùng khớp với các dấu hiệu trong cơ sở dữ liệu này, hệ thống sẽ phát ra cảnh báo
- Sử dụng thuật toán phân tích dữ liệu: Hệ thống IDS có thể sử dụng các thuật toán phân tích dữ liệu để tìm kiếm các dấu hiệu của cuộc tấn công mạng trong dữ liệu thu thập được Các thuật toán này có thể phát hiện các mẫu mới mà không cần phải dựa vào cơ sở dữ liệu dấu hiệu
Phương pháp này là một trong những phương pháp hiệu quả và phổ biến nhất hiện nay, bởi những ưu điểm mà nó sở hữu như
Trang 24- Dễ triển khai và quản lý: Phương pháp này dễ dàng triển khai và quản lý vì
nó dựa vào việc so sánh với các dấu hiệu đã biết trước
- Phát hiện các cuộc tấn công với hiệu suất cao: Nó có thể phát hiện các cuộc tấn công mạng đã biết trước đối với các đối tượng được xác định
Tuy nhiên cũng có những nhược điểm nhất định như:
- Khó phát hiện các cuộc tấn công mới hoặc các dấu hiệu mới: Phương pháp này gặp khó khăn trong việc phát hiện các cuộc tấn công mới hoặc các dấu hiệu mới
mà không có trong cơ sở dữ liệu dấu hiệu
- Có thể gây ra các cảnh báo sai: Nó có thể phát ra các cảnh báo sai khi dấu hiệu
đã biết trước bất ngờ xuất hiện trong môi trường không phải là cuộc tấn công thực sự
1.2.3 Phát hiện xâm nhập sử dụng học máy
Phương pháp phát hiện xâm nhập mạng sử dụng machine learning là một phương pháp tiên tiến trong lĩnh vực an ninh mạng, sử dụng các thuật toán machine learning để tự động phân tích dữ liệu và nhận biết các hoạt động không bình thường,
có thể là dấu hiệu của cuộc tấn công mạng
Nguyên lý hoạt động của việc phát hiện xâm nhập dựa trên các thuật toán học máy cụ thể như sau:
- Thu thập dữ liệu: dữ liệu từ các hệ thống thông tin như lưu lượng mạng, dữ liệu hệ thống, và dữ liệu ứng dụng được thu thập
- Sử dụng thuật toán machine learning: các thuật toán machine learning được
áp dụng để phân tích dữ liệu và xây dựng các mô hình hoạt động bình thường dựa trên dữ liệu đã thu thập Các mô hình này có khả năng học từ dữ liệu và tự cập nhật
để phản ánh sự thay đổi trong môi trường mạng
Trang 25- Phân loại hoạt động: khi có dữ liệu mới được thu thập, hệ thống sử dụng các
mô hình đã học phân loại các hoạt động thành bình thường hoặc bất thường Các hoạt động được xem là bất thường sẽ được đánh dấu là tiềm năng có thể là tấn công mạng
- Phát hiện và báo lỗi: khi phát hiện các hoạt động bất thường, hệ thống sẽ phát
ra cảnh báo cho người quản trị hoặc thực hiện các biện pháp tự động để ngăn chặn tấn công
Những thuật toán machine learning phổ biến và hiệu quả, đang được ứng dụng rộng rãi nhất hiện nay có thể kể đến như:
a Suppost Vector Machine (SVM)
Suppost Vector Machine (SVM) có thể được sử dụng cho cả phân loại và hồi quy SVM xác định các lớp khác nhau cần dự đoán thông qua một siêu mặt phẳng phân tách Cách phân loại phụ thuộc vào bản chất của vấn đề và tập dữ liệu được sử dụng Nếu tập dữ liệu là một chiều, thì siêu mặt phẳng là một điểm trên đường thẳng một chiều Trong trường hợp dữ liệu là hai chiều, siêu mặt phẳng là một đường phân cách, và đối với dữ liệu ba chiều, siêu mặt phẳng trở thành một mặt phẳng Cuối cùng, đối với tập dữ liệu có nhiều chiều hơn, siêu mặt phẳng sẽ trở thành siêu mặt phẳng nhiều chiều
SVM được sử dụng rộng rãi trong hầu hết các hệ thống phát hiện xâm nhập do khả năng đưa ra các dự đoán chính xác
b Artficial Neural Network (ANN)
Mạng nơ-ron nhân tạo (ANN) là một loại thuật toán học máy được truyền cảm hứng từ cách hoạt động và khả năng tính toán của hệ thống thần kinh của con người
Mô hình của ANN bao gồm một lớp đầu vào, một hoặc nhiều lớp ẩn và một lớp đầu
ra Các lớp ẩn này trọng số và xử lý đầu vào được đưa vào các nơ-ron nhân tạo, để quyết định đầu ra đối với lớp tiếp theo
Trang 26Trong ANN, một quy tắc học gọi là "gradient-descent back propagation of error" được sử dụng để tự động điều chỉnh các trọng số và sai số của các nơ-ron trong các lớp ẩn và đầu ra để đạt được đầu ra mong muốn
Cây quyết định được sử dụng rộng rãi trong các vấn đề phân loại do tính phổ biến của nó trong khám phá dữ liệu và yêu cầu làm sạch dữ liệu thấp
d K-Nearest Neighbor (KNN)
Mô hình K-Nearest Neighbor (KNN) là một mô hình học máy dựa trên khoảng cách, được sử dụng để giải quyết các vấn đề phân loại Khi kết hợp với kiến thức trước, KNN cho ra kết quả rất tốt Việc phân loại trong KNN dựa trên việc phân loại từng ví dụ chưa được gán nhãn bằng nhãn phổ biến nhất trong K láng giềng gần nhất của nó trong tập huấn luyện
Các láng giềng gần nhất được xác định bằng hiệu suất KNN trên các phép đo khoảng cách Các kỹ thuật đo khoảng cách khác nhau được sử dụng để xác định các láng giềng gần nhất, trong đó phương pháp phổ biến nhất là khoảng cách Euclidean
KNN hiệu quả về thời gian và có thể được hiểu dễ dàng, do đó nó được sử dụng rộng rãi trong các vấn đề phân loại trong phát hiện xâm nhập và các ứng dụng khác
Trang 27Ứng dụng machine learning trong phát hiện xâm nhập rất phổ biến hiện nay
vì các lợi ích mà nó mang lại như:
- Khả năng phát hiện các cuộc tấn công mới hoặc sử dụng các biểu hiện mới: phát hiện xâm nhập sử dụng machine learning có khả năng nắm bắt các cuộc tấn công mạng mới mẻ hoặc các biểu hiện tấn công mới mà các phương pháp truyền thống có thể bỏ sót
- Khả năng phát hiện các cuộc tấn công tinh vi hơn: thuật toán machine learning có khả năng phát hiện các hoạt động tấn công tinh vi, bao gồm cả những cuộc tấn công được thực hiện một cách khôn ngoan để tránh sự phát hiện
- Khả năng tự động học hỏi và thích ứng với các thay đổi trong môi trường mạng: ML-IDS có khả năng tự động cập nhật và cải thiện khả năng phát hiện khi môi trường mạng thay đổi Điều này giúp giảm thiểu việc cấu hình thủ công và duy trì liên tục
Tuy nhiên cũng có những nhược điểm đáng chú ý như:
- Khó triển khai và quản lý do đòi hỏi sự hiểu biết về nhiều khía cạnh của hệ thống: triển khai hệ thống này đòi hỏi kiến thức sâu về hệ thống mạng và học máy, điều này có thể là một thách thức đối với những người quản trị không có kinh nghiệm
- Có thể gây ra các cảnh báo sai nếu không được cấu hình đúng: nếu không được cấu hình và điều chỉnh đúng, hệ thống có thể phát ra các cảnh báo sai, gây ra
sự hiểu lầm và tạo gánh nặng không cần thiết cho nhóm an ninh
- Đòi hỏi tài nguyên để đào tạo và duy trì các mô hình machine learning: việc đào tạo và duy trì các mô hình machine learning yêu cầu tài nguyên tính toán và thời gian đáng kể, đặc biệt khi làm việc với dữ liệu lớn và phức tạp
Trang 281.3 Một số hệ thống phát hiện xâm nhập mạng phổ biến hiện nay
1.3.1 Hệ thống phát hiện xâm nhập mạng mã nguồn mở Snort
Snort là một hệ thống phát hiện và ngăn chặn xâm nhập mạng mã nguồn mở (IDS/IPS) có lịch sử phát triển lâu đời, được ra đời vào năm 1998 bởi Martin Roesch, người sáng lập và từng là Giám đốc Công nghệ của Sourcefire Hiện nay, Snort được phát triển và duy trì bởi Cisco, tập đoàn công nghệ hàng đầu thế giới, sau khi Cisco mua lại Sourcefire vào năm 2013 Snort đã từng là người tiên phong trong lĩnh vực phát hiện và ngăn chặn xâm nhập mạng trong doanh nghiệp
Snort sử dụng một tập hợp các luật (rules) để xác định các hành vi mạng có hại, tìm kiếm các gói tin phù hợp với các tiêu chí này, và cung cấp cảnh báo cho người dùng Snort có khả năng hoạt động cả ở chế độ đứng giữa (inline) để chặn những gói tin độc hại
Hình 1.6 Hệ thống IDS Snort
Snort có khả năng tải xuống và cấu hình dễ dàng cho cả cá nhân và doanh nghiệp Nó có thể biên dịch và chạy trên hầu hết các hệ điều hành Linux, Unix và các hệ BSD lớn Ngoài ra, Snort cũng có phiên bản cho Microsoft Windows
Trang 29Snort được xây dựng trên thư viện thu thập gói tin libpcap Với khả năng phân tích lưu lượng mạng thời gian thực, ghi log các gói tin, so khớp nội dung và phân tích giao thức, libpcap là một công cụ hữu ích cho việc giám sát lưu lượng mạng, tìm kiếm nội dung và phân tích giao thức
Các chế độ chạy của Snort có thể kể đến như:
- Sniffer: Snort có thể hoạt động như một "network packet sniffer," lắng nghe
và kiểm tra từng gói tin mạng để phát hiện bất kỳ không thường hay tải vận chuyển độc hại nào Nó cũng có khả năng ghi log các gói tin này
-Packet Logger: ở chế độ này, Snort ghi log các gói tin vào bộ nhớ hoặc ổ đĩa, hữu ích cho việc gỡ lỗi lưu lượng mạng
- Network Intrusion Detection System (NIDS): Snort là một hệ thống phát hiện xâm nhập mạng thực sự, phân tích lưu lượng mạng thời gian thực và so khớp với tập luật do người dùng xác định Nó cung cấp nhiều hành động để ứng phó với các sự kiện bất thường
- Inline: trong chế độ này, Snort có khả năng nhận gói tin từ bảng iptables và quyết định xem có cho phép hoặc chặn gói tin dựa trên các luật của nó
Snort sử dụng các luật được tổ chức trong các tập tin văn bản thông thường, cho phép người dùng chỉnh sửa và bổ sung chúng Các rules này có thể tùy chỉnh và được cấu hình trong tập tin cấu hình chính, gọi là "SNORT.conf." Snort đọc các rules này khi khởi động và xây dựng cấu trúc dữ liệu nội bộ để phát hiện các gói tin tấn công
Với kiến trúc thiết kế linh hoạt dạng module, người dùng có thể mở rộng tính năng của Snort bằng cách cài đặt hoặc viết thêm các module Hiện tại, Snort đã tích hợp sẵn một cơ sở dữ liệu rules chứa hàng ngàn luật, được cộng đồng sử dụng và cập nhật thường xuyên
Trang 30Snort có khả năng hoạt động trên nhiều giao thức và hệ thống nền, bao gồm Ethernet, 802.11, Token Ring, FDDI, Cisco HDLC, SLIP, PPP, và PF của OpenBSD
Nó cung cấp khả năng giám sát và bảo vệ mạng, xác định các hành vi xâm nhập và cảnh báo cho quản trị viên Điểm mạnh chính của Snort bao gồm:
- Khả năng phát hiện và ngăn chặn rủi ro an ninh: Snort cung cấp một hệ thống cảnh báo sớm giúp ngăn chặn các cuộc tấn công từ việc lan truyền trên mạng và gây hại lớn hơn Nó đánh giá tài nguyên máy tính và báo cáo bất thường hoặc xu hướng không bình thường Snort cũng phát hiện các biểu hiện tấn công đã biết và cảnh báo quản trị viên về các rủi ro chưa xác định
- Độ chính xác cao: do là dự án mã nguồn mở, Snort luôn được cộng đồng bảo mật cải thiện và điều chỉnh để đạt được độ chính xác cao Có nhiều nhóm an ninh trên toàn cầu đóng góp vào việc phát triển Snort
- Khả năng điều chỉnh cao: khả năng thêm các tính năng mới vào Snort thông qua việc truy cập mã nguồn cho phép Snort linh hoạt và có thể quản lý nhiều hệ thống bảo mật mạng
- Phản ứng nhanh: với khả năng bảo vệ thời gian thực, Snort có thể ngăn chặn các mối đe dọa mới hoặc phần mềm độc hại Sự hợp tác với Cisco Talos Security Intelligence và Research Group (Talos) giúp Snort cập nhật thông tin về các mối đe dọa mới hàng giờ
- Hệ thống cấu trúc dữ liệu đa dạng: Snort cung cấp nhiều cách để xác định các tiêu chí cho luật, bao gồm kiểm tra nội dung, phân tích giao thức, và nhiều khía cạnh khác để tùy chỉnh quy tắc mạng
- Sự tương thích và tiện ích: Snort có thể cài đặt và chạy trên nhiều hệ thống nền, bao gồm cả Windows, Linux, nhiều hệ UNIX và các hệ điều hành BSD chính
Trang 31Việc triển khai Snort không đòi hỏi việc biên dịch lại kernel hoặc cài đặt phần mềm hoặc phần cứng đặc biệt
1.3.2 Hệ thống phát hiện xâm nhập mạng Suricata
Suricata là một hệ thống phát hiện xâm nhập mạng mã nguồn mở mạnh mẽ, được thiết kế để giám sát và bảo vệ mạng Nó không chỉ phát hiện các cuộc tấn công mạng phổ biến mà còn có khả năng xác định các cuộc tấn công mới hoặc chưa biết, tạo nên một lớp phòng thủ hiệu quả đối với các mối đe dọa mạng Dưới đây là một
số chi tiết về các công nghệ và khả năng của Suricata
Các tính năng của Suricata:
- Phát hiện xâm nhập dựa trên chữ ký: Suricata sử dụng các bộ luật (rules) để xác định các hành vi xâm nhập dựa trên các biểu hiện đã biết Các bộ luật này được viết bởi các nhà phát triển của Suricata và cộng đồng người dùng Chúng mô tả các biểu hiện cụ thể của các cuộc tấn công mạng
- Phát hiện xâm nhập dựa trên hành vi: Suricata có khả năng được cấu hình để phát hiện các cuộc tấn công dựa trên hành vi, tức là các cuộc tấn công không được
mô tả trong các bộ luật Điều này cho phép nó xác định các hoạt động bất thường mà không cần một luật cụ thể
- Kiểm tra gói tin dựa trên trạng thái: Suricata có khả năng kiểm tra trạng thái của các gói tin, tức là theo dõi trạng thái của các kết nối mạng Điều này giúp Suricata phát hiện các cuộc tấn công tinh vi hơn, chẳng hạn như các cuộc tấn công phụ thuộc vào trạng thái kết nối
- Machine Learning: Suricata cũng có khả năng sử dụng học máy để phát hiện các cuộc tấn công mới hoặc chưa biết Nó có thể tự động học và thích nghi với các biểu hiện mới trong lưu lượng mạng
Luật trong Suricata:
Trang 32Suricata sử dụng các bộ luật để xác định các hành vi xâm nhập Các bộ luật này là các tập hợp quy tắc được sử dụng để phát hiện các cuộc tấn công mạng Các
bộ luật Suricata có thể bao gồm một loạt các thông tin, bao gồm:
- Địa chỉ IP nguồn và địa chỉ IP đích: các quy tắc có thể xác định các hành vi dựa trên địa chỉ IP của gói tin, xác định nguồn và đích của cuộc tấn công
- Cổng nguồn và cổng đích: quy tắc có thể kiểm tra các cổng nguồn và cổng đích của gói tin để xác định xem chúng có phù hợp với mô hình tấn công hay không
- Loại gói tin: quy tắc có thể kiểm tra loại gói tin, ví dụ: TCP, UDP, ICMP, để xác định các biểu hiện của cuộc tấn công
- Tiêu đề gói tin và dữ liệu gói tin: các quy tắc có thể so khớp nội dung của tiêu đề gói tin hoặc dữ liệu gói tin để xác định các biểu hiện cụ thể của cuộc tấn công
Các bộ luật Suricata cung cấp một cách mạnh mẽ để xác định và bảo vệ mạng khỏi các cuộc tấn công mạng, và chúng có thể được tùy chỉnh để phù hợp với nhu cầu cụ thể của mỗi môi trường mạng Suricata, với khả năng đa dạng, có thể hoạt động trong nhiều chế độ và thực hiện một loạt các chức năng quan trọng:
- Intrusion detection system (IDS): Suricata có thể hoạt động như một IDS để phát hiện các cuộc tấn công mạng Trong chế độ này, nó theo dõi lưu lượng mạng và ghi lại thông tin về các cuộc tấn công mạng mà nó phát hiện, cung cấp cảnh báo cho người quản trị hệ thống
- Intrusion prevention system (IPS): Suricata cũng có khả năng hoạt động như một IPS để phát hiện và chặn các cuộc tấn công mạng Trong chế độ này, nó không chỉ phát hiện mà còn ngăn chặn các cuộc tấn công, giúp bảo vệ hệ thống khỏi các mối đe dọa mạng
- Network security monitoring (NSM): Suricata có thể được sử dụng trong chế
Trang 33giúp phát hiện các cuộc tấn công mà còn cung cấp thông tin quan trọng về hành vi mạng và tiềm ẩn các mối đe dọa
Hình 1.7 Suricata có thể chạy như một hệ thống phát hiện xâm nhập IDS
Suricata là một công cụ mạnh mẽ với nhiều chức năng quan trọng để bảo vệ mạng và phát hiện các cuộc tấn công mạng:
- Phát hiện xâm nhập: Suricata có khả năng phát hiện nhiều loại cuộc tấn công mạng khác nhau, bao gồm các cuộc tấn công phổ biến như tấn công DoS, DDoS, SQL injection, và lừa đảo Điều này giúp nó xác định các mối đe dọa đối với hệ thống mạng
- Ghi nhật ký: Suricata ghi lại thông tin chi tiết về các cuộc tấn công mạng mà
nó phát hiện thông tin này bao gồm địa chỉ IP nguồn, địa chỉ IP đích, cổng nguồn, cổng đích, loại gói tin, tiêu đề gói tin, và dữ liệu gói tin Nhật ký này rất hữu ích cho việc phân tích sau này và tạo ra bằng chứng về các cuộc tấn công
- Chặn cuộc tấn công: trong chế độ IPS, Suricata có khả năng ngăn chặn các cuộc tấn công mạng Điều này đảm bảo rằng các cuộc tấn công không gây hại cho
hệ thống và dữ liệu mạng
Trang 34- Giám sát và phân tích lưu lượng mạng: Suricata giúp theo dõi và phân tích lưu lượng mạng liên tục Điều này giúp phát hiện các hành vi bất thường và mối đe dọa tiềm ẩn trong mạng
Ưu điểm:
- Có thể mở rộng: Suricata có khả năng mở rộng và có thể được tích hợp vào các mô hình mạng phức tạp
- Được sử dụng rộng rãi: nó được sử dụng rộng rãi trong cộng đồng bảo mật
và doanh nghiệp, và được hỗ trợ bởi một cộng đồng lớn
- Hỗ trợ phát hiện xâm nhập dựa trên hành vi: khả năng phát hiện các cuộc tấn công dựa trên hành vi cho phép Suricata xác định các cuộc tấn công không được mô
- Yêu cầu kiến thức kỹ thuật: cài đặt và cấu hình Suricata có thể đòi hỏi một
số kiến thức kỹ thuật về mạng và bảo mật
- Yêu cầu tài nguyên hệ thống: hoạt động hiệu quả của Suricata có thể đòi hỏi một số tài nguyên hệ thống, đặc biệt khi phải xử lý lưu lượng mạng lớn
Như vậy, dựa trên bối cảnh các cuộc tấn công xâm nhập mạng đang ngày một
Trang 35nghiên cứu để tấn công, khai thác, trong khi dữ liệu thu thập được rất ít, chưa đủ để xây dựng một hệ thống phát hiện xâm nhập dựa trên các phương pháp, hệ thống truyền thống Đồ án đề xuất một hướng nghiên cứu mới, để giải quyết bài toán về dữ liệu Đó là ứng dụng các kỹ thuật meta-learning, xây dựng các neutral network, có thể trích xuất và so sánh các đặc trưng từ các dữ thiệu mạng thô, từ đó phát hiện được các cuộc tấn công với lượng dữ liệu mẫu nhỏ
Trang 36Chương 2 PHÁT HIỆN XÂM NHẬP MẠNG DỰA TRÊN CÁC KỸ THUẬT
META LEARNING 2.1 Meta-Learning trong phát hiện xâm nhập mạng
2.1.1 Khái niệm về Meta-Learning
Khi chúng ta học các kỹ năng mới, rất hiếm khi chúng ta bắt đầu từ đầu hoàn toàn Chúng ta khởi đầu từ những kỹ năng đã học trước đó trong các nhiệm vụ liên quan, tái sử dụng các phương pháp đã hoạt động tốt trước đây và tập trung vào những điều có khả năng đáng thử dựa trên kinh nghiệm Với mỗi kỹ năng học mới, việc học
kỹ năng mới trở nên dễ dàng hơn, đòi hỏi ít ví dụ hơn và ít thử và sai hơn Tóm lại, chúng ta học cách học qua các nhiệm vụ Tương tự, khi xây dựng các mô hình học máy cho một nhiệm vụ cụ thể, chúng ta thường xây dựng trên kinh nghiệm từ các nhiệm vụ tương tự, hoặc sử dụng sự hiểu biết của chúng ta (thường là ngầm) về hành
vi của các kỹ thuật học máy để giúp đưa ra các lựa chọn đúng đắn
Thách thức trong việc học máy là học từ kinh nghiệm trước đó một cách có hệ thống, dựa trên dữ liệu Trước tiên, chúng ta cần thu thập dữ liệu siêu học liệu mô tả các nhiệm vụ học trước và các mô hình đã học trước đó Chúng bao gồm cấu hình thuật toán chính xác được sử dụng để đào tạo các mô hình, bao gồm cài đặt siêu tham
số, cấu trúc đường ống và / hoặc kiến trúc mạng, các đánh giá mô hình kết quả, chẳng hạn như độ chính xác và thời gian đào tạo, các tham số mô hình đã học, chẳng hạn như trọng số được đào tạo của neural network, cũng như các tính năng có thể đo lường của nhiệm vụ chính nó, còn được gọi là siêu đặc trưng Thứ hai, chúng ta cần học từ siêu dữ liệu trước đó này, để trích xuất và chuyển giao kiến thức hướng dẫn tìm kiếm các mô hình tối ưu cho các nhiệm vụ mới Chương này trình bày một cái nhìn tổng quan ngắn gọn về các phương pháp meta-learning khác nhau để thực hiện điều này một cách hiệu quả
Thuật ngữ "meta-learning" áp dụng cho bất kỳ loại học dựa trên kinh nghiệm
Trang 37thể tận dụng nhiều loại siêu dữ liệu hơn, và việc định nghĩa sự tương đồng giữa các nhiệm vụ sẽ là một thách thức quản trị quan trọng Có lẽ không cần phải nói thêm, không có bữa tối miễn phí Khi một nhiệm vụ mới đại diện cho hiện tượng hoàn toàn không liên quan hoặc là nhiễu ngẫu nhiên, việc tận dụng kinh nghiệm trước đó sẽ không hiệu quả May mắn thay, trong các nhiệm vụ thực tế, có rất nhiều cơ hội để học từ kinh nghiệm trước đó."
2.1.2 Những ưu điểm khi ứng dụng Meta-Learning vào trong hệ thống phát hiện xâm nhập
Khi triển khai vào hệ thống phát hiện xâm nhập, meta-learning có một số ưu điểm quan trọng Meta-learning có khả năng học cách thích ứng với các biểu hiện mới và không cần một lượng lớn dữ liệu để thực hiện điều này Điều này rất quan trọng trong việc phát hiện các cuộc tấn công xâm nhập và zero-day, vì các cuộc tấn công này thường không được biết trước và có ít dữ liệu huấn luyện Meta-learning cũng giúp hệ thống tự động học hỏi và cải thiện hiệu suất theo thời gian, điều này đặc biệt hữu ích trong việc phát hiện các biểu hiện mới và phức tạp
Transfer learning là một kỹ thuật trong đó kiến thức từ một nhiệm vụ nguồn được chuyển giao để cải thiện hiệu suất trên một nhiệm vụ đích Trong hệ thống phát hiện xâm nhập, transfer learning có thể được sử dụng để chuyển giao kiến thức từ việc phát hiện các biểu hiện xâm nhập trong các nguồn dữ liệu khác nhau hoặc từ các tác vụ phát hiện xâm nhập trước đó Điều này giúp cải thiện khả năng tự động hóa phát hiện các biểu hiện tấn công xâm nhập và cải thiện hiệu suất trên các loại tấn công có ít mẫu dữ liệu
Trang 38Hình 1.8 Ví dụ về phân loại trong Meta-Learning
Multi-task learning đào tạo mô hình để thực hiện nhiều nhiệm vụ cùng một lúc Trong hệ thống phát hiện xâm nhập, nhiều tác vụ có thể bao gồm phát hiện tấn công trong các giao thức khác nhau, dữ liệu mạng và ứng dụng Bằng cách thực hiện multi-task learning, mô hình có thể sử dụng kiến thức từ các tác vụ này để cải thiện khả năng phát hiện tấn công xâm nhập trên nhiều khía cạnh của hệ thống mạng
Few-shot Learning là một kỹ thuật học từ ít dữ liệu Trong ngữ cảnh phát hiện tấn công xâm nhập mạng, few-shot learning có thể áp dụng để phát hiện các biểu hiện tấn công dựa trên một số lượng hạn chế các mẫu dữ liệu Các phương pháp few-shot learning, chẳng hạn như học siamese network hoặc học dựa trên mô hình sinh
dữ liệu, có thể được sử dụng để nắm bắt các đặc điểm quan trọng và phát hiện xâm nhập với độ chính xác cao
Việc áp dụng các kỹ thuật của meta-learning vào phát hiện tấn công xâm nhập
sẽ có những ưu điểm vượt trội như sau:
- Khả năng tự học hỏi nhanh chóng: meta-learning cho phép hệ thống học cách thích ứng nhanh chóng với các biểu hiện mới mà không cần một lượng lớn dữ liệu
Trang 39Điều này giúp giảm thời gian phản ứng đối với các cuộc tấn công zero-day, không cần chờ đợi cập nhật luật hay cơ sở dữ liệu
- Sử dụng hiệu quả ít dữ liệu: các kỹ thuật meta-learning, như few-shot learning cho phép học từ ít dữ liệu Điều này rất hữu ích khi phát hiện các cuộc tấn công có ít mẫu dữ liệu hoặc khi không có đủ dữ liệu huấn luyện cho các biểu hiện tấn công mới
- Tận dụng kiến thức trước đó: meta-learning có khả năng chuyển giao kiến thức từ các nhiệm vụ trước đó hoặc từ các mô hình đã được đào tạo Điều này giúp cải thiện khả năng phát hiện tấn công bằng cách sử dụng kiến thức có sẵn về các biểu hiện tương tự hoặc về cách thức hoạt động của các phương pháp tấn công
- Tự động hóa phát hiện: meta-learning giúp hệ thống tự động hóa quá trình phát hiện tấn công Khi có sự xuất hiện của các biểu hiện mới, hệ thống có thể tự động học và thích ứng, giảm sự phụ thuộc vào sự can thiệp thủ công
- Cải thiện hiệu suất theo thời gian: các kỹ thuật meta-learning cho phép hệ thống liên tục cải thiện hiệu suất phát hiện bằng cách tự động học hỏi từ các tình huống thực
tế Điều này đặc biệt hữu ích trong việc duy trì và nâng cao khả năng phát hiện
Tóm lại, áp dụng các kỹ thuật của meta learning vào phát hiện tấn công day và tấn công có ít mẫu dữ liệu giúp hệ thống an toàn mạng trở nên linh hoạt, hiệu quả hơn, và có khả năng phát hiện các mối đe dọa mới một cách hiệu quả và tự động
zero-2.2 Một số kỹ thuật Meta Learning phổ biến
2.2.1 Few-shot learning
Mục tiêu chính của machine learning là học hỏi bằng cách tiếp thu kiến thức mới từ các nguồn bên ngoài và làm cho điều này hiệu quả hơn bằng cách sửa đổi kiến thức hiện có Trong quá trình này, dữ liệu được tinh chỉnh thành "kiến thức" và được lưu trữ để sử dụng trong tương lai Mặc dù machine learning đã đạt được thành
Trang 40công lớn ở nhiều phương diện, nhưng nó phụ thuộc vào khả năng có sẵn của lượng
dữ liệu khổng lồ
Các kỹ thuật machine learning tiêu chuẩn, như Random Forest và các mạng nơ-ron đơn giản, cần học thông tin có từ hàng nghìn mẫu Được thúc đẩy bởi mục tiêu học thuật của trí tuệ nhân tạo tiếp cận với mức độ suy luận của con người, và để giảm chi phí học tập, few-shot learning đã thu hút sự chú ý rộng rãi trong những năm gần đây Trong phần này, chúng ta sẽ giải thích few-shot learning là gì, sau đó mô tả chi tiết Cuối cùng, chúng ta sẽ tổng hợp những ưu điểm của few-shot learning
Few-shot learning đề cập đến quá trình đào tạo một mô hình với rất ít dữ liệu đào tạo Trong trường hợp có rất ít ví dụ đào tạo có sẵn, cách tiếp cận này có thể sử dụng kiến thức đã học trước đó để cải thiện hiệu suất trên các nhiệm vụ mới Do các hạn chế phát sinh từ quyền riêng tư, đạo đức, bảo mật, nguồn lực tính toán, v.v., có thể có rất ít ví dụ về một instance, điều này khiến không thể thu thập đủ dữ liệu đào tạo để học tập trong một số lĩnh vực Khi không có đủ thông tin giám sát cho nhiệm
vụ mục tiêu, hiệu suất của mô hình sẽ giảm, có nghĩa là các phương pháp học có giám sát thường không thành công khi sử dụng các tập dữ liệu nhỏ
Không giống như các phương pháp machine learning truyền thống, few-shot learning sử dụng thông tin đã được học trước đó như kiến thức và kinh nghiệm trước
đó để giúp học các nhiệm vụ mới [3] Điều này làm cho nó có thể học các nhiệm vụ hiếm gặp chỉ với một lượng nhỏ dữ liệu được gắn nhãn
Những ưu điểm nổi bật của few-shot learning:
Con người có thể tổng quát hóa kiến thức mới dựa trên một vài ví dụ, trong khi trí tuệ nhân tạo thường cần hàng nghìn ví dụ để đạt được kết quả tương tự Lấy cảm hứng từ khả năng học hỏi nhanh của con người, các nhà nghiên cứu đã đặt mục tiêu phát triển một mô hình machine learning có thể học một danh mục mới một cách