Dùng snort như thế nào

NIDS viết tắt cụm từ A network intrusion detection system (NIDS). Mục đích sử dụng NIDS là để bảo vệ hệ thống bên trong, ngăn chặn và cảnh báo các cuộc tấn công từ bên ngoài vả các lệnh remote từ bên ngoài vào hệ thống BO (back office).

II.SNORT LÀ GÌ:

Snort là một NIDS được Martin Roesh phát triển dưới mô hình mã nguồn mở. Tuy Snort miễn phí nhưng nó lại có rất nhiều tính năng tuyệt vời mà không phải sản phẩm thương mại nào cũng có thể có được. Nó xây dựng để phát hiện và chống xâm nhập . Được thiết kế trên module để kiểm tra các gói dữ liệu vào và ra bằng cách tạo các rule phát hiện các gói dữ liệu bất thường. Snort có thể chạy trên nhiều hệ thống nền như Windows, Linux, OpenBSD, FreeBSD, NetBSD, Solaris, HP-UX, AIX, IRIX, MacOS.

Snort còn có thể được cấu hình để chạy như một NIDS. Snort hỗ trợ khả năng hoạt động trên các giao thức sau: Ethernet, 802.11,Token Ring, FDDI, Cisco HDLC, SLIP, PPP, và PF của OpenBSD.

III. CẤU TRÚC CỦA SNORT

Snort bao gồm nhiều thành phần, với mỗi phần có một chức năng riêng.

Các phần chính đó là:

Môđun giải mã gói tin (Packet Decoder)

Môđun tiền xử lý (Preprocessors)

Môđun phát hiện (Detection Engine)

Môđun log và cảnh báo (Logging and Alerting System)

Môđun kết xuất thông tin (Output Module)

Kiến trúc của Snort được mô tả trong hình sau:

Dùng snort như thế nào

1. MODULE GIẢI MÃ GÓI TIN

Snort sử dụng thư viện pcap để bắt mọi gói tin trên mạng lưu thông qua hệ thống. Hình sau mô tả việc một gói tin Ethernet sẽ được giải mã thế nào:

Bắt các gói dữ liệu các nhau của tầng network (ethernet,SLIP, PPP....)

Một gói tin sau khi được giải mã sẽ được đưa tiếp vào môđun tiền xử lý.

2.MODULE TIỀN XỬ LÝ:

Chuẩn bị dữ liệu cho hệ thống phân tích → phát hiện dữ liệu bất thường dựa vào header của gói tin → chống phân mảnh gói tin → giải mã HTTP URI → lắp ráp lại các gói (TCP, UDP ..)

3. MODULE PHÁT HIỆN

Đây là môđun quan trọng nhất của Snort. Nó chịu trách nhiệm phát hiện

các dấu hiệu xâm nhập. Môđun phát hiện sử dụng các rule định nghĩa

trước để so sánh với dữ liệu thu thập được từ đó xác định xem có hợp lệ hay không.

Một môđun phát hiện cũng có khả năng tách các phần của gói tin ra và áp

dụng các luật lên từng phần nào của gói tin đó. Các phần đó có thể là:

• IP header

• Header ở tầng giao vận: TCP, UDP

• Header ở tầng ứng dụng: DNS header, HTTP header, FTP header, ...

• Phần tải của gói tin (bạn cũng có thể áp dụng các luật lên các phần dữ

liệu được truyền đi của gói tin)

chú ý: các rule có chế độ ưu tiên nếu một gói tin bị áp dụng bởi nhiều rule thì nó chỉ thực hiện một rule có thứ tự ưu tiên nhất

4.Logging and Alerting System

Tùy thuộc vào việc môđun Phát hiện có nhận dạng đuợc xâm nhập hay không

mà gói tin có thể bị ghi log hoặc đưa ra cảnh báo. Các file log là các file text dữ

liệu trong đó có thể được ghi dưới nhiều định dạng khác nhau chẳng hạn

tcpdump.

5. MODULE XUẤT THÔNG TIN

Xuất các thông tin ra các định dang khác nhau tùy theo ta cấu hình

III. NGUYÊN TẮC CÁC RULE

Rule có 2 phần phần header và option

hình:

Dùng snort như thế nào

• 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ó 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.

Hành động của luật (Rule Action)

nort thì tất cả các luật sẽ được áp dụng gói tin đó.

• Pass: Hành động này hướng dẫn Snort bỏ qua gói tin này. Hành động này

đóng vai trò quan trọng trong việc tăng cường tốc độ hoạt động của Snort

khi mà ta không muốn áp dụng các kiểm tra trên các gói tin nhất định. Ví

dụ ta sử dụng các bẫy (đặt trên một máy nào đó) để nhử các hacker tấn

công vào thì ta phải cho tất cả các gói tin đi đến được máy đó. Hoặc là

dùng một máy quét để kiểm tra độ an toàn mạng của mình thì ta phải bỏ

qua tất cả các gói tin đến từ máy kiểm tra đó.

• Log: Hành động này dùng để log gói tin. Có thể log vào file hay vào cơ

sở dữ liệu tuỳ thuộc vào nhu cầu của mình.

• Alert: Gửi một thông điệp cảnh báo khi dấu hiệu xâm nhập được phát

hiện. Có nhiều cách để gửi thông điệp như gửi ra file hoặc ra một

Console. Tất nhiên là sau khi gửi thông điệp cảnh báo thì gói tin sẽ được

log lại.

• Activate: sử dụng để tạo ra một cảnh báo và kích hoạt một luật khác kiểm

tra thêm các điều kiện của gói tin.

• Dynamic: chỉ ra đây là luật được gọi bởi các luật khác có hành động là

Activate.

IV. SNORT HOẠT ĐỘNG Ở TẦNG NÀO

Dùng snort như thế nào