1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tiểu luận môn học an toàn thông tin mạng CẤU HÌNH HỆ THỐNG IDS

57 675 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 57
Dung lượng 1,31 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Những rule này có thể được tạo ra hoặc điều chỉnh để sử dụng trong ứng dụng... Rule action là hành động sẽ xảy ra khi một gói tin khớp với các điều kiện định nghĩa trong rule... Rule Act

Trang 1

Nguyễn Tuấn Anh 07520011

Nguyễn Anh Linh 07520193

Trương Đình Huy 07520 151

Ứng dụng TT &ANTT

Trang 2

SNORT FUNDAMENTALS

Snort bao gồm 4 thành phần chính

Packet capture, thực hiện bởi LibPcap hoặc

WinPcap

Preprocessor nhiệm vụ là xem xét các gói tin

trước khi chuyển tới engine phát hiện thật sự

Detection Engine – Tại đây cái rules sẽ được

áp dụng lên các gói tin

Output – xuất ra kết quả, thông báo.

Trang 4

Vài chỉnh sửa cần thiết sau khi cài đặt snort

hiện tại ví dụ 192.168.1.0/24

(lưu ý : $SnortInstallationPath là đường dẫn tới thư mục cài đặt snort, mặc định là C:\Snort)

 include classification.config

=> include SnortInstallationPath\etc\classification.config

 include reference.conf

=> include $SnortInstallationPath\etc\reference.config

Trang 6

 Cài đặt Snort như các chương trình thông thường, cứ để mặc định.

mục $SnortInstallationPath\bin

alert.ids

Trang 7

1 Mở file snort.config và chỉnh sửa (lưu ý, nên lưu lại 1 bản backup đề phòng chỉnh

sửa xong gặp lỗi)

2 Chỉnh sửa 1 số biến

CẤU HÌNH VÀ THỰC THI SNORT

var HOME_NET var HOME_NET địa chỉ mạng

var EXTERNAL_NET var EXTERNAL_NET !$HOME_NET

var include reference var include F:\Snort\etc\reference.config

var RULE_PATH….\rules var RULE_PATH F:\Snort\rules

# include threshold.conf var F:\Snort\etc\threshold.conf

dynamicpreprocessor directory …. dynamicpreprocessor directory F:\Snort\lib\

snort_dynamicpreprocessor

dynamicengine F:\Snort\lib\snort_dynamicengine\

sf_engine.dll

Trang 8

3 Chạy thử snort

Trang 9

 Để thử bắt gói tin ta sẽ sử dụng lệnh sau: snort –ix –v

Trang 10

 Mục đích của việc này là để bạn ghi lại toàn bộ hoạt động để dễ dàng kiểm tra lại khi cần thiết

snort

snort –ix –dev –l \snort\log

LOGGING VỚI SNORT

Trang 11

Đối với một hệ thống IDS, rule là tất cả

Snort sử dụng các rule để kiểm tra chữ ký và

các vi phạm Những rule này có thể được tạo ra hoặc điều chỉnh để sử dụng trong ứng dụng.

Trang 12

Các rule của snort bao gồm 2

phần:

Rule Header: chỉ hành động của rule,

giao thức, hướng xử lý, địa chỉ IP đích

và nguồn, port đích và port nguồn

Các lựa chọn của rule: là các thông

điệp cảnh báo và các đặc tả xác định

gói tin

alert tcp any any -> any 80 (content: “adult”; msg: “Adult Site Access”)

Trang 13

Header của rule:

Rule Action Protocol Source IP Source Port Direction Destination IP Destination Port

1.Định nghĩa rule action.

Rule action là hành động sẽ xảy ra khi một gói tin khớp với các điều kiện định nghĩa trong rule

Trang 14

Rule

Action Mô tả

alert Tạo một cảnh báo với bất kì phương thức nào được định nghĩa Đồng thời cũng log gói tin với phương thức được

định nghĩa bất kì.

log Log gói tin theo định nghĩa.

pass Snort sẽ bỏ qua gói tin này.

activate Tạo một cảnh báo và kích hoạt dynamic rule.

dynamic Duy trì ở trạng thái không sử dụng nếu không có rule khác gọi nó Nếu được gọi, nó hành xử tương tự như

một log rule.

Bảng các rule action:

Trang 15

Alert tcp any any -> [10.0.10.0/24, 10.10.10.0/24] any

(content: “Password”; msg: “Password Tranfer Possible!”;)

Trang 16

4 Xác định port cho snort kiểm tra

cả các port đối với địa chỉ IP

Log tất cả traffic từ tất cả địa chỉ IP trên tất cả các port tới port 23 của mạng 10.0.10.0/24:

Log tcp any any -> 10.0.10.0/24 23

Log tất cả traffic từ tất cả địa chỉ IP trên tất cả các port tới tất cả các port trong khoảng từ 1 tới 1024 tới mọi host trong mạng 10.0.10.0/24:

Log tcp any any -> 10.0.10.0/24 1:1024

Trang 17

Log toàn bộ traffic từ mọi địa chỉ IP có port nhỏ hơn hoặc bằng 1024 tới mọi host trên mạng 10.0.10.0/24 có port lớn hơn hoặc bằng 1024:

Log tcp any :1024 -> 10.0.10.0/24 1024:

Log toàn bộ traffic từ mọi host trừ (ta dùng dấu: “!”) host 172.16.40.50 trên mọi port tới mọi host trong mạng 10.0.10.0/24 trên mọi port:

Log tcp ! 172.16.40.50/32 any -> 10.0.10.0/24 any

Log toàn bộ traffic từ mọi host trên mọi port tới tới mạng 10.0.10.0/24 đang làm việc trên các port ngoài port 23:

Log tcp any any -> 10.0.10.0/24 ! 23

“->” là kí hiệu dùng để xác định hướng kiểm tra gói tin của snort

“<>” để snort kiểm tra gói tin từ cả 2 hướng:

Log tcp 10.0.10.0/2 any <> 172.16.30.0/24 23

Trang 18

Rule

Option

năng của Snort

dấu “;”

“value” VD: msg: “text”.

Trang 19

Keyword Mô tả

msg In ra một thông điệp

ttl Chỉ định điều kiện về giá trị Time To Live của IP header của gói tin mà rule muốn capture.

id Chỉ định điều kiện về giá trị phân mảnh của một IP header cụ thể của gói tin mà rule muốn capture. flags Chỉ định điều kiện về các cờ tcp của gói tin.

ack Chỉ định điều kiện về TCP ack của gói tin

content Chỉ định điều kiện về phần nội dung của gói tin.

Một số keyword thông dụng:

Trang 20

Sử dụng các option

Msg option :

Khi dùng msg option trong một rule, bộ máy log và cảnh báo của snort sẽ được báo là có một thông điệp cần phải được chèn vào một packet dump hay trong một cảnh báo Vd: msg: “thông điệp nào đó”;

Trang 21

Id option làm điều kiện để snort lọc gói tin với một giá

trị chính xác của trường Fagment trong IP header.

Trang 22

Một số rule ví dụ đơn giản:

 Log tất cả các traffic đang cố kết nối tới port telnet:

log tcp any any -> 10.0.10.0/2 23

 Log ICMP traffic tới mạng 10.0.10.0:

log icmp any any -> 10.0.10.0/24 any

 Cho phép tất cả các truy cập web đi qua, không log:

pass tcp any 80 -> any 80

 Tạo một cảnh báo với thông điệp bất kỳ:

alert tcp any any -> any 23 (msg: “Telnet Connection Attemp”;)

 …

Trang 23

Snort rule ID

phân loại nhiều loại Snort rule khác

Trang 24

Có nhiều vùng Snort ID cần nhớ:

<100: để dùng trong tương lai

101 tới 1,000,000: dành cho các

distribution rule của Snort.org

>=1,000,001 : dùng cho các rule nội bộ.

Trang 25

Tạo một ruleset đơn giản

Alert tcp any any -> any any (content: “password”; msg:

“Possible Password Transmitted”; sid: 10000003;)

B2: Lưu file với đường dẫn: C:\snort\

rules\”myrule.rules”

Trang 26

Các tùy chọn Meta Data

Chứa các tính năng chi tiết của các rule

 Msg: được sử dụng để chèn một message cho người dùng đọc

 Sid: được sử dụng để định nghĩa một ID riêng duy nhất cho một rule trong Snort.

 Classtype: được dùng để phân loại các loại sự kiện

 Priority: được sử dụng để định nghĩa các mức độ ưu tiên của sự kiện

 Reference: Được sử dụng để định nghĩa một URL nhằm cung cấp thêm thông tin về sự kiện

 Rev:được sử dụng để định nghĩa số lần được duyệt lại của rule

Trang 27

Classtype Decription Priority

Attempted information leak

An attempted login using a suspicious user name detected Denial-of-service attack

A network client was using an unusual port Generic ICMP event

Detection of a network scan

High High High High High High Medium Medium Medium Medium Low Low

Bảng classtype:

Trang 28

 Một số IDS rule cơ bản đã được thiết lập sẵn và cho phép ta chọn sử dụng trong quá trình cài đặt Snort Ngoài ra có thể download nhiều rule khác tại trang www.snort.org

Ta có thể kiểm tra các rule đã được thiết lập sẵn qua các bước như sau:

B1: Download rule về.

B2: copy các rules file vào thư mục C:\Snort\rules.

B3: Truy cập tới thư mục C:\Snort\rules.

B4: Mở các file rules xem

Các rule được thiết lập sẵn:

Trang 29

 Việc phát hiện kịp thời có thể giúp phần nào ngăn ngừa rất nhiều cuộc tấn công từ chối dịch vụ.

 Dưới đây là ví dụ mẫu:

alert tcp $HOME_NET 12345:123456 -> $EXTERNAL_NET any

(msg: “DDOS Trin00 Attacker to Master default startup

password”);flow: established,to_server;

content:“Betaalmostdone”;reference:arachnids,197;

classtype:attempted-dos;sid: 109, rev: 5;)

Để kiểm tra DDoS rule, ta chỉnh sửa trong file ddos.rules

nằm trong thư mục C:\Snort\rules

Kiểm tra rule DDoS:

Trang 30

 Khi một máy chủ đã bị thâm nhập và đã đoạt được chủ quyền, kẻ tấn công cài vào máy chủ một dịch vụ nào đó để tạo "cổng sau" nhằm mục đích để trở lại máy chủ này một cách dễ dàng và kín đáo khi nào cần.

 Khi thiết lập rule này, ta có thể phát hiện khi backdoor được cài vào hệ thống

 Dưới đây là ví dụ mẫu:

alert tcp $HOME_NET 12345:123456 -> $EXTERNAL_NET any

(msg: “BACKDOOR netbus active”);

flow: from_server,established; content “NetBus”;

Trang 31

 Snort cũng có nhiều rule được thiết kế để kiểm tra các cuộc tấn công web

 Dưới đây là ví dụ mẫu:

alert tcp $EXTERNAL_NET 12345:123456 ->

$EXTERNAL_NET any

(msg: “WEB-attack etc/shadow access”);

flow: to_server,established; content “/etc/shadow”;nocase; classtype:web-application-activity;sid: 109, rev: 5;)

Để kiểm tra DDoS rule, ta chỉnh sửa trong file

backdoor.rules nằm trong thư mục C:\Snort\rules

Kiểm tra rule Web Attack:

Trang 32

Kiểm tra rule dành cho IIS Server

B1: tới thư mục C:\Snort\rules.

B2: Mở file web-iis lên bằng WordPad.

B3: xem một dòng rule nào đó, vd: Code Red exploit ida? trong nội

dung của rule:

alert tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (msg:"WEB-IIS ISAPI ida attempt"; flow:to_server,established;

uricontent:".ida?"; nocase; reference:arachnids,552;

reference:bugtraq,1065; reference:cve,2000-0071;

classtype:web-application-attack; sid:1243; rev:11;)alert tcp $EXTERNAL_NET any ->

$HTTP_SERVERS $HTTP_PORTS (msg:"WEB-IIS ISAPI ida access"; flow:to_server,established; uricontent:".ida"; nocase;

reference:arachnids,552; reference:bugtraq,1065;

reference:cve,2000-0071; classtype:web-application-activity; sid:1242; rev:10;)

 Đây là rule dùng để phát hiện worm Code Red trong hệ thống

WebServer IIS.

Trang 33

CẤU HÌNH SNORT ĐỂ

SỬ DỤNG VỚI CƠ SỞ

DỮLIỆU

Trang 34

Ta phải khai báo database cho Snort và đưa cho nó thông tin cần thiết để tạo kết nối.

Hiệu chỉnh File Snort.Conf

Cấu hình Snort liên kết database

Trang 35

Cài đặt MySQL vào Snort

Trang 36

1 Truy xuất thư mục C:\Snort\schemas, file create_mysql sẽ là file chúng ta sử dụng để xây dựng cơ sở dữ liệu.

Server 5.0 MySQL Command Line Client

database archivedb1;  show database;

Tạo cơ sở dữ liệu Snort:

Trang 37

5 Kiểm tra 2 database mới được liệt kê

Trang 38

6. Để qua database mới gõ connect snortdb1;

7 entersource C:\Snort\schemas\create_mysql

Trang 39

8 Show table; (để hiễn thị bảng trong quá trình

Trang 40

1 Start  All Programs MySQLMySQL Server 5.0

MySQL Command Line Client

3 Mysql> prompt, gõ show database;

snortdb1.* to snort identified by ‘root’;

snortdb1.* to snort@localhost identified by ‘root’;

Tài khoản người dùng MySQL

Trang 41

6 Gõ grant ALL on snortdb1.* to base identified by

Trang 42

12 C:\Snort\mysql folder, open my.ini bằng Wordpad

13 Thay đổi:

‘sql-mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_=

>USER,NO_ENGINE_SUBSTITUTION” bằng

“sql-mode=”NO_AUTO_CREATE_USER,NO_ENGINE_=>SUB STITUTION”

14 Save & close my.ini

15 Restart máy tính.

Trang 43

 Mở command prompt

 C:\Snort\bin

Snort –d –e –v –iX (X để sử dụng card mạng)

 Ta thấy rằng Snort có hiển thị gói tin trên màn

hình Nếu cần kiểm tra traffic mạng thì có thể ping

Trang 44

CÀI ĐẶT IDS TRONG

LINUX

Trang 46

Cài đặt

1 Chép snort vào /snort

2 Đến thư mục soft cd /soft

3 Giải nén snort

tar -zxvf snort-2.8.4.1.tar.gz

cd snort-2.8.4.1

4.Lần lượt thực hiện các sau để cài đặt snort

#./configure with-mysql enable-dynamicplugin

Trang 50

 Tạo một liên kết mềm (symbolic link) của file snort binary đến /usr/sbin/snort

Trang 51

Đặt quyền lại cho file snortd :

chmod 755 /etc/init.d/snortd

chkconfig snortd on

service snortd start

Để khởi động snort ở chế độ debug nếu bạn muốn kiểm tra lỗi:

/snort/snort-2.8.4.1/src/snort -u snort -g

snort -d -c /etc/snort/snort.conf

Trang 52

Quản lý snort bằng webmin

Trang 55

Cài đặt & quản lí cơ sở dữ liệu IDS

Trước tiên ta cần set password cho root trong MySQL

#mysqladmin -u root password 123456

#mysql -p

Tạo password cho tài khoản snort.

mysql> use mysql;

mysql> CREATE USER 'snort'@'localhost' IDENTIFIED BY '123456';

Tạo CSDL cho snort.

mysql> create database snort;

mysql> GRANT CREATE, INSERT, SELECT, DELETE, UPDATE ON snort.* to snort@localhost;

mysql> flush privileges;

mysql> exit

Trang 56

Tạo các table từ

/snort/snort-2.8.4.1/schemas/create_mysql cho

database snort (thư mục giải nén snort)

mysql -u root -p < /snort/snort-2.8.4.1/schemas/create_mysql snort mysql -p

Trang 57

Q&A

Ngày đăng: 08/04/2015, 09:36

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w