CHƯƠNG 1: TỔNG QUAN VỀ MẠNG trộm và chỉnh sửa dữ liệu trên đường truyền. Bên thứ ba có thể lấy được các gói tin đã mã hóa, nhưng không thể đọc được nội dung thông điệp từ các gói tin này. Trong mã hóa dữ liệu, dữ liệu ban đầu được gọi là plaintext, dữ liệu đã được mã hóa là ciphertext. Quá trình mã hóa từ plaintext sang ciphertext sẽ biến nội dung sang một dạng mới, vì thế sẽ tăng thêm một lớp bảo mật cho dữ liệu.
Ứng với mỗi cách mã hóa là một cách giải mã nhất định, bao gồm thuật toán và khóa là bí mật. Giả sử dữ liệu bị đánh cắp thì phải mất một khoảng thời gian khá lâu và một khoảng tài nguyên nhất định đủ để tên trộm có thể giải mã dữ liệu. Thực tế, việc mã hóa dữ liệu không thể hoàn toàn ngăn việc dữ liệu có thể bị đánh cắp nhưng lại là việc vô cùng cần thiết để tăng tính bảo mật cho dữ liệu.3 Mạng riêng ảo (Virtual private network – VPN) Mạng riêng ảo là một kĩ thuật giúp tạo kết nối an toàn khi tham gia vào mạng công cộng bằng cách tạo một mạng ảo. Nó ngăn chặn những người không được phép nghe lén và cho phép người dùng thực hiện công việc từ xa.
Vì vậy, các tập đoàn lớn, các cơ sở giáo dục và cơ quan chính phủ sử dụng công nghệ này để cho phép người dùng từ xa kết nối an toàn đến mạng riêng của cơ quan mình. Khi kết nối máy tính với VPN, máy tính sẽ hoạt động như thể đang kết nối với mạng cục bộ. Điều này cho phép người dùng truy cập nguồn tài nguyên mạng cục bộ ngay cả khi họ đang ở đầu bên kia của thế giới. Ngoài ra, người dùng cũng có thể sử dụng Internet giống như thể họ đang hiện diện tại vị trí của VPN.
Ví dụ, nếu VPN đặt tại Nhật Bản thì khi người dùng kết nối đến một ứng dụng như Netflix, nó sẽ ghi nhận địa chỉ của họ ở Nhật Bản. VPN là một giải pháp tiện lợi với chi phí thấp để xây dựng một hệ thống mạng riêng mà vẫn cung cấp được nhiều chức năng đến người dùng như truy cập từ xa, duyệt web ẩn danh, truy cập những web bị chặn giới hạn địa lí, … Tuy nhiên, VPN vẫn tồn tại những nhược điểm như gói dữ liệu có nguy cơ bị thất lạc, những người dùng có nguy cơ bị tấn công, … 8 CHƯƠNG 1: TỔNG QUAN VỀ MẠNG 1.4 HỆ THỐNG PHÁT HIỆN XÂM NHẬP MẠNG (INSTRUCTION DETECT SYSTEM - IDS) 1.1 Khái niệm Hệ thống phát hiện xâm nhập là một hệ thống phát hiện các xâm nhập trái phép, các cuộc tấn công vào hệ thống mạng và đưa ra cảnh báo. IDS có thể là thiết bị phần cứng hay phần mềm. Mục đích của nó là ngăn ngừa và phát hiện những hành động mang tính phá hoại sự bảo mật của hệ thống hoặc những hành vi như dò tìm, quét các cổng.
Ngoài ra, IDS có khả năng phân biệt hành vi tấn công đến từ bên ngoài hay trong nội bộ. Ngày nay có rất nhiều sản phẩm công nghệ ra đời với mục đích bảo vệ hệ thống mạng của người dùng. Tuy nhiên, chúng ta không nên nhầm lẫn một trong số chúng là một hệ thống phát hiện xâm nhập. Chẳng hạn, tường lửa hay một phần mềm chống vi- rút nào đó không phải là IDS [8].
IDS là một trong những giải pháp hiệu quả và quan trọng trong bảo vệ hệ thống. Nhìn chung, nó sẽ cung cấp các chức năng như sau: o Theo dõi, giám sát và phát hiện các hành vi bất thường, xâm nhập trái phép đối với hệ thống o Đưa ra cảnh báo về tình trạng cho hệ thống và nhà quản trị kịp thời o Xác định vị trí có vấn đề trong hệ thống o Phân biệt nguồn gốc cuộc tấn công đến từ nội bộ hay bên ngoài 1.2 Phân loại Tùy theo chức năng và nhiệm vụ, IDS sẽ được chia thành nhiều loại khác nhau như sau [8]: o NIDS (Network Intrusion Detection Systems): hệ thống phát hiện xâm nhập mạng sẽ tập hợp gói tin để phân tích sâu bên trong mà không làm thay đổi cấu trúc gói tin. NIDS có thể là phần mềm triển khai trên máy chủ (server) hoặc dạng thiết bị tích hợp. Nó hoạt động tốt trong việc kiểm tra và phát hiện các dạng tấn công trên mạng.
Thông thường, NIDS sẽ được bố trí tại những điểm dễ bị tấn công trong hệ thống. o HIDS (Host Intrusion Detection Systems): hệ thống phát hiện xâm nhập host (bất cứ một máy tính nào có kết nối tới một mạng máy tính và có địa chỉ xác định) 9 CHƯƠNG 1: TỔNG QUAN VỀ MẠNG theo dõi các hoạt động bất thường trên các host riêng biệt. Nó thường được được đặt trên các host quan trọng hay cần được theo dõi. o Signature-Based IDS: là các IDS hoạt động dựa trên chữ ký.
Nó giám sát các gói tin trên mạng và so sánh chúng với cơ sở dữ liệu chữ ký. Nhược điểm của các IDS này là có thể không phát hiện ra mối đe dọa mới, khi chữ ký để nhận biết nó chưa được IDS cung cấp hay cập nhật. o Misuse-based IDS: hệ thống phát hiện xâm nhập dựa vào dấu hiệu. Những dấu hiệu đó có thể là thông tin về các kết nối nguy hiểm đã biết trước.
Sau đó, nó so sánh thông tin của các gói tin đến với các dấu hiệu này để phát hiện ra các hoạt động đáng ngờ và đưa ra cảnh báo cho hệ thống. IDS này hiệu quả trong việc phát hiện các tấn công đã biết với tỷ lệ cảnh báo sai thấp. Tuy nhiên, việc chỉ phát hiện được những cuộc tấn công đã biết lại trở thành nhược điểm lớn của nó. o Anomaly-Based IDS: IDS này sẽ phát hiện mối đe dọa dựa trên sự bất thường.
Quá trình phát hiện bất thường được tiến hành qua hai giai đoạn: giai đoạn huấn luyện (pha huấn luyện) và gia đoạn phát hiện (pha phát hiện). Tại pha huấn luyện, nó xây dựng một hồ sơ về các hoạt động bình thường (thông số chuẩn). Sau đó, tại pha phát hiện, nó tiến hành so khớp gói tin với hồ sơ đã tạo ở pha huấn luyện để xác định dấu hiệu bất thường. Nó khá hiệu quả trong việc phát hiện các mối nguy hiểm không được biết trước.
o Passive IDS: IDS loại này rất thụ động, nó chỉ phát hiện và gửi cảnh báo đến nhà quản trị. Những hành động sau đó sẽ phụ thuộc vào người quản trị. o Reactive IDS: IDS loại này không chỉ thực hiện các chức năng như IDS Passive mà còn thực hiện những hành động được thiết lập sẵn để phản ứng lại các mối đe dọa tức thì.3 Ưu nhược điểm Ưu điểm o Là một lựa chọn thích hợp để thu thập số liệu, giúp kiểm tra các sự cố xảy ra đối với hệ thống mạng với những bằng chứng thuyết phục nhất o Là công cụ để chủ động giám sát và bảo vệ mạng của bạn khỏi hoạt động độc hại o Đem đến cái nhìn bao quát và toàn diện về toàn bộ hệ thống mạng 10 CHƯƠNG 1: TỔNG QUAN VỀ MẠNG Nhược điểm o Dễ đưa ra các báo động sai nếu không được cấu hình hợp lý o Tốn nhiều chi phí để triển khai, vận hành, phát triển và mở rộng Mặc dù được xem là một biện pháp hữu hiệu nhưng IDS vẫn có khả năng bị tấn công bởi tấn công từ chối dịch vụ (Distributed Denial of Service - DoS) hay các tấn công đánh lừa nhằm khiến IDS đưa ra các cảnh báo sai. 11 CHƯƠNG 2: TỔNG QUAN VỀ MACHINE LEARNING CHƯƠNG 2: TỔNG QUAN VỀ MACHINE LEARNING 2.1 KHÁI QUÁT VỀ HỌC MÁY (MACHINE LEARNING) 2.1 Học máy là gì? Học máy (machine learning) là một lĩnh vực con của trí tuệ nhân tạo (artificial intelligence) sử dụng các thuật toán cho phép máy tính có thể học từ dữ liệu để thực hiện các công việc thay vì được lập trình một cách rõ ràng.2 Phân nhóm thuật toán Về cơ bản, các thuật toán học máy (machine learning) có thể phân thành hai nhóm [9]: • Nhóm các thuật toán học máy theo phong cách học tập, hoặc • Nhóm các thuật toán học máy dựa trên sự tương đồng về hình thức hoặc chức năng 2.1 Thuật toán phân theo phong cách học tập 2.1 Học có giám sát (supervised learning) Hình 2.
1 Học có giám sát (supervised learning) [9] Hình 2.1 minh họa về thuật toán học có giám sát. Về cơ bản, trong thuật toán được giám sát này, dữ liệu đầu vào được gọi là dữ liệu huấn luyện và có nhãn. Dữ liệu đầu vào của quá trình bao gồm cả vector đầu vào chứa các thuộc tính của dữ liệu lẫn giá trị đầu ra mục tiêu (gọi là nhãn của dữ liệu). Mô hình học có giám sát cho phép dự đoán đầu ra của một dữ liệu mới dựa trên các cặp (đầu vào, đầu ra) đã biết trước thu được từ bộ dữ liệu huấn luyện.
Bộ dữ liệu huấn luyện bao gồm các cặp (dữ liệu, nhãn). Trong đó, một mô hình được xây dựng thông qua một quá trình huấn luyện. Quá trình huấn luyện tiếp tục cho đến khi mô hình đạt được mức độ mong muốn. 12 CHƯƠNG 2: TỔNG QUAN VỀ MACHINE LEARNING • Các bài toán phổ biến là phân loại và hồi quy.
• Các thuật toán phổ biến bao gồm hồi quy logistic và mạng thần kinh 2.2 Học không giám sát (unsupervised learning) Hình 2. 2 Học không giám sát (unsupervised learning) [9] Hình 2.2 mô tả về thuật toán học không giám sát. Học không giám sát là một lớp mô hình học sử dụng một thuật toán để mô tả, trích xuất ra các mối quan hệ tiềm ẩn trong dữ liệu. Khác với học có giám sát, học không giám sát chỉ thực thi trên dữ liệu đầu vào không cần các thuộc tính nhãn và không có kết quả đã biết.
Chúng ta phải xây dựng một mô hình bằng cách suy ra các cấu trúc tiềm ẩn có trong dữ liệu đầu vào. Điều này có thể là để trích xuất ra các quy tắc chung. Nó có thể thông qua một quá trình toán học để giảm sự dư thừa. • Các bài toán phổ biến là phân cụm, giảm kích thước và học quy tắc kết hợp.
• Các thuật toán phổ biến bao gồm thuật toán Apriori và k-Means.3 Học bán giám sát (semi-supervised learning) Hình 2. 3 Học bán giám sát (semi-supervised learning) [9] Hình 2.3 mô tả thuật toán học bán giám sát. Dữ liệu đầu vào là một hỗn hợp của các đối tượng được dán nhãn và không nhãn. Mục tiêu của mô hình học bán giám sát là tận dụng hiệu quả toàn bộ dữ liệu có được, không chỉ dữ liệu được gán nhãn mà cả dữ liệu chưa được gán nhãn.