GVHD : TS.Phạm Văn Tính
Nhóm 2
10/1/2009
1
Phần I : IDS
Khái niệm, phân loại.
Kiến trúc
Triển khai.
Phần II : Snort.
Giới thiệu.
Cài đặt.
Snort rule.
Phần III : Demo
10/1/2009
IDS Snort
2
• Là một hệ thống (phần mềm, phần cứng, hoặc
kết hợp cả hai) để phát hiện các hành vi xâm
nhập bất hợp phát vào mạng.
• Phát hiện các hành động trong tiến trình tấn
công (FootPrinting, Scanning, Sniffer…), cung
cấp thông tin nhận biết và đưa ra cảnh báo.
• Kỹ thuật sử dụng trong IDS có thể là :
signature hoặc anomaly-based , cũng có thể
kết hợp cả hai.
10/1/2009
IDS Snort
3
• Cài đặt như một agent trên một host cụ thể. Phân
tích log của hệ điều hành hoặc các ứng dụng so
sánh các sự kiện với cơ sở dữ liệu để phát hiện
các vi phạm về bảo mật và đưa ra cảnh báo.
• Nếu có vi phạm HIDS ghi nhận lại các hành động
đó, đưa ra cảnh báo, và có thể ngừng hành động
lại trước khi nó xảy ra.
• HIDS có thể dùng để theo dõi log (log monitors),
giám sát tính toàn vẹn (intergrity monitors), phát
hiện xâm nhập ở mức kernel (kernel module)
10/1/2009
IDS Snort
4
• Dùng để bắt các gói tin trong môi trường
mạng, so sánh giữa dữ liệu thu thập được với
cơ sở dữ liệu nhằm phát hiện các dấu hiệu tấn
công.
• Khi có tấn công NIDS sẽ log các gói tin vào cơ
sở dữ liệu, cảnh báo hoặc đưa vào Firewall.
10/1/2009
IDS Snort
5
Host IDS - HIDS
Network - NIDS
HIDS chỉ quan sát các host , hệ điều
hành, hoạt động của ứng dụng (thường
làm những công việc như phân tích log,
kiểm tra tính toàn vẹn…)
NIDS nhìn toàn cảnh luồng dữ liệu trên
mạng (NIDS thường được coi như là
sniffer)
Chỉ phát hiện những cuộc tấn công đã NIDS phát hiện những cuộc tấn công
thành công.
tiềm năng.
Hoạt động hiệu quả trong những môi
Rất khó hoạt động trong những môi
trường chuyển mạch, mã hóa, tốc độ cao. trường này.
10/1/2009
IDS Snort
6
PREPROCESSORS
DETECTION ENGINE
SENSOR
ALERT SYSTEMS
OUTPUT
LOGGING
SYSTEMS
10/1/2009
IDS Snort
7
10/1/2009
IDS Snort
8
10/1/2009
IDS Snort
9
10/1/2009
IDS Snort
10
10/1/2009
IDS Snort
11
10/1/2009
IDS Snort
12
10/1/2009
IDS Snort
13
• Hệ thống IDS (signature-based) cần một cơ sở dữ
liệu đã có sẵn về các kiểu tấn công để nhận biết
các cuộc tấn công có thể xảy ra, dựa vào dấu hiệu
nhận biết nào đó (signatures) cập nhật
signatures mới.
• Bản thân IDS không chống lại các cuộc tấn công,
hay ngăn chặn quá trình khai thác lỗi, mà nó chỉ
dò tìm và đưa ra cảnh báo.
Đặt IDS ở đâu trong hệ thống mạng để mang
lại hiệu quả cao nhất ????
10/1/2009
IDS Snort
14
10/1/2009
IDS Snort
15
Chiến lược triển khai IDS
phụ thuộc vào chính
sách bảo mật và tài
nguyên cần bảo vệ. Càng
nhiều IDS thì đồng nghĩa
với việc hệ thống chậm
đi và chi phí bảo trì sẽ
tăng lên.
10/1/2009
IDS Snort
16
10/1/2009
IDS Snort
17
• Snort là một IDS kiểu signature – based. Chạy
được trên cả Windows và Linux.
• Snort có các tập luật lưu trữ trong các file text,
các luật được nhóm thành các loại khác nhau và
được chứa trong những file riêng cho từng nhóm.
Các file này được chỉ ra trong file cấu hình
snort.conf .
• Snort sẽ đọc các luật lúc khởi động và xây dựng
một cấu trúc dữ liệu hoặc các chuỗi để áp dụng
các luật đó lên dữ liệu thu thập được.
10/1/2009
IDS Snort
18
• Snort được cung cấp 1 tập hợp phong phú các luật
đã được định nghĩa trước, tuy nhiên người dùng
có thể tự định nghĩa và đưa thêm các luật mới
hoặc loại bỏ một số luật không cần thiết.
• Snort là stateful IDS, nó có thể sắp xếp và ghi
nhận các cuộc tấn công dựa trên phân đoạn TCP.
• Snort có thể phát hiện được nhiều loại xâm nhập
như : buffer overflows, stealth port scans, CGI
attacks, SMB probes, OS fingerprinting attempts…
10/1/2009
IDS Snort
19
• Snort có thể cài đặt ở 2 chế độ là inline hoặc
passive.
• Inline: Snort tích hợp với tường lửa để kích
hoạt tường lửa khóa hay drop hoặt các hành
động khác nhằm ngăn chặn cuộc tấn công mà
nó phát hiện.
• Passive: Snort chỉ phát hiện xâm nhập, nghi
log và cảnh báo.
10/1/2009
IDS Snort
20
•
•
•
•
•
•
•
•
•
Apache
PHP
My Sql
BASE
Libpcap
Libnet
Perl
Pear
Snort
10/1/2009
IDS Snort
21
• Sử dụng
rpm –qa | grep <tên gói>
Để kiểm tra xem gói đó đã cài đặt đủ chưa.
• Sử dụng :
yum install <tên gói>
Để cài đặt những gói còn thiếu.
• Đối với những gói .rpm :
rpm –ivh <tên gói .rpm>
10/1/2009
IDS Snort
22
• Sử dụng :
wget <url>
Để download các gói cài đặt từ một trang web.
• Đối với những gói .tar.gz :
tar –xvzf <tên gói.tar.gz>
cd <tên gói>
./configure [option]
make && make install
10/1/2009
IDS Snort
23
• Mặc định đã cài sẵn, sử dụng :
rpm –qa | grep http
httpd-manual-2.2.11-2.fc10.i386
httpd-tools-2.2.11-2.fc10.i386
httpunit-1.6.2-2.fc10.noarch
httpd-2.2.11-2.fc10.i386
mod_ssl-2.2.11-2.fc10.i386
10/1/2009
IDS Snort
24
• Mặc định cài sẵn:
rpm –qa | grep mysql
mysql-5.0.77-1.fc10.i386
mysql-server-5.0.77-1.fc10.i386
mysql-devel-5.0.77-1.fc10.i386
mysql-libs-5.0.77-1.fc10.i386
php-mysql-5.2.6-5.i386
10/1/2009
IDS Snort
25