Đề tài hệ thống phát hiện và phòng chống xâm nhập snort - Pdf 16

TRUNG TÂM ĐÀO TẠO AN NINH MẠNG ATHENA

oOo

HỆ THỐNG PHÁT HIỆN

PHÒNG CHỐNG XÂM NHẬP

INTRUSION DETECTION
AND PREVENTION SYSTEM

(4) Nhận diện các yếu khuyết của chính sách bảo mật
(5) Ngăn chặn vi phạm chính sách bảo mật
b. Các tính năng chính của hệ IDS/IPS
(1) Lưu giữ thông tin liên quan đến các đối tượng quan sát
(2) Cảnh báo những sự kiện quan trọng liên quan đến đối tượng quan sát
(3) Ngăn chặn các tấn công ( IPS )
(4) Xuất báo cáo

3. Kiến trúc của hệ IDS/IPS
a. Các phương pháp nhận diện
Các hệ thống IDS/IPS thường dùng nhiều phương pháp nhận diện khác nhau, riêng rẽ
hoặc tích hợp nhằm mở rộng và tăng cường độ chính xác nhận diện. Có thể chia làm các
phương pháp nhận diện chính sau:

(1) Nhận diện dựa vào dấu hiệu ( Signature-base detection ):
sử dụng phương pháp so sánh các dấu hiệu c
ủa đối tượng quan sát với các dấu hiệu
của các mối nguy hại đã biết. Phương pháp này có hiệu quả với các mối nguy hại đã
biết nhưng hầu như không có hiệu quả hoặc hiệu quả rất ít đối với các mối nguy hại
chưa biết,các mối nguy hại sử dụng kỹ thuật lẩn tránh ( evasion techniques ), hoặc các
biến thể. Signature-based không thể theo vết và nhận diện tr
ạng thái của các truyền
thông phức tạp.
(2) Nhận diện bất thường ( Abnormaly-base detection ):
so sánh định nghĩa của những hoạt động bình thường và đối tượng quan sát nhằm xác
định các độ lệch. Một hệ IDS/IPS sử dụng phương pháp Anormaly-base detection có
các profiles đặc trưng cho các hành vi được coi là bình thường, được phát triển bằng
cách giám sát các đặc điểm của hoạt động tiêu biểu trong một khoảng thời gian. Sau
khi đã xây dựng được tập các profile này , hệ IDS/IPS sử dụng phương pháp thống kê
để so sánh các đặc điểm của các hoạt động hiện tại với các ngưỡng định bởi profile

lượng và loại hành động thích hợp. Intrusion detection system activities 3
Công tác phòng chống xâm nhập đòi hỏi một sự kết hợp tốt được lựa chọn của "mồi
và bẫy" nhằm điều tra các mối đe dọa, nhiệm vụ chuyển hướng sự chú ý của kẻ xâm
nhập từ các hệ thống cần bảo vệ sang các hệ thống giả lập là nhiệm vụ của 1 dạng
IDS riêng biệt ( Honeypot IDS ),cả hai hệ thống thự
c và giả lập được liên tục giám sát
và dữ liệu thu được được kiểm tra cẩn thận (đây là công việc chính của mỗi hệ
IDS/IPS ) để phát hiện các cuộc tấn công có thể (xâm nhập).
Một khi xâm nhập một đã được phát hiện, hệ thống IDS/IPS phát các cảnh báo đến
người quản trị về sự kiện này. Bước tiếp theo được thực hiện, hoặc bởi các quản trị
viên hoặc bởi chính hệ thống IDS/IPS , bằng cách áp dụng các biện pháp đối phó
(chấm dứt phiên làm việc, sao lưu hệ thống, định tuyến các kết nối đến Honeypot IDS
hoặc sử dụng các cơ sở hạ tầng pháp lý v.v) – tùy thuộc vào chính sách an ninh của
mỗi tổ chức Intrusion detection system infrastructure

Hệ thống IDS/IPS là một thành phần của chính sách bảo mật. Trong số các nhiệm vụ IDS
khác nhau, nhận dạng kẻ xâm nhập là một trong những nhiệm vụ cơ bản. Nó có thể hữu ích
trong các nghiên cứu giám định sự cố và tiến hành cài đặt các bản patches thích hợp để cho
phép phát hiện các cuộc tấn công trong tương lai nhắm vào mục tiêu cụ thể

c. Cấu trúc & kiến trúc của hệ IDS/IPS

chuyển giữa các thành phần của hệ thống

Sensor được tích hợp với các thành phần chịu trách nhiệm thu thập dữ liệu - một
event generator. Dựa vào các chính sách tạo sự kiện nó xác định chế độ lọc thông tin
thông báo sự kiện. Các event generator (hệ điều hành, mạng, ứng dụng) tạo ra một
chính sách nhất quán tập các sự kiện có thể là log hoặc audit của các sự kiện của hệ
thống, hoặc các gói tin. Điều này, thiết lập cùng với các thông tin chính sách có thể
được lưu trữ hoặc là trong hệ thống bảo vệ hoặc bên ngoài. Trong những trường hợp
nhất định, dữ liệu không được lưu trữ mà được chuyển trực tiếp đến các phân tích (
thông thường áp dụng với các gói packet ).
Các thành phần chính của 1 hệ IDS/IPS

5

Các hệ thống IDS/IPS có thể được triển khai theo 2 hướng là tập trung và phân tán.
Một ví dụ cụ thể cho hướng triển khai tập trung là tích hợp IDS/IPS cùng với các
thành phần an ninh khác như firewall. Triển khai phân tán ( distributed IDS ) bao
gồm nhiều hệ IDS/IPS trong 1 hệ thống mạng lớn, được kết nối với nhau nhằm nâng
cao khả năng nhận diện chính xác xâm nhập và đưa ra phản ứng thích hợp

II. Phân loại IDS/IPS
Phân loại các hệ IDS/IPS

1. Host-based IDS/IPS

(a) Phân tích mã ( phân tích hành vi mã, nhận diện buffer-overflow, giám sát hàm gọi
hệ thống, giám sát danh sách ứng dụng và hàm thư viện )
(b) Phân tích và lọc lưu lượng mạng
(c) Giám sát filesystem ( kiểm tra tính toàn vẹn,thuộc tính,truy cập của file )
(d) Phân tích log
(e) Giám sát cấu hình mạng 7
(3) Khả năng ngăn chặn
(a) Phân tích mã: ngăn chặn thực thi mã độc
(b) Phân tích và lọc lưu lượng mạng: ngăn chặn truy cập, lưu mã độc, chặn các dịch
vụ hoặc giao thức không được phép
(c) Giám sát filesystem: ngăn chặn việc truy cập, thay đổi filesystem
(4) Các khả năng bảo vệ khác: ngăn chặn truy cập đến các removeable-media, củng cố
bảo mật cho host, giám sát trạng thái các tiến trình…

Các sản phẩm đại diện : Tripware, OSSEC, BroIDS, ISS, Samhain, Prelude-LML,Snort

2. Network-bases IDS/IPS Mô hình vị trí của NIDS/IPS trong 1 hệ thống mạng

Thường dùng để giám sát, phân tích hoạt động hệ thống mạng trong 1 segment, phân tích
mạng, các giao thức ứng dụng từ đó nhận diện các hoạt động khả nghi. Thường được
triển khai ở các biên mạng ( network border ).
Hệ thống NIDS/IPS thường được triển khai trong 1 đoạn / mạng con riêng phục vụ cho
mục đích quản trị hệ thống ( management network ), trong trường hợp không có mạ
ng

hoặc Mirror port ), Network tap hoặc IDS loadbalancer.

Mô hình triển khai Sensor kiểu thụ động

9
Hệ thống NIDS/IPS cung cấp các khả năng về bảo mật sau:
(1) Khả năng thu thập thông tin
(a) Nhận dạng host
(b) Nhận dạng hệ điều hành
(c) Nhận dạng ứng dụng
(d) Nhận dạng đặc điểm mạng
(2) Khả năng ghi log
(3) Khả năng nhận diện
(a) Hoạt động thăm dò và t
ấn công trên các lớp ứng dụng,vận chuyển và mạng
(b) Các dịch vụ ứng dụng không mong đợi ( unexpected application services )
(c) Vi phạm chính sách ( policy violations )
(4) Khả năng ngăn chặn
(a) Kiểu thụ động: ngắt phiên TCP hiện tại
(b) Kiểu thẳng hàng: thực hiện tác vụ firewall thẳng hàng, điều tiết băng thông sử
dụng, loại bỏ các nội dung gây hại
(c) Ngoài ra chức năng ng
ăn chặn còn có thể thay đổi cấu hình của 1 số thiết bị bảo
mật cũng như thực thi các ứng dụng thứ 3 hoặc các script.

Lưu ý khi triển khai NIDS/IPS: khi triển khai các hệ NIDS/IPS, 1 trong những điểm cần
lưu ý là phải triển khai các Sensor ở dạng ẩn ( Stealth mode ). Trong dạng này, các
interface của Sensor không được gán địa chỉ IP ( trừ interface quản lý ) để tránh việc khởi
tạo kết nối từ các host khác nhằm ẩn Sensor khỏi sự phát hiện của kẻ tấn công.



Trong thực tế, NIDS/IPS thường được sử dụng tại biên mạng nhằm phát hiện các dấu
hiệu tấn công và hạn chế các tấn công này ở mức network. Đối với những máy chủ hoặc
máy client quan trọng, việc bổ sung HIDS cho các máy này là cần thiết để tăng cường
khả năng bảo mật khi kết hợp với các hệ NIDS trong cùng hệ thống.

Các sản phẩm đại diện : Snort, ISS, Juniper IDS, Tipping Point IDS, Trustware ipAgent,
Cisco IPS, Reflex Security

3. Wireless IDS/IPS

Thường được triển khai trong tầm phủ sóng wireless của hệ thống nhằm giám sát,phân
tích các protocol wireess để nhận diện các hoạt động khả nghi.
Sự khác biệt lớn nhất giữa NIDS/IPS và Wireless IDS/IPS nằm ở việc NIDS/IPS có thể
giám sát tất cả các packet trong mạng thì Wireless IDS/IPS giám sát bằng cách lấy mẫu
lưu lượng mạng.
Sensor trong hệ thống Wireless IDS/IPS sử dụng 1 kỹ thuật gọi là quét kênh ( channel
scanning ), nghĩa là thường xuyên đổi kênh giám sát. Để hỗ trợ cho việc giám sát hiệu
quả, các Sensor có thể được trang bị nhiều antenna thu phát công suất cao.

Wireless Sensor thường gặp dưới 3 hình thức là

Chuyên biệt ( Dedicated ) :
thường ở dạng thụ động, được vận hành dưới dạng giám sát tần số phát ( radio frequency
monitoring mode ), được triển khai theo 2 dạng là cố định ( thiết bị ) và di động ( phần
mềm hoặc thiết bị ).

Tích hợp trong Access Point

Tích hợp trong Wireless switch

nhận diện bằng phương pháp đo tam giác ( triangulation ) dựa vào mức tín hiệu từ
mối đe dọa đến Sensor và từ đó tính ra được vị trí tương đối của mối đe dọa đối với
mỗi Sensor.
(5) Khả năng ngăn chặn ( ngắt kết nối wireless, tác động đến switch để chặn kết nối từ
Access Point hoặc Station nghi ngờ là nguồn tấn công ).

Tuy nhiên, cũng như mạng Wireless, Wireless IDS/IPS cũng rất nhạy cảm với các dạng
tấn công từ chối dịch vụ cũng như các tấn công sử dụng kỹ thuật lẩn tránh ( evasion
techniques ).

Các sản phẩm đại diện : WIDZ, AirMagnet, AirDefense, Snort-Wireless…

4. Network behavior Analysis system ( NBAS )

Là 1 dạng NIDS/IPS được triển khai trong hệ thống mạng nhằm nhận diện các threats tạo
ra các luồng traffic bất thường trong hệ thống ( DDoS, malwares… ). Thường được dùng
để giám sát luồng traffic trong hệ thống nội bộ cũng như
có thể giám sát luồng traffic
giữa hệ thống trong và các hệ thống ngoài. 12

Mô hình triển khai NBAS

Khác biệt giữa NBAS và NIDS/IPS ở chỗ NBAS phân tích lưu lượng mạng hoặc các
thống kê trên lưu lượng mạng để nhận diện các luồng lưu lượng bất thường.

Hệ thống NBAS có thể được triển khai dưới 2 dạng là thụ động và thẳng hàng. Với kiểu
triển khai thụ động, được triển khai tại các vị trí cần giám sát như ranh giới mạng, các

kết hợp với các cơ chế cảnh báo syslog, tập tin người dùng chỉ định, Unix socket hoặc
Winpopup message.
Snort có thể sử dụng với 3 kiểu chính :
- Packet sniffer như tcpdump
- Packet logger
- Hệ thống phát hiện và phòng chống xâm nhập hoàn chỉnh.

2. Chuẩn bị môi trường ( system prerequisites )

Hệ điều hành : Ubuntu Linux 9
Các gói phần mềm hỗ trợ :
MySQL
Libnet 1.0.2a
Libpcap 0.8
BASE 1.4.4
Barnyard2
Apache

3. Cài đặt Snort ( Installing Snort )

Sau khi cài đặt xong hệ điều hành,giả sử ta tạo 1 user tên là ids_usr và login. Mở CLI, login
as root user

Sudo bash

Việc đăng nhập root user nhằm mục đích thuận lợi cho quá trình cài đặt, không phải dùng
lệnh sudo, cũng như dễ dàng truy cập các thư mục hệ thống.

14
Cài đặt các gói phần mềm hỗ trợ :

- ADOdb là 1 tiện ích trừu tượng hóa cơ sở dữ liệu, cho phép nhiều kiểu tương tác giữa
PHP và cơ sở dữ liệu. Download ADOdb 5.10 tại :
http://sourceforge.net/projects/adodb/files/

- Đăng ký làm thành viên của Snort, sau đó download gói rules cho Snort ở đây :
http://www.snort.org/snort-rules
. Lưu ý là có 2 gói rules, 1 gói dành cho người dùng trả
tiền ( Subscription release ) và 1 gói miễn phí cho người dùng đăng ký ( registered-user
release ). Điểm khác biệt duy nhất là gói miễn phí sẽ được cung cấp sau gói trả phí 30
ngày.

Giả dụ các gói phần mềm được tải về và lưu tại desktop.

Cài đặt Libnet

- cd /usr/local
- tar zxvf /home/ids_usr/Desktop/libnet-1.0.2a.tar.gz
- cd Libnet-1.0.2a
- ./configure && make && make install

15
Cài đặt Snort

Sudo apt-get install snort-mysql

Ghi chú:

1. Trong quá trình cài đặt Snort bằng lệnh apt-get install, lưu ý khi quá trình cài đặt MySQL
xuất hiện, ta phải ghi nhớ mật khẩu root của database
2. Ngoài phương pháp install Snort bằng apt-get install, ta có thể download phiên bản mới
Cấu hình MySQL

MySQL được dùng như Cơ sở dữ liệu cho Snort. Mặc dù nó không cần thiết để chạy Snort
nhưng nó làm cho việc truy vấn các sự kiện một cách dễ dàng hơn và cần thiết để B.A.S.E có
thể hoạt động.
16
- mysql –p
- <nhập DB root password>
- create database snort;
- grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to
snort@localhost;
- SET PASSWORD FOR snort@localhost=PASSWORD(‘password’);
- exit
- cd /usr/local/snort-2.8.5.1/schemas
- mysql -p < create_mysql snort

Kiểm tra lại cấu hình cơ sở dữ liệu để chắc chắn cơ sở dữ liệu cho Snort đã được config đúng

- mysql –p
- < nhập DB root password >
- Show tables;
Xuất hiện 4 hàng dữ liệu ( row )
- Use snort;
- Show tables;
Xuất hiện 16 hàng dữ liệu ( row )

17
- tar zxvf /home/ids_usr/Desktop/base-1.4.4.tar.gz
- gedit /etc/php5/apache2/php.ini
- Tìm dòng error_reporting. Kiểm tra xem nó có được thiết lập :
error_reporting = E_ALL & ~E_NOTICE hay không
- Tìm “Dynamic Extensions”. Thêm dòng này vào bên trong mục đó :
extension=mysql.so
extension=gd.so
- gedit /etc/apache2/apache2.conf
- Tại cuối file,thêm dòng
servername <your servername.domain>
- /etc/init.d/apache2 restart

Mở trình duyệt, tại thanh địa chỉ, nhập vào địa chỉ :
http://localhost/base-1.4.4- Click “continue”
- Đường dẫn đến thư mục chứa ADOdb là /var/www/adodb
- Database Name=snort, Database Host=localhost, Database User=snort, Database
Password=password
- Admin User Name=snort, Password=<password>, Full Name=snort
- Click “Create BASE AG”.
Sau khi kết thúc, nếu có lỗi không ghi được file ta copy nội dung, sau đó dùng
gedit để tạo file và paste nội dung vừa copy vào.

 Gedit /var/www/base-1.4.4/base-conf.php
 Paste và Save

Cấu hình Barnyard2

- gedit /var/log/snort/barnyard.waldo
thêm nội dung sau rồi lưu và đóng file :
/var/log/snort
snort.log
<10 chữ số phía trên>
0

- khởi động barnyard: /usr/local/bin/barnyard2 -c /etc/snort/barnyard2.conf -G
/etc/snort/gen-msg.map -S /etc/snort/sid-msg.map -d /var/log/snort –f snort.log
-w /var/log/snort/barnyard.waldo

4. Thử nghiệm ( post-installed testing )

Khởi động Snort & Barnyard2

- snort -c /etc/snort/snort/conf -i eth0
- /usr/local/bin/barnyard2 -c /etc/snort/barnyard2.conf -d /var/log/snort –f
snort.log -w /var/log/snort/barnyard.waldo

19
Sử dụng GFI để quét thử
Truy cập B.A.S.E để xem cảnh báo
từng tiện ích.
a. Tự động cập nhật Snort rule với Oinkmaster

Oinkmaster là 1 Perl script giúp cập nh
ật và quản lý các rule của Snort, bao gồm các rule
chính thức ( official VRT rule ), các rule được phát triển bởi cộng đồng sử dụng Snort
( community rule ) , các rule được phát triển bởi nhà cung cấp thứ 3….

22
(1) Cài đặt Oinkmaster
Download Oinkmaster tại :
http://oinkmaster.sourceforge.net/download.shtml

Mở CLI :
- tar zxvf /home/ids_usr/Desktop/oinkmaster-2.0.tar.gz
- cd /home/ids_usr/Desktop/oinkmaster-2.0
- cp oinkmaster.pl /usr/local/bin
- cp oinkmaster.conf /usr/local/etc
- cp oinkmaster.1 /usr/local/man/man1

(2) Đăng ký account tại Snort.org sau đó vào Get Rules, chọn Get Oink Code
https://www.snort.org/account/oinkcode

(3) Sửa file Oinkmaster.conf
- gedit oinkmaster.conf
- tìm “url =…” và sửa thành :
http://www.snort.org/pub-
bin/oinkmaster.cgi/5a08f649c16a278e1012e1c/snortrules-snapshot-2.8.tar.gz
( ví dụ oinkcode của ta là 5a08f649c16a278e1012e1c , và Snort là ver. 2.8 )


Là một công cụ được phát triển bởi Drados Ruiu, cho phép duyệt, tổng hợp, quản lý
các cảnh báo từ Snort. Điểm mạnh nhất của Cerebus chính là việc cho phép tổng hợp
báo cáo từ nhiều file cảnh báo, điều này cho phép Admin của các mạng lớn có cái
nhìn tổng quát, và dễ dàng hơn khi phải làm việc với số lượng lớn các cảnh báo

Cerebus có thể download tại :
http://www.dragos.com/cerebus/download.html Ưu điểm :
Nhanh, tương thích nhiều nền tảng khác nhau ( *nix, Win32 ), là công cụ tốt cho
việc tổng hợp và phân loại cảnh báo
Nhược điểm :
Là phần mềm Shareware, không có chức năng quản lý, đòi hỏi phải có kỹ năng
nhất định để sử dụng

o B.A.S.E
Cung cấp giao diện cuối dạng Web cho phép truy vấn và phân tích các cảnh báo được
thu thập bởi Snort.
( Xem thêm trong phần Demo )
Ưu điểm :
Được hỗ trợ từ cộng đồng Snort với tài liệu đầy đủ, tương thích với database và
cung cấp giao diện cuối hoàn chỉnh cho Snort
Khuyết điểm:

Do hoạt động trên nền Web nên tăng attack-surface


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status