1. Trang chủ
  2. » Giáo Dục - Đào Tạo

(Tiểu luận) thực tập cơ sở bài thực hành 6 cài đặt cấu hình hids nids

16 13 0

Đ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

Tiêu đề Cài Đặt Cấu Hình HIDS/NIDS
Tác giả Lưu Văn Hưng
Người hướng dẫn Nguyễn Ngọc Điệp
Trường học Học Viện Công Nghệ Bưu Chính Viễn Thông
Chuyên ngành Công Nghệ Thông Tin
Thể loại tiểu luận
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 16
Dung lượng 8,44 MB

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

Nội dung

• Nhiệm vụ chính của các hệ thống IDS/IPS bao gồm: o Giám sát lưu lượng mạng hoặc các hành vi trên một hệ thống để nhận dạng các dấu hiệu của tấn công, xâm nhập; o Khi phát hiện các hành

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN

HỌC PHẦN: THỰC TẬP CƠ SỞ

BÀI THỰC HÀNH 6:

Cài đặt cấu hình HIDS/NIDS

Hà Nội, 2023

Trang 2

1 MỤC ĐÍCH

- Luyện tập việc cài đặt và vận hành các hệ thống phát hiện xâm nhập cho host (HIDS) và cho mạng (NIDS)

- Luyện tập việc tạo và chỉnh sửa các luật phát hiện tấn công, xâm nhập cho các hệ thống phát hiện xâm nhập thông dụng

2 NỘI DUNG LÝ THUYẾT

a) Tìm hiểu khái quát về các hệ thống phát hiện tấn công, xâm nhập, phân loại các hệ thống phát hiện xâm nhập, các kỹ thuật phát hiện xâm nhập

- Khái quát:

Các hệ thống phát hiện, ngăn chặn tấn công, xâm nhập (IDS/IPS) là một lớp phòng vệ quan trọng trong các lớp giải pháp đảm bảo an toàn cho hệ thống thông tin và mạng theo mô hình phòng thủ có chiều sâu (defence in depth) IDS (Intrusion Detection System) là hệ thống phát hiện tấn công, xâm nhập và IPS (Intrusion Prevention System) là hệ thống ngăn chặn

Trang 3

tấn công, xâm nhập Các hệ thống IDS/IPS có thể được đặt trước hoặc sau tường lửa trong

mô hình mạng, tùy theo mục đích sử dụng Hình 5.18 cung cấp vị trí các hệ thống IDS và IPS trong sơ đồ mạng, trong đó IDS thường được kết nối vào bộ switch phía sau tường lửa, còn IPS được ghép vào giữa đường truyền từ cổng mạng, phía sau tường lửa

• Nhiệm vụ chính của các hệ thống IDS/IPS bao gồm:

o Giám sát lưu lượng mạng hoặc các hành vi trên một hệ thống để nhận dạng các dấu hiệu của tấn công, xâm nhập;

o Khi phát hiện các hành vi tấn công, xâm nhập, thì ghi logs các hành vi này cho phân tích bổ sung sau này;

o Ngăn chặn hoặc dừng các hành vi tấn công, xâm nhập; o Gửi thông báo cho người quản trị về các các hành vi tấn công, xâm nhập đã phát hiện được

• Về cơ bản IPS và IDS giống nhau về chức năng giám sát lưu lượng mạng hoặc các sự kiện trong hệ thống Tuy nhiên, IPS thường được đặt giữa đường truyền thông và có thể chủ động ngăn chặn các tấn công, xâm nhập bị phát hiện Trong khi đó, IDS thường được kết nối vào các bộ định tuyến, switch, card mạng và chủ yếu làm nhiệm vụ giám sát và cảnh bảo, không có khả năng chủ động ngăn chặn tấn công, xâm nhập

- Phân loại:

Trang 5

Có 2 phương pháp phân loại chính các hệ thống IDS và IPS, gồm (1) phân loại theo nguồn dữ liệu và (2) phân loại theo phương pháp phân tích dữ liệu

Theo nguồn dữ liệu, có 2 loại hệ thống phát hiện xâm nhập:

• Hệ thống phát hiện xâm nhập mạng (NIDS – Network-based IDS):

NIDS phân tích lưu lượng mạng để phát hiện tấn công, xâm nhập cho cả mạng hoặc một phần mạng

• Hệ thống phát hiện xâm nhập cho host (HIDS – Host-based IDS): HIDS phân tích các sự kiện xảy ra trong hệ thống/dịch vụ để phát hiện tấn công, xâm nhập cho hệ thống đó Hình 5.20 minh họa một sơ đồ mạng, trong đó sử dụng NIDS để giám sát lưu lượng tại cổng mạng và HIDS để giám sát các host thông qua các IDS agent Một trạm quản lý

(Management station) được thiết lập để thu nhập các thông tin từ các NIDS và HIDS

để xử lý và đưa ra quyết định cuối cùng

Theo phương pháp phân tích dữ liệu, có 2 kỹ thuật phân tích chính, gồm (1) phát hiện xâm nhập dựa trên chữ ký, hoặc phát hiện sự lạm dụng (Signature-based / misuse intrusion detection) và (2) phát hiện xâm nhập dựa trên các bất thường (Anomaly intrusion detection)

b) Tìm hiểu về kiến trúc và tính năng của một số hệ thống phát hiện tấn công, xâm nhập, như Snort, Suricata, Zeek, OSSEC, Wazuh

- Phát hiện xâm nhập dựa trên chữ ký:

• Phát hiện xâm nhập dựa trên chữ ký trước hết cần xây dựng cơ sở dữ liệu các chữ ký, hoặc các dấu hiệu của các loại tấn công, xâm nhập đã biết Hầu hết các chữ ký, dấu hiệu được nhận dạng và mã hóa thủ công và dạng biểu diễn thường gặp là các luật phát hiện (Detection rule)

• Bước tiếp theo là sử dụng cơ sở dữ liệu các chữ ký để giám sát các hành vi của hệ thống, hoặc mạng, và cảnh báo nếu phát hiện chữ ký của tấn công, xâm nhập Ưu điểm lớn nhất của phát hiện xâm nhập dựa trên chữ ký là có khả năng phát hiện các tấn công, xâm nhập

đã biết một cách hiệu quả

Ngoài ra, phương pháp này cho tốc độ xử lý cao, đồng thời yêu cầu tài nguyên tính toán tương đối thấp Nhờ vậy, các hệ thống phát hiện xâm nhập dựa trên chữ ký được ứng dụng rộng rãi trong thực tế Tuy nhiên, nhược điểm chính của phương pháp này là không có khả năng phát hiện các tấn công, xâm nhập mới, do chữ ký của chúng chưa tồn tại trong cơ sở

dữ liệu các chữ ký Hơn nữa, nó cũng đòi hỏi nhiều công sức xây dựng và cập nhật cơ sở

dữ liệu chữ ký, dấu hiệu của các tấn công, xâm nhập

Trang 6

• Phát hiện xâm nhập dựa trên bất thường dựa trên giả thiết: các hành vi tấn công, xâm nhập thường có quan hệ chặt chẽ với các hành vi bất thường Quá trình xây dựng và triển khai một hệ thống phát hiện xâm nhập dựa trên bất thường gồm 2 giai đoạn: (1) huấn luyện và (2) phát hiện Trong giai đoạn huấn luyện, hồ sơ (profile) của đối tượng trong chế độ làm việc bình thường được xây dựng Để thực hiện giai đoạn huấn luyện này, cần giám sát đối tượng trong một khoảng thời gian đủ dài để thu thập được đầy đủ dữ liệu mô tả các hành vi của đối tượng trong điều kiện bình thường làm dữ liệu huấn luyện Tiếp theo, thực hiện huấn luyện dữ liệu để xây dựng mô hình phát hiện, hay hồ sơ của đối tượng Trong giai đoạn phát hiện, thực hiện giám sát hành vi hiện tại của hệ thống và cảnh báo nếu có khác biệt rõ nét giữa hành vi hiện tại và các hành vi lưu trong hồ sơ của đối tượng

• Ưu điểm của phát hiện xâm nhập dựa trên bất thường là có tiềm năng phát hiện các loại tấn công, xâm nhập mới mà không yêu cầu biết trước thông tin về chúng Tuy nhiên, phương pháp này có tỷ lệ cảnh báo sai tương đối cao so với phương pháp phát hiện dựa trên chữ

ký Điều này làm giảm khả năng ứng dụng thực tế của phát hiện xâm nhập dựa trên bất thường Ngoài ra, nó cũng tiêu tốn nhiều tài nguyên hệ thống cho việc xây dựng hồ sơ đối tượng và phân tích hành vi hiện tại

- Snort: Snort là phần mềm IDS được phát triển bởi Martin Roesh dưới dạng mã nguồn mở Snort ban đầu được xây dựng trên nền Unix nhưng sau đó phát triển sang các nền tảng khác Snort được đánh giá rất cao về khả năng phát hiện xâm nhập Tuy snort miễn phí nhưng nó lại

có rất nhiều tính năng tuyệt vời Với kiến trúc kiểu module, người dùng có thể tự tăng cường tính năng cho hệ thống Snort của mình Snort có thể chạy trên nhiều hệ thống như Windows, Linux, OpenBSD, FreeBSD, Solaris … Bên cạnh việc có thể hoạt động như một ứng dụng bắt gói tin thông thường, Snort còn được cấu hình để chạy như một NIDS

• Kiến trúc của Snort: Snort bao gồm 5 modul

+ Module giải mã gói tin

+ Module tiền xử lý

+ Module phát hiện

+ Module log và cảnh báo

+ Module kết xuất thông tin

Trang 7

Discover more

from:

LVK1911

Document continues below

Thực tập cơ sở

Học viện Công ng…

148 documents

Go to course

Bài thực hành 2 - Lê Văn Kiên -…

Thực tập

23

De giua ki 1 toan 10 nam 2022 2023…

Thực tập

3

bao cao bai tap lon windows va linux

Thực tập

19

Bài thực hành 9 - Lê Văn Kiên -…

Thực tập

12

Bài thực hành 3 - Lê Văn Kiên -…

16

Trang 8

Khi Snort hoạt động, nó sẽ lắng nghe tất cả các gói tin nào di chuyển qua nó Các gói tin sau khi bị bắt sẽ được đưa vào module giải mã Tiếp theo sẽ vào module tiền xử lý và rồi module phát hiện Tại đây tùy vào việc có phát hiện được xâm nhập hay không mà gói tin có thể bỏ qua để lưu thông tin tiếp hoặc đưa vào module Log và cảnh báo để xử lý Khi các cảnh báo được xác định, Module kết xuất thông tin sẽ thực hiện việc đưa ra cảnh báo theo đúng định dạng mong muốn

• Module giải mã gói tin:

Module giải mã gói tin bắt mọi gói tin trên mạng lưu thông qua hệ thống 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 module tiền xử lý

Module tiền xử lý: Thực hiện 3 nhiệm vụ chính:

Kết hợp lại các gói tin: Khi một dữ liệu lớn được gửi đi, thông tin sẽ không đóng gói toàn bộ vào một gói tin mà thực hiện phân mảnh, chia thành nhiều gói tin rồi mới gửi đi Khi Snort nhận được các gói tin này, nó phải thực hiện kết nối lại để có gói tin ban đầu Module tiền xử lý giúp Agent có thể hiểu được các phiên làm việc khác nhau;

• Giải mã và chuẩn hóa giao thức (decode/normalize): công việc phát hiện xâm nhập dựa

trên dấu hiệu nhận dạng nhiều khi thất bại khi kiểm tra các giao thức có dữ liệu có thể được biểu diễn dưới nhiều dạng khác nhau Phát hiện các xâm nhập bất thường

(nonrule/anormal): xử lý các xâm nhập không thể hoặc rất khó phát hiện bằng các luật

thông thường

• Module phát hiện:

Đây là module quan trọng nhất, nó chịu trách nhiệm phát hiện các dấu hiệu xâm nhập Module phát hiện sử dụng các luật được định nghĩa trước để so sánh với dữ liệu thu thập được, từ đó xác định xem có xâm nhập xảy ra hay không

Thực tập

B18DCQT017 Báo-cáo-thực-tập-tốt-…

Thực tập

46

Trang 9

Một vấn đề quan trọng đối với module phát hiện và vấn đề thời gian xử lý gói tin: một IDS thường nhận rất nhiều gói tin và bản thân nó cũng có rất nhiều luật xử lý Khi lưu lượng mạng quá lớn có thể xảy ra việc bỏ sót hoặc không phản hồi đúng lúc Khả năng xử

lý của module phát hiện phụ thuộc vào nhiều yếu tố: số lượng các luật, tốc độ hệ thống, băng thông mạng

Một module phát hiện có khả năng tách các phần của gói tin ra và áp dụng luật lên từng phần của gói tin:

+ IP header

+ Header ở tầng transport: TCP, UDP

+ Header ở tầng application: DNS, HTTP, FTP … + Phần tải

của gói tin

• Module log và cảnh báo:

Tùy thuộc vào module phát hiện có nhận dạng được xâm nhập hay không mà gói tin

có thể bị ghi log hay đưa ra cảnh báo Các file log là các file dữ liệu có thể ghi dưới nhiều định dạng khác nhau

- Suricata: Suricata là giải pháp IDS/IPS mã nguồn mở hiệu quả cho các hệ thống mạng chưa được đầu tư các giải pháp IDS/IPS thương mại Nó được xây dựng từ các thành phần khác nhau và khả năng hoạt động của nó tùy thuộc vào cách thức cấu hình, cài đặt cho hệ thống Ở chế độ mặc định được xem là cơ chế hoạt động tương đối tối ưu cho việc phát hiện các dạng tấn công mạng

- Zeek: Zeek được trình bày như một công cụ để hỗ trợ quản lý ứng phó sự cố an ninh Nó hoạt động bằng cách bổ sung dựa trên chữ ký các công cụ để tìm và theo dõi các sự kiện mạng phức tạp Nó được đặc trưng bằng cách cung cấp phản hồi nhanh, ngoài việc sử dụng nhiều luồng và giao thức Nó không chỉ giúp xác định các sự kiện bảo mật, mà còn nhằm mục đích tạo điều kiện khắc phục sự cố

- OSSEC: OSSEC là hệ thống phát hiện xâm nhập dựa trên host (HIDS) dựa trên log mã nguồn mở, miễn phí, đa nền tảng có thể mở rộng và có nhiều cơ chế bảo mật khác nhau OSSEC có thể phát hiện xâm nhập bằng cả chữ ký hoặc dấu hiệu bất thường Các dấu hiệu bình thường và bất thường được mô tả trong bộ luật của OSSEC OSSEC có một công cụ phân tích và tương quan mạnh mẽ, tích hợp giám sát và phân tích log, kiểm tra tính toàn vẹn của file, kiểm tra registry của Windows, thực thi chính sách tập trung, giám sát chính sách, phát hiện rootkit, cảnh báo thời gian thực và phản ứng một cách chủ động cuộc tấn công đang diễn ra Các hành động này cũng có thể được định nghĩa trước bằng luật trong OSSEC để

Trang 10

OSSEC hoạt động theo ý muốn của người quản trị Ngoài việc được triển khai như một HIDS,

nó thường được sử dụng như một công cụ phân tích log, theo dõi và phân tích các bản ghi lại, IDS, các máy chủ Web và các bản ghi xác thực OSSEC chạy trên hầu hết

các hệ điều hành, bao gồm Linux, OpenBSD, FreeBSD, Mac OS X, Sun Solaris và Microsoft Windows OSSEC còn có thể được tích hợp trong trong các hệ thống bảo mật lớn hơn là SIEM (Security

information and event management) OSSEC chỉ có thể cài đặt trên Windows với tư cách là một agent

3 THỰC HÀNH

Thực hành cài đặt snort

- Đổi tên máy thành <Mã SV-Tên SV>-Snort

Thực hành cài đặt snort

- Đổi tên máy thành <Mã SV-Tên SV>-Snort

Thực hành cài đặt snort

-Đổi tên máy thành <Mã SV-Tên SV>-Snort

- Dùng câu lệnh: sudo apt install snort ( để cài đặt snort )

Trang 11

- Kiểm tra snort cài đặt thành công chưa

-Dùng câu lệnh: sudo apt install snort ( để cài đặt snort )

-Kiểm tra snort cài đặt thành công chưa

-Kiểm tra snort đang hoạt động không

Bước 3: Tạo các luật Snort để phát hiện 3 dạng rà quét, tấn công hệ thống:

+ Phát hiện các gói tin ping từ bất kỳ một máy nào gửi đến máy chạy Snort Hiển thị thông điệp

khi phát hiện: “Mã SV-Tên SV-Snort phát hiện có các gói Ping gửi đến.”

+ Phát hiện các gói tin rà quét từ bất kỳ một máy nào gửi đến máy chạy Snort trên cổng 80 Hiển

thị thông điệp khi phát hiện: “Mã SV-Tên SV-Snort phát hiện có các gói tin rà quét trên cổng 80.”

Trang 12

+ Phát hiện tấn công TCP SYN Flood từ bất kỳ một máy nào gửi đến máy chạy Snort Hiển thị thông điệp khi phát hiện: “Mã SV-Tên SV-Snort phát hiện đang bị tấn công TCP SYN Flood.”

- Mở file config:

sudo nano /etc/snort/rules/local.rules

- Thêm các config:

#Rule1

alert icmp any any -> $HOME_NET any (msg:"B20DCAT088-LuuVanHung -Snort phat hien cac goi ping gui den";sid:10000002; rev:001;)

#Rule2

alert tcp any any -> $HOME_NET 80 (msg:" B20DCAT088-LuuVanHung -Snort phat hien cac goi tin ra quet port 80" ;sid:10000003; rev:001;)

#Rule3

alert tcp any any -> $HOME_NET any (msg:" B20DCAT088-LuuVanHung -Snort phat hien dang

bi tan cong TCP SYN Flood" ;flags:S ; sid:10000004;rev:001;)

Bước 4: Thực thi tấn công và phát hiện sử dụng Snort

sudo snort -A console -c /etc/snort/snort.conf

Trang 13

Từ máy Kali, sử dụng lệnh ping để ping máy Snort Trên máy Snort kiểm tra kết quả phát hiện trên giao diện terminal hoặc log của Snort

Trang 14

Từ máy Kali, sử dụng công cụ nmap để rà quét máy Snort (dùng lệnh: nmap -Pn -p80 -A 192.168.1.59) Trên máy Snort kiểm tra kết quả phát hiện trên giao diện terminal hoặc log của Snort

Trang 15

+ Từ máy Kali, sử dụng công cụ hping3 để tấn công TCP SYN Flood máy Snort (dung lệnh: hping3 -c 15000 -d

120 -S -w 64 -p 80 flood rand-source địa chỉ IP máy Snort) Trên máy Snort kiểm tra kết quả phát hiện trên giao diện terminal hoặc log của Snort

Ngày đăng: 28/12/2023, 18:59

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