CHƯƠNG 2 HỆ THỐNG CẢNH BÁO XÂM NHẬP ID S SNORT
2.3. HỆ THỐNG IDS SNORT
2.3.4. Bộ luật của Snort
Snort chủ yếu là một IDS dựa trên luật, nó sử dụng các luật được lưu trữ trong các file text, có thể được chỉnh sửa bởi người quản trị. Các luật được
nhóm thành các kiểu. Các luật thuộc về mỗi loại được lưu trong các file khác nhau. File cấu hình chính của Snort là snort.conf. Snort đọc những luật này vào lúc khởi tạo và xây dựng cấu trúc dữ liệu cung cấp các luật để nắm bắt dữ liệu.
Cũng giống như virus, hầu hết các hoạt động tấn công hay xâm nhập đều có các dấu hiệu riêng. Hệ thống phát hiện của Snort hoạt động dựa trên
các luật (rules) và các luật này lại được dựa trên các dấu hiệu nhận dạng tấn cơng. Các luật có thể được áp dụng cho tất cả các phần khác nhau của một gói tin dữ liệu .
Một luật có thể được sử dụng để tạo nên một thông điệp cảnh báo, log một thơng điệp hay có thể bỏ qua một gói tin.
a. Cấu trúc luật Snort
Tất cả các Luật của Snort về logic đều gồm 2 phần: Phần Header và
phần Option:
+ Phần Header: chứa thông tin về hành động mà luật đó sẽ thực hiện khi phát hiện ra có sự xâm nhập nằm trong gói tin và nó cũng chứa các tiêu chuẩn
để áp dụng luật với gói tin đó.
+ Phần Option: chứa một thơng điệp cảnh báo và các thông tin về các phần của gói tin dùng để tạo nên cảnh báo. Phần Option chứa các tiêu chuẩn phụ thêm để đối sánh luật với gói tin. Một luật có thể phát hiện được một hay nhiều hoạt động thăm dị hay tấn cơng. Các luật thơng minh có khả năng áp
dụng cho nhiều dấu hiệu xâm nhập.
- Dưới đây là cấu trúc chung của phần Header của một luật Snort:
Hình 2.13. Cấu trúc chung của phần Header của một luật Snort
+ Action: là phần qui định loại hành động nào được thực thi khi các dấu hiệu của gói tin được nhận dạng chính xác bằng luật đó. Thơng thường, các
hành động tạo ra một cảnh báo hoặc log thơng điệp hoặc kích hoạt một luật
khác.
+ Protocol: là phần qui định việc áp dụng luật cho các packet chỉ thuộc một giao thức cụ thể nào đó. Ví dụ như IP, TCP, UDP …
+ Address: là phần địa chỉ nguồn và địa chỉ đích. Các địa chỉ có thể là
một máy đơn, nhiều máy hoặc của một mạng nào đó. Trong hai phần địa chỉ
trên thì một sẽ là địa chỉ nguồn, một sẽ là địa chỉ đích và địa chỉ nào thuộc
loại nào sẽ do phần Direction “->” qui định.
+ Port: xác định các cổng nguồn và đích của một gói tin mà trên đó luật được áp dụng.
+ Direction: phần này sẽ chỉ ra đâu là địa chỉ nguồn, đâu là địa chỉ đích. - Phần Rule Option nằm ngay sau phần Rule Header và được bao bọc
với nhau bằng dấu chấm phẩy ”,”.Nếu nhiều option được sử dụng thì các
option này phải đồng thời được thoã mãn tức là theo logic các option này liên kết với nhau bằng AND.
Mọi option được định nghĩa bằng các từ khố. Nói chung một option
gồm 2 phần: một từ khoá và một tham số, hai phần này phân cách nhau bằng dấu hai chấm “:”
Ví dụ một số luật của Snort:
- alert tcp 192.168.1.0/24 any -> ![192.168.1.0/24] any (content: “GET”; msg: “GET match”;)
- alert udp any any -> 192.168.1.0/24 6838 (msg:”DoS”; content: “Server”; classtype: DoS; priority: 1;)
- alert tcp 192.168.2.0/24 23 -> any any (content: “confidential”; msg: ”Detected confidential”;)
- alert icmp ![192.168.2.0/24, 192.168.8.0/24] any -> any any (msg: “Ping with TTL=100”; ttl: 100;)
b. Các cơ chế hoạt động của Snort
+ Sniffer mode: ở chế độ này snort sẽ lắng nghe và đọc các gói tin trên mạng sau đó sẽ trình bày kết quả trên giao diện hiển thị.
+ Các công cụ sniffer mạng như tcpdump, ethereal, và Tethereal có đầy đủ các đặc tính và phân tích gói tin một cách xuất sắc, tuy nhiên, có lúc ta cần
xem lưu lượng mạng trên bộ cảm biến Snort. Trong trường hợp này, sử dụng Snort như là một sniffer là khả thi. Kết quả xuất của chế độ Snort sniffer hơi khác so với các sniffer dịng lệnh. Nó rất dễ để đọc và ta có thể thấy thích khả năng bắt giữ gói tin nhanh của nó. Một đặc tính hay của chế độ này là việc
tóm tắt lưu lượng mạng khi kết thúc việc bắt giữ gói tin. Thỉnh thoảng, nó có thể là một cơng cụ gỡ rối hữu dụng cho nhà quản trị.
+ Network instruction detect system(NIDS) : đây là chế dộ họat động mạnh mẽ và được áp dụng nhiều nhất, khi họat động ở NIDS mode Snort sẽ
phân tích các gói tin ln chuyển trên mạng và so sánh với các thông tin được
định nghĩa của người dùng để từ đó có những hành động tương ứng như
thông báo cho quản trị mạng khi xảy ra tình huống quét lỗi do các hacker /attacker tiến hành hay cảnh báo virus..
+ Khi được sử dụng như là một NIDS, Snort cung cấp khả năng phát
hiện xâm nhập gần như là thời gian thực. Chúng ta sẽ xem rất nhiều cách mà Snort có thể được sử dụng như là một NIDS và tất cả các tùy chọn cấu hình
có thể.
+ Inline mode: khi triển khai snort trên linux thì chúng ta có thể cấu hình snort để phân tích các gói tin từ iptables thay vì libpcap do đó iptable có thể drop hoặc pass các gói tin theo snort rule.