Chương 1: Giới thiệu. Chương này trình bày tổng quan bài toán của khoá luận, cùng với đó là mục tiêu và đóng góp của khoá luận. e Chương 2: Các nghiên cứu liên quan. Chương này trình bày cụ thể các thông tin nền tảng của bài toán, tập dữ liệu và các nghiên cứu trước đó liên quan tới bài toán đang giải quyết trong khoá luận này.
e Chương 3: Phương pháp thực hiện. Chương này trình bày chỉ tiết hệ thống phát hiện xâm nhập mạng của khoá luận, cùng theo đó với những kiến thức lý thuyết nền tảng mà tôi sử dụng. e Chương 4: Kết quả thực nghiệm. Chương này trình bày chỉ tiết kết quả thực nghiệm của hệ thống đề xuất và cách tôi đánh giá hệ thống đề xuất.
e Chương 5: Kết luận. Chương trình tóm tắt lại những kết quả của khoá luận cùng với những đóng góp của khoá luận, ngoài ra tôi cũng đề cập tới những hạn chế và hướng tiếp cận trong tương lai. Chương 2 Các nghiên cứu liên quan 2.1 Tổng quan về các tập dữ liệu tấn công xâm nhập mạng Thong thường các tập dữ liệu mạng được lưu trữ dưới 2 dạng: dựa trên gói tin (packet-based) và dựa trên luồng (flow-based) [14]. Dé thu thập các thông tin di liệu mạng, các các mềm chuyên dụng được cài đặt ở các cổng kết nối trong hệ thống mạng để theo dõi các gói tin lưu thông.
Dữ liệu dựa trên gói tin được lưu theo thông tin của các gói tin, có khả năng lưu trữ toàn bộ thông tin của các gói tin, bao gồm cả payload và các header. Trong khi đó, dữ liệu dựa trên luồng lưu theo luồng, mang tính bao quát hơn, cụ thể các gói tin được gom lại thành các luồng dit liệu của mỗi kết nối riêng, thông tin lưu chỉ bao gồm các thông tin metadata.1 Dữ liệu dựa trên gói tin Dữ liệu dựa trên gói tin thường được lưu dưới dạng tệp tin PCAP và có chứa thông tin payload, các thông tin khác có thể có hoặc không dựa vào đặc tính của tầng mạng và tầng kết nối của gói tin. Các giao thức kết nối mạng quan trọng bao gồm Transmission Control Protocol (TCP), User Datagram Protocol (UDP), Internet Control Message Protocol (ICMP) va théng tin Internet Protocol (IP).1 hiển thi các thong tin của các gói trong các giao thức khác nhau. Trong đó, giao thức TCP là giao thức có tính chắc chắn về dữ liệu, các gói tin giữa 32 Bits 32 Bits < > < > Type of /ersior| IHL service Length Source port Destination port Identification Flags| Set Fragment Sequence number 5 Time to Protocol | Header checksum Acknowledgement number 3 ỹ b [Data : 7 £ Source IP address 3 offset Window size Destination IP address ¬ Checksum Urgent pointer o Options Padding r Options Data Data b Hị Source port Destination pPort tị Type | Code | Checksum H H 2 Length Checksum 2 Data (optional) â ỗ 8 Data Hình 2.1: Thông tin của các gói tin mang của các giao thức: IP, TCP, UDP va ICMP [1] người gửi và người nhận được dam bảo tính toàn vẹn nhờ vào các thông tin sequence number, acknowledgment number, TCP flags, va checksum values.
Giao thức TCP phù hợp cho các kết nối can dam bao tính bảo toàn của dữ liệu như: các tệp tin, mật khẩu,. Trong khi đó, giao thức UDP là giao thức ít chắc chắn non, các gói tin không được đảm bảo là sẽ được gửi đi chính xác. Do đó, header của giao thức UDP chỉ có các thông tin cơ bản như source port, destination port, ength và checksum. Giao thức UDP phù hợp với các mục đích vận chuyển các thông tin không cần độ chính xác cao về mặt dữ liệu như: hình ảnh, âm thanh,.
Khác với TCP va UDP, giao thức ICMP thường được sử dung để gửi các thông tin trạng thái giữa các kết nối nên nó có kích thước nhỏ hơn so với TCP và UDP. Cuối cùng là các thông tin về IP, IP header thường được gắn vào gói tin ở tầng vận chuyển, chứa các thông tin của người gửi và người nhận như IP người gửi, P người nhận, loại giao thức của gói tin,.2 Dữ liệu dựa trên luồng Dữ liệu dựa trên luồng thường chỉ lưu các thông tin chính của các kết nối, không bao gồm các thông tin cụ thể của các gói tin như dữ liệu. Dữ liệu dựa trên lường thường được tạo bằng các gom các gói tin trong cùng một kết nối, sau đó ghi nhận và rút các thông tin cơ bản của kết nối đó và thường không lưu các dữ liệu ở phần payload của gói tin. Các thông tin cơ bản thường được thấy trong các tập dữ liệu dựa trên luồng bao gồm như: địa chỉ IP của bên nhận và bên gửi, địa chỉ cổng của bên nhận và bên gửi và loại giao thức giao tiếp.
Các thông tin về luồng có thể lưu ở định dạng có hướng hoặc vô hướng. Cụ thể, bên A gửi thông tin cho bên B, bên B trả lời thông tin cho bên A, do A và B có các thông tin chung nên hai kết nối này có thể theo thành một luồng duy nhất, luồng này được gọi là luồng vô hướng. Ngược lại, các thông tin của hai kết nối này được lưu riêng biệt, xác định được bên gửi và bên nhận của gói tin thì hai luồng đó gọi là luồng có hướng. Sh Thuộc tinh Source IP Address .chẻa Source Port Destination IP Address Destination Port Transport Protocol (e., ICMP, TCP, or UDP) First seen Start time flow first seen Duration of the flow Number of transmitted bytes Number of transmitted packets 0 TCP Flags Bảng 2.1: Các thông tin co bản của dữ liệu dựa trên luồng Ngoài các thông tin cơ bản khi tạo dữ liệu dựa trên luồng nêu trên, các thông tin khác cũng được ghi nhận tuỳ vào nhu cầu sử dụng.
Hiện nay, có các định dang của thông được sử dụng như NetFlow [15], IPFIX [16], sFlow [17] và OpenFlow [18].1 thong tin về các thông tin cơ bản của các định dạng này.3 So sánh dữ liệu dựa trên gói tin và dữ liệu dựa trên luồng Để làm rõ đặc điểm và sự khác nhau của hai loại định dạng dữ liệu: dữ liệu dựa trên gói tin và dữ liệu dựa trên luồng, tôi trình bay các đặc điểm dữ liệu nầy: Dữ liệu dựa trên luồng 10 e Dữ liệu của các kết nối chứa các thông tin của các kết nối từ tầng vật lý (tầng thứ 1 trong mô hình OST [19]) tới tầng vận chuyển (tang thứ 4 trong mô hình OSI). e Bởi vì dữ liệu chỉ chứa các thông tin của 4 tang, do đó trong một số cuộc tấn công có liên quan tới thông tin của từng gói tin, các hệ thống phát hiện xâm nhập mang Intrusion Detection System (IDS) không thể xác định được, do đó làm giảm độ chính xác và tăng tỉ lệ cảnh báo giả. e Do các thông tin được trích xuất từ các gói tin, do đó cần một thành phần hỗ trợ để xử lý và tập hợp các thông tin từ gói tin. Thanh phần này các thực hiện các nhiệm vụ như: giải mã gói tin từ gói tin dạng nhị phân, lưu trữ thông tin gói tin.
Do đó, độ phức tạp của cả hệ thống lớn. e Thông tin của một kết nối được tập hợp thông tin từ thông tin gói tin đầu tiên cho tới thong tin của géi tin cuối cùng. Do đó, thời gian của luồng được tao ra tương ứng chuyển tới NIDS bị trễ một khoảng thời gian tính từ thời gian gói tin đầu tiên được ghi nhận. e Các thuật toán mã hoá của payload không ảnh hưởng tới sự hoạt động của NIDS.
e Quá trình thu thập các thông tin của luồng được đảm nhiệm bới các phần mềm NetFlow probe. Do đó thành phần NetFlow probe cần đảm bảo có thể xử lý một lượng lớn các kết nối mà không ảnh hưởng tới độ trễ của hệ thống. e Số lượng luồng dữ liệu được thu thập từ thong tin của các gói tin, do đó số lượng luồng dit liệu ít hơn so với số gói tin. Do đó các NIDS xử lý dữ liệu dựa trên luồng cần ít tài nguyên hơn.
e Do dữ liệu dựa trên luồng chỉ chứa các thông tin cơ bản của kết nối mà không chứa nội dung cụ thể của các gói tin, do đó vấn đề bảo mật được đảm bảo. Dữ liệu dựa trên gói tin e Dữ liệu của gói tin chứa các thông tin của các kết nối từ tầng vật lý (tang thứ 1 trong mô hình OSI) tới tầng ứng dụng (tầng thứ 7 trong mô hình OSI). Do đó NIDS có thể linh hoạt để sử dụng các thông tin này. 11 e Bởi vi dữ liệu chứa toàn bộ thông tin của gói tin, NIDS có thể sử dụng bất kì thông tin của gói tin để phát hiện tấn công, do đó độ chính xác của NIDS được cải thiện và tỉ lệ cảnh báo giả có thể giảm thấp.
e Các thông tin của gói tin có thể chuyển tới NIDS mà không cần phải trải qua các bước lưu trữ của bất cứ thành phần hỗ trợ nào. Do đó hiệu năng của hệ thống được đảm bảo. e Các gói tin lưu thông trong hệ thống được ghi nhận lập tức ở NIDS mà hông cần phải đợi các gói tin liên quan khác khác. e Có thể sử dụng các phương pháp phát hiện tấn công bằng các đặc điểm của các gói tin dựa vào payload của gói tin.
Nhưng lúc này các thuật toán mã oá của gói tin có thể ảnh hưởng tới hiệu năng của NIDS. e Quá trình rút trích thông tin của gói tin có thể thực hiện ở NIDS mà không cần phải sử dụng phần mềm hỗ trợ. e Hệ thống NIDS cần xử lý tất cả các gói tin lưu thong trong hệ thống. Do ó cần sử dụng nhiều tài nguyên hệ thống.
e Do dữ liệu dựa trên gói tin chứa các toàn bộ thông tin của các gói tin, có thể chứa các thông tin nhạy cảm. Do đó vấn đề riêng tư có thể không được ảm bảo. Tổng kết lại, để so sánh cái NIDS hoạt động dit liệu dựa trên gói tin và dit liệu dựa trên luồng, bảng 2.2 tóm tắt các đặc điểm của các NIDS dựa trên hai loại dit liệu khác nhau hoạt động. Đặc điểm Dựa trên gói tin Dựa trên luồng Thông tin sử dụng Header và payload Thông tin của luồng Kích thước dữ liệu Đa số lớn Nhỏ Phương pháp Dựa vào dấu hiệu Dựa vào sự bất thường Kích thước hệ thống mạng Nhỏ Nhỏ và lớn Thiết bị bổ sung Không C6 D6 tré Khong Có Truy cập payload Có Khong Tinh riéng tu Khong dam bao Dam bao Bảng 2.2: Bảng so sánh các đặc điểm của các hệ thống phát hiện xâm nhập mạng dựa trên hai kiểu định dạng dit liệu 12 2.