PHẦN MỞ ĐẦU 1. Giới thiệu Cùng với sự phát triển nhanh chóng của hạ tầng, dịch vụ mạng máy tính và IoT (sau đây gọi tắt là mạng) đó là sự tăng nhanh của các loại hình tấn công mạng. Theo báo cáo thường niên có uy tín hàng đầu về mối đe doạ an ninh mạng trên toàn Thế giới năm 2018 và 2019 (có tên Internet Security Threat Report 1 , viết tắt là ISTR). Số lượng mối đe doạ tấn công mạng tiếp tục tăng bùng nổ; khoảng 1/10 (một trong mười) các tên miền (URL) trên Internet là độc hại, số lượng tấn công Web tăng 56% trong năm 2018, số lượng thư rác (Spam) tăng khoảng 50% trong 4 năm liên tiếp từ 2015 đến 2018.
Các loại tấn công mới như Supply-Chain (một kiểu tội phạm mạng) tăng vọt 78%, mã độc PowerShell-Script tăng 1000%. Các loại tấn công này sử dụng kỹ thuật LolL (Living-off-the-land), kỹ thuật này cho phép các mã độc ẩn bên trong các gói tin nên khó bị phát hiện bởi các bộ dò tìm truyền thống. Số liệu cũng thể hiện các tấn công chủ yếu xuất phát từ một động lực rõ ràng (≈ 85%), mục tiêu tập trung vào thu thập dữ liệu tình báo (≈ 90%) [27]. Việc tìm giải pháp cho phát hiện và ngăn chặn các tấn công mạng đã thu hút sự quan tâm của rất nhiều nhà nghiên cứu trong nhiều thập kỷ qua.
Điển hình trong lĩnh vực này là nghiên cứu hệ thống phát hiện xâm nhập mạng (Network Intrusion Detection Systems -NIDS). Các hệ thống NIDS được xem là lớp bảo vệ thứ hai sau tường lửa quy ước để phát hiện ra các xâm nhập, các mã độc và các hành vi xâm hại hệ thống mạng thông qua quan sát đặc tính lưu lượng 1 https://www.com/support/security-center/publications/threat-report, đây là báo cáo phân tích dữ liệu từ hệ thống giám sát an ninh mạng toàn cầu, được biết như là tổ chức dân sự lớn nhất thế giới về lĩnh vực tình báo mạng. Hệ thống thu thập từ 123 triệu bộ thu thập tấn công mạng, hàng ngày vô hiệu hoá khoảng 142 triệu mối đe doạ mạng. Hệ thống đang giám sát các hành vi đe doạ mạng trên 157 quốc gia.
NIDS thường được triển khai trên mạng để phát hiện các tấn công mạng từ các hướng (từ ngoài, từ trong mạng nội bộ) như Hình 1. Các Hệ thống NIDS 2. Thu thập, phát hiện tấn công Attacker Internet Switch Router 1. Tạo một tấn công từ nội bộ Tường lửa Vượt tường lửa (pass) Chặn (drop) Nạn nhân(Victim) Tạo một tấn công từ ngoài vào Kẻ tấn công (Attacker) Hình 1: Vị trí triển khai NIDS NIDS được chia thành hai loại: phát hiện dựa trên dấu hiệu (misuse-based hay signature-based) và phát hiện dựa trên sự bất thường (anomaly-based) [1], [2], [57], [82].
Việc phân nhóm căn cứ vào cách tiếp cận phát hiện xâm nhập. Các NIDS dựa trên dấu hiệu cho khả năng phát hiện chính xác các tấn công đã biết trước, trong khi đó chỉ có NIDS dựa trên hành vi bất thường mới có thể phát hiện được các tấn công mạng mới [45], [65], [116], nghiên cứu các phương pháp phát hiện bất thường (Anomaly Detection - AD) trong lĩnh vực an ninh mạng được biết đến với thuật ngữ là Network Anomaly Detection (NAD). Một hệ thống phát hiện xâm nhập hiệu quả thường được tạo thành từ giải pháp phát hiện dựa trên dấu hiệu và nối tiếp sau bởi giải pháp NAD [116] như Hình 2. Bản chất nghiên cứu về NAD là nghiên cứu về bộ máy phát hiện (Detection Engine).
Mô hình hoá hoạt động của bộ máy phát hiện bất thường để tìm kiếm giải pháp hiệu quả hơn trong phân tách các mẫu dữ liệu bình thường và bất thường. Các phương pháp theo hướng cố gắng xác định độ lệch của dữ liệu đầu vào so với các mẫu dữ liệu sử dụng cho biểu diễn hoạt động thông thường của hệ 3 Lưu lượng mạng Phát hiện theo dấu hiệu Các mẫu đã biết Tiền xử lý -Bình thường (Signature-based) Các mẫu mới/chưa biết -Tấn công Phát hiện theo bất thường (Anomaly-based) Trung tâm Security Hình 2: Phương pháp signature-based nối tiếp bởi anomaly-based. thống đã được thiết lập trước, để đánh dấu các xâm nhập (các bất thường hay tấn công mạng). Do vậy, các giải pháp đề xuất cần quen với các mẫu sử dụng thông thường thông qua việc học [2].
Các phương pháp cho phép hệ thống "học" từ dữ liệu để giải quyết các bài toán cụ thể thường được biết đến với thuật ngữ học máy (machine learning). NAD là chủ đề nghiên cứu được đặc biệt quan tâm trong sự phát triển của lĩnh vực an ninh mạng [1], [20], đây là hướng đi cho tìm kiếm giải pháp phát hiện được các tấn công mới, chưa từng xuất hiện. Nhiều phương pháp học máy khác nhau đã được nghiên cứu, ứng dụng rộng rãi và đạt hiệu quả cao [45], [63]. Tuy nhiên, nghiên cứu NAD là để chuẩn bị tốt hơn cho các tấn công trong tương lai [63], đây là một chủ đề rộng và khó, với nhiều các thách thức như được trình bày trong phần tiếp theo.
Tính cấp thiết của luận án Trong xây dựng các phương pháp phát hiện bất thường mạng, nhãn của tấn công được cho là không sẵn có trong quá trình huấn luyện mô hình [13], [20], [22]. Việc thu thập các tấn công gặp rất nhiều khó khăn do chúng thường được công bố không đầy đủ vì các cá nhân và tổ chức bị tấn công mạng muốn giữ bí mật nội bộ và bảo đảm quyền riêng tư [41], [91]. Việc gán nhãn cho một số lượng khổng lồ các hành vi bất thường mạng, qua đó đại diện cho toàn bộ các 4 bất thường trên hệ thống mạng là một nhiệm vụ tốn quá nhiều công sức và thời gian. Hơn nữa, các tấn công sau khi được nhận ra bởi các hệ thống phát hiện, thường cần một thời gian khá lớn để có thể xử lý và lấy mẫu.
Trong khi các tấn công mới thường rất nguy hiểm đến hệ thống mạng. Đó là lý do NAD với mục tiêu chính là phát hiện ra các tấn công mới, cần phải thường xuyên được nghiên cứu, đổi mới. Hầu hết các nghiên cứu dựa trên tri thức đã biết đến về các tấn công thường không hiệu quả trong phát hiện các tấn công mới [5]. Do vậy quá trình huấn luyện các phương pháp NAD được khuyến nghị là hoàn toàn độc lập với dữ liệu tấn công, chỉ sử dụng dữ liệu bình thường cho xây dựng mô hình phát hiện bất thường [20].
Các kỹ thuật cho xây dựng các bộ phân lớp từ một lớp dữ liệu được gọi là phân đơn lớp (One-class classifications - OCC). Nhiều học giả đã đã chứng minh tính hiệu quả của phương pháp OCC cho NAD như có thể giải quyết được các vấn đề với không gian thuộc tính dữ liệu quá nhiều chiều (high-dimensional), có thể giúp ước lượng bộ siêu tham số (hyper-parameters) cũng như nâng cao khả năng phân lớp, giúp phát hiện ra các tấn công, mã độc mới (chưa từng biết) [20], [37], [110]. Các phương pháp OCC truyền thống có thể được chia thành các nhóm chính là: phương pháp dựa trên khoảng cách và phương pháp dựa trên mật độ [47]. Trong số đó, một số phương pháp nổi tiếng có thể giải quyết được các vấn đề của dữ liệu mạng như: Local Outlier Factor (LOF) [16] hoạt động hiệu quả trên dữ liệu không gian rất nhiều chiều; Kernel Density Estimation (KDE) [111] có thể tự học mà không cần giả định về phân bố của dữ liệu; One-Class Support Vector Machine (OCSVM) [88] hoạt động phù hợp cho nhiều lĩnh vực ứng dụng khác nhau.
Gần đây, các phương pháp phát hiện bất thường dựa trên học sâu (deep learning) được cho là tiềm năng và hiệu quả hơn so với các phương pháp học máy truyền thống, nhất là trong điều kiện kích thước, số chiều dữ liệu quan sát ngày càng tăng nhanh [21]. Học sâu là thuật ngữ liên quan đến học cách biễu diễn dữ liệu (representation learning) với nhiều tầng, nhiều mức xử lý [66], là một nhánh của học máy. Học sâu được cho có 5 khả năng biểu diễn dữ liệu tốt hơn, cho phép tự học đặc tính dữ liệu (feature engineering) [20], [21], [86]. Trong số đó, các phương pháp học sâu dựa trên kiến trúc AutoEncoder (AE) được cho là kỹ thuật tiên tiến (the state-of-the-art) cho phát hiện bất thường mạng [20], [37], [100].
Để đáp ứng yêu cầu nâng cao khả năng phát hiện các tấn công mới và khó, việc nghiên cứu cải tiến phương pháp học sâu cho NAD phải luôn được quan tâm và là yêu cầu thiết thực. Shrink AE (SAE) [20], [37] được cho là phương pháp tiêu biểu gần đây cho phát hiện bất thường mạng phát triển dựa trên học sâu AutoEncoder. Phương pháp này được huấn luyện để tìm cách biểu diễn dữ liệu bình thường ở vùng rất chụm tại gốc toạ độ của không gian xem xét. Do vậy, với các đầu vào là dữ liệu bất thường (chưa từng biết đến), các vector ẩn tương ứng sẽ bị đẩy ra xa so với gốc toạ độ.
Phương pháp dựa trên học sâu AutoEncoder này được cho là có khả năng phát hiện bất thường tốt hơn các phương pháp hiện thời trên nhiều tập dữ liệu kiểm thử phổ biến trong lĩnh vực học máy và an ninh mạng [20]. Tuy nhiên cơ chế hoạt động cũng cho thấy SAE vẫn cần được cải tiến, phát triển ở cả ở phần tiền xử lý dữ liệu trước SAE và lõi của SAE. Thứ nhất, vì mô hình học sâu này cố nén toàn bộ dữ liệu bình thường vào một cụm đơn duy nhất, do vậy thuật toán có thể không đạt hiệu quả tốt khi tập dữ liệu cho huấn luyện tồn tại ở dạng nhiều cụm (cluster). Thứ hai, mô hình SAE mặc dù cho khả năng phát hiện bất thường mạng rất tốt, tuy vậy SAE vẫn có thể gặp khó khăn với một số loại tấn công (bất thường).
Đây là các mẫu tấn công khi được phân tách (kiểm tra) bởi SAE thường tạo ra các vector được biểu diễn ở gần gốc toạ độ hơn, do vậy việc phân tách giữa bình thường và bất thường khó hơn. Theo cơ chế hoạt động của SAE, các tấn công mạng mà SAE gặp khó có thể do mẫu dữ liệu có nhiều điểm giống với mẫu dữ liệu bình thường, vì SAE cố ép để dữ liệu bình thường được biểu diễn ở vùng gần gốc toạ độ trong không gian biểu diễn mới. Do vậy với dữ liệu tấn công gần giống với dữ liệu bình thường cũng sẽ được biểu diễn gần tương tự, ở vùng rất gần nhau. Do vậy, với các mẫu 6 tấn công này, phương pháp NAD tiêu biểu dựa trên học sâu AutoEncoder này có thể không phân tách tốt giữa mẫu bình thường và bất thường.
Xác định ngưỡng ra quyết định là một bài toán khó khăn với các bộ phân đơn lớp OCC, đây là yêu cầu đối với mô hình khi triển khai trong thực tế [40].