Thuật toán lọc gói tin

Một phần của tài liệu (Luận văn thạc sĩ) Nghiên cứu kĩ thuật điều tra số trong giám sát an toàn mạng máy tính và ứng dụng (Trang 46 - 49)

6. Ý nghĩa khoa học của đề tài

2.8. Thuật toán lọc gói tin

Lọc gói là quá trình kiểm soát các gói trên một máy tính hoặc mạng bằng cách so sánh mỗi gói tin, cho dù đến hoặc đi, đối với một chính sách bảo mật đƣợc thiết lập trƣớc (các quy tắc hay còn gọi là tập luật). Lọc thƣờng đƣợc thực hiện ở cấp độ mạng của các bộ định tuyến (hoặc một thiết bị chuyên dụng), nhƣng nó cũng có thể đƣợc thực hiện trong nhân của hầu hết các phiên bản của hệ điều hành. Các gói tin có thể đƣợc xét trên một số tiêu chí nhƣ: Địa chỉ nguồn và đích, cổng nguồn và đích, giao diện mạng các gói tin đƣợc nhận vào, hƣớng của gói tin (đến hoặc đi) và các loại giao thức (TCP, UDP hoặc ICMP). Lọc gói tin bao gồm lọc gói tĩnh (Không trạng thái) trong đó việc xử lý mỗi gói tin không phụ thuộc vào các gói tin trƣớc đó đƣợc gửi và nhận trong các kết nối và lọc gói tin động (Trạng thái đầy đủ) trong đó việc xử lý mỗi gói tin phụ thuộc vào các gói tin trƣớc đó đƣợc gửi và nhận trong cùng kết nối. Nhìn chung, lọc gói kiểm tra thông tin tiêu đề của gói tin IP, và trong một số trƣờng hợp giao thức TCP và các giao thức khác. Có thể nói rằng môđun quan trọng nhất trong Wireshark chính là môđun lọc gói tin. Môđun này đƣợc xây dựng dựa trên kỹ thuật lọc gói. Kỹ thuật lọc gói bao gồm kỹ thuật lọc tĩnh và kỹ thuật lọc gói động.

37

Lọc gói tĩnh hay còn gọi là lọc gói không trạng thái (Stateless packet filtering) là một phƣơng pháp lọc nhanh chóng, hiệu quả đối với từng các gói dữ liệu, nhƣng chỉ cho các hoạt động đơn giản. Nếu yêu cầu phải có một kiến thức chi tiết về giao thức hoặc khả năng theo dõi thông tin ngoài tiêu đề (Header) thì phải sử dụng lọc gói động hay còn gọi là lọc gói trạng thái đầy đủ (Stateful packet filtering).

Thuật toán lọc gói tin tổng quát có thể đƣợc đƣợc miêu tả qua lƣu đồ sau:

Hình 10: Lưu đồ thuật toán lọc gói tin.

Phân tích lƣu đồ thuật toán lọc gói tin

38

Đầu ra: Thông báo đã chuyển tiếp gói tin hay hủy bỏ gói tin

Bƣớc 1: Nhận gói tin IP hoàn chỉnh, tức gói tin không lỗi và đã ghép mảnh thành công

Bƣớc 2: Đọc các thông tin trong phần header của gói

Bƣớc 3: Trích các thông tin từ gói tin bao gồm: Địa chỉ nguồn, địa chỉ đích, cổng nguồn, cổng đích, giao thức…

Bƣớc 4: Tìm các quy tắc hay tập luật tƣơng ứng

Bƣớc 5: Kiểm tra xem gói tin có hợp với quy tắc hay luật không Bƣớc 6: Nếu phù hợp thực hiện chuyển tiếp gói tin. STOP

Bƣớc 7: Trái lại, kiểm tra xem gói tin có hợp với quy tắc hay luật nào khác không

Bƣớc 8: Nếu có, quay lại Bƣớc 4

Bƣớc 9: Trái lại, thực hiện hủy bỏ gói tin. STOP

PROCEDURE LocGoiTin [ IP packet]

1. Đọc các thông tin trong phần header của gói tin đầu vào

2. Trích các thông tin từ gói tin bao gồm: Địa chỉ nguồn, địa

chỉ đích, cổng nguồn, cổng đích, giao thức… 3. DO

4. #tìm trong bảng luật

IF gói tin hợp với quy tắc hay luật THEN

5. Thực hiện chuyển tiếp gói tin 6. BREAK

7. ELSE

8. IF gói tin có hợp với quy tắc hay luật nào khác THEN

9. CONTINUE

10. ELSE

11. Thực hiện hủy bỏ gói tin 12. BREAK

13. FI

14. FI

15. OD

39

Để có thể thực hiện việc lọc gói tin đầy đủ và chính xác, việc tạo ra, duy trì, cập nhật hay xóa một tập quy tắc hay luật trong bảng là vô cùng quan trọng và phức tạp.

Một phần của tài liệu (Luận văn thạc sĩ) Nghiên cứu kĩ thuật điều tra số trong giám sát an toàn mạng máy tính và ứng dụng (Trang 46 - 49)

Tải bản đầy đủ (PDF)

(80 trang)